~ubuntu-branches/ubuntu/utopic/nwchem/utopic

« back to all changes in this revision

Viewing changes to src/tools/ga-5-2/comex/src-ofa/device.c

  • Committer: Package Import Robot
  • Author(s): Michael Banck, Daniel Leidert, Andreas Tille, Michael Banck
  • Date: 2013-07-04 12:14:55 UTC
  • mfrom: (1.1.2)
  • Revision ID: package-import@ubuntu.com-20130704121455-5tvsx2qabor3nrui
Tags: 6.3-1
* New upstream release.
* Fixes anisotropic properties (Closes: #696361).
* New features include:
  + Multi-reference coupled cluster (MRCC) approaches
  + Hybrid DFT calculations with short-range HF 
  + New density-functionals including Minnesota (M08, M11) and HSE hybrid
    functionals
  + X-ray absorption spectroscopy (XAS) with TDDFT
  + Analytical gradients for the COSMO solvation model
  + Transition densities from TDDFT 
  + DFT+U and Electron-Transfer (ET) methods for plane wave calculations
  + Exploitation of space group symmetry in plane wave geometry optimizations
  + Local density of states (LDOS) collective variable added to Metadynamics
  + Various new XC functionals added for plane wave calculations, including
    hybrid and range-corrected ones
  + Electric field gradients with relativistic corrections 
  + Nudged Elastic Band optimization method
  + Updated basis sets and ECPs 

[ Daniel Leidert ]
* debian/watch: Fixed.

[ Andreas Tille ]
* debian/upstream: References

[ Michael Banck ]
* debian/upstream (Name): New field.
* debian/patches/02_makefile_flags.patch: Refreshed.
* debian/patches/06_statfs_kfreebsd.patch: Likewise.
* debian/patches/07_ga_target_force_linux.patch: Likewise.
* debian/patches/05_avoid_inline_assembler.patch: Removed, no longer needed.
* debian/patches/09_backported_6.1.1_fixes.patch: Likewise.
* debian/control (Build-Depends): Added gfortran-4.7 and gcc-4.7.
* debian/patches/10_force_gcc-4.7.patch: New patch, explicitly sets
  gfortran-4.7 and gcc-4.7, fixes test suite hang with gcc-4.8 (Closes:
  #701328, #713262).
* debian/testsuite: Added tests for COSMO analytical gradients and MRCC.
* debian/rules (MRCC_METHODS): New variable, required to enable MRCC methods.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#if HAVE_CONFIG_H
 
2
#   include "config.h"
 
3
#endif
 
4
 
 
5
#include <stdio.h>
 
6
#include <stdlib.h>
 
7
#include <mpi.h>
 
8
#include <assert.h>
 
9
#include <string.h>
 
10
 
 
11
#include "comex.h"
 
12
#include "comex_impl.h"
 
13
#include "openib.h"
 
14
 
 
15
// Device specific implementation
 
16
//
 
17
void* COMEXD_register_memory(void *buf, int len)
 
18
{
 
19
    return openib_register_memory(buf, len);
 
20
}
 
21
 
 
22
int COMEXD_deregister_memory(void *buf)
 
23
{
 
24
    return openib_deregister_memory(buf);
 
25
}
 
26
 
 
27
int COMEXD_put_nbi(void *src, void *dst, int bytes, int proc)
 
28
{
 
29
    if (proc == l_state.rank) {
 
30
        (void) memcpy(dst, src, bytes);
 
31
        return 0;
 
32
    }
 
33
 
 
34
    return openib_put_nbi(src, dst, bytes, proc);
 
35
}
 
36
 
 
37
int COMEXD_get_nbi(void *src, void *dst, int bytes, int proc)
 
38
{
 
39
    if (proc == l_state.rank) {
 
40
        (void) memcpy(dst, src, bytes);
 
41
        return 0;
 
42
    }
 
43
 
 
44
    return openib_get_nbi(src, dst, bytes, proc);
 
45
}
 
46
 
 
47
void COMEXD_network_lock(int proc)
 
48
{
 
49
    openib_network_lock(proc);
 
50
}
 
51
 
 
52
void COMEXD_network_unlock(int proc)
 
53
{
 
54
    openib_network_unlock(proc);
 
55
}
 
56
 
 
57
int COMEXD_waitproc(int proc)
 
58
{
 
59
    return openib_waitproc(proc);    
 
60
}
 
61
 
 
62
int COMEXD_waitall()
 
63
{
 
64
    openib_waitall();    
 
65
    return 0;
 
66
}
 
67
 
 
68
int COMEXD_initialize()
 
69
{
 
70
    return openib_initialize();
 
71
}
 
72
 
 
73
int COMEXD_finalize()
 
74
{
 
75
    return openib_finalize();
 
76
}