source: XIOS/dev/dev_trunk_omp/extern/ep_dev/ep_lib_win.hpp @ 1604

Last change on this file since 1604 was 1604, checked in by yushan, 5 years ago

branch_openmp merged with trunk r1597

File size: 2.9 KB
Line 
1#ifndef EP_LIB_WIN_HPP_INCLUDED
2#define EP_LIB_WIN_HPP_INCLUDED
3
4namespace ep_lib
5{
6
7  typedef void* MPI_Datatype;
8  typedef void* MPI_Op;
9
10
11  int MPI_Win_create(void *base, MPI_Aint size, int disp_unit, MPI_Info info, MPI_Comm comm, MPI_Win *win);
12 
13  int MPI_Win_free(MPI_Win *win);
14  int MPI_Win_fence(int assert, MPI_Win win);
15
16  int MPI_Put(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype, 
17                  int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Win win);
18
19  int MPI_Rput(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype, 
20              int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Win win, MPI_Request *request);
21
22  int MPI_Get(void *origin_addr, int origin_count, MPI_Datatype origin_datatype, 
23                  int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Win win);
24
25  int MPI_Rget(void *origin_addr, int origin_count, MPI_Datatype origin_datatype, 
26              int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Win win, MPI_Request *request);
27
28  int MPI_Accumulate(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype, 
29                         int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Op op, MPI_Win win);
30
31  int MPI_Raccumulate(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype, 
32                     int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Op op, MPI_Win win, MPI_Request *request);
33
34  int MPI_Get_accumulate(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype, void *result_addr, 
35                         int result_count, MPI_Datatype result_datatype, int target_rank, MPI_Aint target_disp,
36                         int target_count, MPI_Datatype target_datatype, MPI_Op op, MPI_Win win);
37 
38  int MPI_Rget_accumulate(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype, void *result_addr, 
39                         int result_count, MPI_Datatype result_datatype, int target_rank, MPI_Aint target_disp,
40                         int target_count, MPI_Datatype target_datatype, MPI_Op op, MPI_Win win, MPI_Request *request);
41
42  int MPI_Win_allocate (MPI_Aint size, int disp_unit, MPI_Info info, MPI_Comm comm, void *baseptr, MPI_Win *win);
43
44  int MPI_Fetch_and_op(const void *origin_addr, void *result_addr, MPI_Datatype datatype, int target_rank, 
45                      MPI_Aint target_disp, MPI_Op op, MPI_Win win);
46
47  int MPI_Compare_and_swap(const void *origin_addr, const void *compare_addr, void *result_addr, MPI_Datatype datatype, 
48                           int target_rank, MPI_Aint target_disp, MPI_Win win);
49                           
50  // MPI_lock & MPI_Unlock
51
52}
53
54#endif // EP_LIB_COLLECTIVE_HPP_INCLUDED
Note: See TracBrowser for help on using the repository browser.