7#ifndef MAIA_MPI_OVERRIDE_H
8#define MAIA_MPI_OVERRIDE_H
73int MPI_Send(
const void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm,
const MString& name,
75int MPI_Isend(
const void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm, MPI_Request* request,
77int MPI_Issend(
const void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm,
78 MPI_Request* request,
const MString& name,
const MString& varname);
79int MPI_Recv(
void* buf,
int count, MPI_Datatype datatype,
int source,
int tag, MPI_Comm comm, MPI_Status* status,
81int MPI_Irecv(
void* buf,
int count, MPI_Datatype datatype,
int source,
int tag, MPI_Comm comm, MPI_Request* request,
83int MPI_Send_init(
const void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm,
84 MPI_Request* request,
const MString& name,
const MString& varname);
85int MPI_Recv_init(
void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm, MPI_Request* request,
89int MPI_Wait(MPI_Request* request, MPI_Status* status,
const MString& name);
90int MPI_Waitall(
int count, MPI_Request* request, MPI_Status* status,
const MString& name);
91int MPI_Waitsome(
int incount, MPI_Request array_of_requests[],
int* outcount,
int array_of_indices[],
92 MPI_Status array_of_statuses[],
const MString& name);
93int MPI_Test(MPI_Request* request,
int* flag, MPI_Status* status,
const MString& name);
97int MPI_Reduce(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op,
int root, MPI_Comm comm,
99int MPI_Allreduce(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm,
101int MPI_Iallreduce(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm,
103int MPI_Scatter(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
104 MPI_Datatype recvtype,
int root, MPI_Comm comm,
const MString& name,
const MString& sndvarname,
106int MPI_Scatterv(
const void* sendbuf,
const int sendcount[],
const int displs[], MPI_Datatype sendtype,
void* recvbuf,
107 int recvcount, MPI_Datatype recvtype,
int root, MPI_Comm comm,
const MString& name,
109int MPI_Bcast(
void* buffer,
int count, MPI_Datatype datatype,
int root, MPI_Comm comm,
const MString& name,
111int MPI_Ibcast(
void* buffer,
int count, MPI_Datatype datatype,
int root, MPI_Comm comm, MPI_Request* request,
113int MPI_Gather(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
114 MPI_Datatype recvtype,
int root, MPI_Comm comm,
const MString& name,
const MString& sndvarname,
116int MPI_Gatherv(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
const int recvcounts[],
117 const int displs[], MPI_Datatype recvtype,
int root, MPI_Comm comm,
const MString& name,
119int MPI_Allgather(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
120 MPI_Datatype recvtype, MPI_Comm comm,
const MString& name,
const MString& sndvarname,
122int MPI_Allgatherv(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
const int recvcounts[],
123 const int displs[], MPI_Datatype recvtype, MPI_Comm comm,
const MString& name,
125int MPI_Alltoall(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
126 MPI_Datatype recvtype, MPI_Comm comm,
const MString& name,
const MString& sndvarname,
128int MPI_Alltoallv(
const void* sendbuf,
const int sendcounts[],
const int sdispls[], MPI_Datatype sendtype,
129 void* recvbuf,
const int recvcounts[],
const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
131int MPI_Exscan(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm,
138 MPI_Datatype oldtype, MPI_Datatype* newtype,
const MString& name);
142int MPI_Group_incl(MPI_Group group,
int n,
const int ranks[], MPI_Group* newgroup,
const MString& name);
149int MPI_Get_count(
const MPI_Status* status, MPI_Datatype datatype,
int* count,
const MString& name);
154int MPI_Probe(
int source,
int tag, MPI_Comm comm, MPI_Status* status,
const MString& name);
155int MPI_Iprobe(
int source,
int tag, MPI_Comm comm,
int* flag, MPI_Status* status,
const MString& name);
160int MPI_Info_get(MPI_Info info,
const char* key,
int valuelen,
char* value,
int* flag,
const MString& name);
166int MPI_File_open(MPI_Comm comm,
const char* filename,
int amode, MPI_Info info, MPI_File* mpi_fh,
const MString& name);
169int MPI_File_write_shared(MPI_File mpi_fh,
const void* buf,
int count, MPI_Datatype datatype, MPI_Status* status,
171int MPI_File_iwrite_shared(MPI_File mpi_fh,
const void* buf,
int count, MPI_Datatype datatype, MPI_Request* request,
175#if defined(MAIA_GCC_COMPILER)
177#pragma GCC diagnostic push
178#pragma GCC diagnostic ignored "-Wredundant-decls"
180#elif defined(MAIA_CLANG_COMPILER)
181#pragma clang diagnostic push
182#pragma clang diagnostic ignored "-Wc++14-extensions"
187#if defined(MAIA_GCC_COMPILER) || defined(MAIA_CLANG_COMPILER)
193[[deprecated(
"Use the wrapper MPI_Comm_create(..., AT_, <communicatorName>) instead!")]]
int
196[[deprecated(
"Use the wrapper MPI_Comm_split(..., AT_, <communicatorName>) instead!")]]
int
199[[deprecated(
"Use the wrapper MPI_Comm_free(..., AT_, <communicatorName>) instead!")]]
int
202[[deprecated(
"Use the wrapper MPI_Comm_group(..., AT_, <communicatorName>) instead!")]]
int
205[[deprecated(
"Use the wrapper MPI_Comm_split_type(..., AT_, <...>) instead!")]]
int
208[[deprecated(
"Use the wrapper MPI_Comm_accept(..., AT_) instead!")]]
int
209MPI_Comm_accept(
const char* port_name, MPI_Info info,
int root, MPI_Comm comm, MPI_Comm* newcomm);
211[[deprecated(
"Use the wrapper MPI_Comm_call_errhandler(..., AT_) instead!")]]
int
214[[deprecated(
"Use the wrapper MPI_Comm_compare(..., AT_) instead!")]]
int MPI_Comm_compare(MPI_Comm comm1,
215 MPI_Comm comm2,
int* result);
217[[deprecated(
"Use the wrapper MPI_Comm_connect(..., AT_) instead!")]]
int
218MPI_Comm_connect(
const char* port_name, MPI_Info info,
int root, MPI_Comm comm, MPI_Comm* newcomm);
220[[deprecated(
"Use the wrapper MPI_Comm_create_errhandler(..., AT_) instead!")]]
int
223[[deprecated(
"Use the wrapper MPI_Comm_create_group(..., AT_) instead!")]]
int
226[[deprecated(
"Use the wrapper MPI_Comm_create_keyval(..., AT_) instead!")]]
int
228 MPI_Comm_delete_attr_function* comm_delete_attr_fn,
int* comm_keyval,
void* extra_state);
230[[deprecated(
"Use the wrapper MPI_Comm_disconnect(..., AT_) instead!")]]
int MPI_Comm_disconnect(MPI_Comm* comm);
235[[deprecated(
"Use the wrapper MPI_Comm_remote_size(..., AT_) instead!")]]
int MPI_Comm_remote_size(MPI_Comm comm,
239[[deprecated(
"Use the wrapper MPI_Send(..., AT_) instead!")]]
int MPI_Send(
void* buf,
int count, MPI_Datatype datatype,
240 int dest,
int tag, MPI_Comm comm);
242[[deprecated(
"Use the wrapper MPI_Ssend(..., AT_) instead!")]]
int
243MPI_Ssend(
const void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm);
245[[deprecated(
"Use the wrapper MPI_Ssend_init(..., AT_) instead!")]]
int MPI_Ssend_init(
const void* buf,
int count,
246 MPI_Datatype datatype,
int dest,
247 int tag, MPI_Comm comm,
248 MPI_Request* request);
250[[deprecated(
"Use the wrapper MPI_Isend(..., AT_) instead!")]]
int
251MPI_Isend(
const void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm, MPI_Request* request);
253[[deprecated(
"Use the wrapper MPI_Issend(..., AT_) instead!")]]
int
254MPI_Issend(
void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm, MPI_Request* request);
256[[deprecated(
"Use the wrapper MPI_Recv(..., AT_) instead!")]]
int
257MPI_Recv(
void* buf,
int count, MPI_Datatype datatype,
int source,
int tag, MPI_Comm comm, MPI_Status* status);
259[[deprecated(
"Use the wrapper MPI_Irecv(..., AT_) instead!")]]
int
260MPI_Irecv(
void* buf,
int count, MPI_Datatype datatype,
int source,
int tag, MPI_Comm comm, MPI_Request* request);
262[[deprecated(
"Use the wrapper MPI_Send_init(..., AT_) instead!")]]
int
263MPI_Send_init(
void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm, MPI_Request* request);
265[[deprecated(
"Use the wrapper MPI_Recv_init(..., AT_) instead!")]]
int
266MPI_Recv_init(
void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm, MPI_Request* request);
268[[deprecated(
"Use the wrapper MPI_Sendrecv(..., AT_) instead!")]]
int
269MPI_Sendrecv(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
int dest,
int sendtag,
void* recvbuf,
270 int recvcount, MPI_Datatype recvtype,
int source,
int recvtag, MPI_Comm comm, MPI_Status* status);
272[[deprecated(
"Use the wrapper MPI_Sendrecv_replace(..., AT_) instead!")]]
int
273MPI_Sendrecv_replace(
void* buf,
int count, MPI_Datatype datatype,
int dest,
int sendtag,
int source,
int recvtag,
274 MPI_Comm comm, MPI_Status* status);
276[[deprecated(
"Use the wrapper MPI_Bsend(..., AT_) instead!")]]
int
277MPI_Bsend(
const void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm);
279[[deprecated(
"Use the wrapper MPI_Ibsend(..., AT_) instead!")]]
int
280MPI_Ibsend(
const void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm, MPI_Request* request);
282[[deprecated(
"Use the wrapper MPI_Bsend_init(..., AT_) instead!")]]
int MPI_Bsend_init(
const void* buf,
int count,
283 MPI_Datatype datatype,
int dest,
284 int tag, MPI_Comm comm,
285 MPI_Request* request);
287[[deprecated(
"Use the wrapper MPI_Mrecv(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
288MPI_Mrecv(
void* buf,
int count, MPI_Datatype type, MPI_Message*
message, MPI_Status* status);
290[[deprecated(
"Use the wrapper MPI_Imrecv(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
293[[deprecated(
"Use the wrapper MPI_Rsend(..., AT_) instead!")]]
int
294MPI_Rsend(
const void* buf,
int count, MPI_Datatype datatype,
int dest,
int tag, MPI_Comm comm);
298[[deprecated(
"Use the wrapper MPI_Wait(..., AT_) instead!")]]
int MPI_Wait(MPI_Request* request, MPI_Status* status);
300[[deprecated(
"Use the wrapper MPI_Waitall(..., AT_) instead!")]]
int MPI_Waitall(
int count, MPI_Request* request,
303[[deprecated(
"Use the wrapper MPI_Waitsome(..., AT_) instead!")]]
int
304MPI_Waitsome(
int incount, MPI_Request array_of_requests[],
int* outcount,
int array_of_indices[],
305 MPI_Status array_of_statuses[]);
307[[deprecated(
"Use the wrapper MPI_Waitany(..., AT_) instead!")]]
int
308MPI_Waitany(
int count, MPI_Request array_of_requests[],
int* index, MPI_Status* status);
310[[deprecated(
"Use the wrapper MPI_Test(..., AT_) instead!")]]
int MPI_Test(MPI_Request* request,
int* flag,
313[[deprecated(
"Use the wrapper MPI_Test_cancelled(..., AT_) instead!")]]
int MPI_Test_cancelled(
const MPI_Status* status,
316[[deprecated(
"Use the wrapper MPI_Testany(..., AT_) instead!")]]
int
317MPI_Testany(
int count, MPI_Request array_of_requests[],
int* index,
int* flag, MPI_Status* status);
319[[deprecated(
"Use the wrapper MPI_Testall(..., AT_) instead!")]]
int
320MPI_Testall(
int count, MPI_Request array_of_requests[],
int* flag, MPI_Status array_of_statuses[]);
322[[deprecated(
"Use the wrapper MPI_Testsome(..., AT_) instead!")]]
int
323MPI_Testsome(
int incount, MPI_Request array_of_requests[],
int* outcount,
int array_of_indices[],
324 MPI_Status array_of_statuses[]);
328[[deprecated(
"Use the wrapper MPI_Barrier(..., AT_) instead!")]]
int MPI_Barrier(MPI_Comm comm);
330[[deprecated(
"Use the wrapper MPI_Ibarrier(..., AT_) instead!")]]
int MPI_Ibarrier(MPI_Comm comm, MPI_Request* request);
332[[deprecated(
"Use the wrapper MPI_Reduce(..., AT_, <name off sendbuf>, <name of recvbuf>) instead!")]]
int
333MPI_Reduce(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op,
int root, MPI_Comm comm);
335[[deprecated(
"Use the wrapper MPI_Reduce_local(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
336MPI_Reduce_local(
const void* inbuf,
void* inoutbuf,
int count, MPI_Datatype datatype, MPI_Op op);
338[[deprecated(
"Use the wrapper MPI_Reduce_scatter(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
339MPI_Reduce_scatter(
const void* sendbuf,
void* recvbuf,
const int recvcounts[], MPI_Datatype datatype, MPI_Op op,
342[[deprecated(
"Use the wrapper MPI_Ireduce(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
343MPI_Ireduce(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op,
int root, MPI_Comm comm,
344 MPI_Request* request);
346[[deprecated(
"Use the wrapper MPI_Ireduce_scatter(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
347MPI_Ireduce_scatter(
const void* sendbuf,
void* recvbuf,
const int recvcounts[], MPI_Datatype datatype, MPI_Op op,
348 MPI_Comm comm, MPI_Request* request);
350[[deprecated(
"Use the wrapper MPI_Allreduce(..., AT_, <name off sendbuf>, <name of recvbuf>) instead!")]]
int
351MPI_Allreduce(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm);
353[[deprecated(
"Use the wrapper MPI_Iallreduce(..., AT_, <name off sendbuf>, <name of recvbuf>) instead!")]]
int
354MPI_Iallreduce(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm,
355 MPI_Request* request);
357[[deprecated(
"Use the wrapper MPI_Scatter(..., AT_, <name off sendbuf>, <name of recvbuf>) instead!")]]
int
358MPI_Scatter(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
359 MPI_Datatype recvtype,
int root, MPI_Comm comm);
361[[deprecated(
"Use the wrapper MPI_Scatterv(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
362MPI_Scatterv(
const void* sendbuf,
const int sendcounts[],
const int displs[], MPI_Datatype sendtype,
void* recvbuf,
363 int recvcount, MPI_Datatype recvtype,
int root, MPI_Comm comm);
365[[deprecated(
"Use the wrapper MPI_Iscatter(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
366MPI_Iscatter(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
367 MPI_Datatype recvtype,
int root, MPI_Comm comm, MPI_Request* request);
369[[deprecated(
"Use the wrapper MPI_Iscatterv(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
370MPI_Iscatterv(
const void* sendbuf,
const int sendcounts[],
const int displs[], MPI_Datatype sendtype,
void* recvbuf,
371 int recvcount, MPI_Datatype recvtype,
int root, MPI_Comm comm, MPI_Request* request);
373[[deprecated(
"Use the wrapper MPI_Reduce_scatter_solver(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
378 "Use the wrapper MPI_Ireduce_scatter_solver(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
380 MPI_Comm comm, MPI_Request* request);
382[[deprecated(
"Use the wrapper MPI_Bcast(..., AT_, <name of buffer>) instead!")]]
int
383MPI_Bcast(
void* buffer,
int count, MPI_Datatype datatype,
int root, MPI_Comm comm);
385[[deprecated(
"Use the wrapper MPI_Ibcast(..., AT_, <name of buffer>) instead!")]]
int
386MPI_Ibcast(
void* buffer,
int count, MPI_Datatype datatype,
int root, MPI_Comm comm, MPI_Request* request);
388[[deprecated(
"Use the wrapper MPI_Gather(..., AT_, <name off sendbuf>, <name of recvbuf>) instead!")]]
int
389MPI_Gather(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
390 MPI_Datatype recvtype,
int root, MPI_Comm comm);
392[[deprecated(
"Use the wrapper MPI_Igather(..., AT_, <name off sendbuf>, <name of recvbuf>) instead!")]]
int
393MPI_Igather(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
394 MPI_Datatype recvtype,
int root, MPI_Comm comm, MPI_Request* request);
396[[deprecated(
"Use the wrapper MPI_Gatherv(..., AT_, <name off sendbuf>, <name of recvbuf>) instead!")]]
int
397MPI_Gatherv(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
const int recvcounts[],
398 const int displs[], MPI_Datatype recvtype,
int root, MPI_Comm comm);
400[[deprecated(
"Use the wrapper MPI_Gatherv(..., AT_, <name off sendbuf>, <name of recvbuf>) instead!")]]
int
401MPI_Igatherv(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
const int recvcounts[],
402 const int displs[], MPI_Datatype recvtype,
int root, MPI_Comm comm, MPI_Request* request);
404[[deprecated(
"Use the wrapper MPI_Allgather(..., AT_, <name off sendbuf>, <name of recvbuf>) instead!")]]
int
405MPI_Allgather(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
406 MPI_Datatype recvtype, MPI_Comm comm);
408[[deprecated(
"Use the wrapper MPI_Iallgather(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
409MPI_Iallgather(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
410 MPI_Datatype recvtype, MPI_Comm comm, MPI_Request* request);
412[[deprecated(
"Use the wrapper MPI_Allgatherv(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
413MPI_Allgatherv(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
const int recvcounts[],
414 const int displs[], MPI_Datatype recvtype, MPI_Comm comm);
416[[deprecated(
"Use the wrapper MPI_Iallgatherv(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
417MPI_Iallgatherv(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
const int recvcounts[],
418 const int displs[], MPI_Datatype recvtype, MPI_Comm comm, MPI_Request* request);
421[[deprecated(
"Use the wrapper MPI_Alltoall(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
422MPI_Alltoall(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
423 MPI_Datatype recvtype, MPI_Comm comm);
425[[deprecated(
"Use the wrapper MPI_Ialltoall(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
426MPI_Ialltoall(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
427 MPI_Datatype recvtype, MPI_Comm comm, MPI_Request* request);
429[[deprecated(
"Use the wrapper MPI_Alltoallv(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
430MPI_Alltoallv(
const void* sendbuf,
const int sendcounts[],
const int sdispls[], MPI_Datatype sendtype,
void* recvbuf,
431 const int recvcounts[],
const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm);
433[[deprecated(
"Use the wrapper MPI_Ialltoallv(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
434MPI_Ialltoallv(
const void* sendbuf,
const int sendcounts[],
const int sdispls[], MPI_Datatype sendtype,
void* recvbuf,
435 const int recvcounts[],
const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm, MPI_Request* request);
437[[deprecated(
"Use the wrapper MPI_Alltoallw(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
438MPI_Alltoallw(
const void* sendbuf,
const int sendcounts[],
const int sdispls[],
const MPI_Datatype sendtypes[],
439 void* recvbuf,
const int recvcounts[],
const int rdispls[],
const MPI_Datatype recvtypes[],
442[[deprecated(
"Use the wrapper MPI_Ialltoallw(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
443MPI_Ialltoallw(
const void* sendbuf,
const int sendcounts[],
const int sdispls[],
const MPI_Datatype sendtypes[],
444 void* recvbuf,
const int recvcounts[],
const int rdispls[],
const MPI_Datatype recvtypes[],
445 MPI_Comm comm, MPI_Request* request);
447[[deprecated(
"Use the wrapper MPI_Scan(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
448MPI_Scan(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm);
450[[deprecated(
"Use the wrapper Iscan(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
451MPI_Iscan(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm,
452 MPI_Request* request);
454[[deprecated(
"Use the wrapper MPI_Exscan(..., AT_, <name off sendbuf>, <name of recvbuf>) instead!")]]
int
455MPI_Exscan(
const void* sendbuf,
void* recvbuf,
int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm);
458[[deprecated(
"Use the wrapper MPI_Neighbor_allgather(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
460 MPI_Datatype recvtype, MPI_Comm comm);
462[[deprecated(
"Use the wrapper MPIX_Allgather_init(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
463MPIX_Allgather_init(
const void* sendbuf,
int sendcount, MPI_Datatype sendtype,
void* recvbuf,
int recvcount,
464 MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info, MPI_Request* request);
468[[deprecated(
"Use the wrapper MPI_Type_commit(..., AT_) instead!")]]
int MPI_Type_commit(MPI_Datatype* datatype);
470[[deprecated(
"Use the wrapper MPI_Type_free(..., AT_) instead!")]]
int MPI_Type_free(MPI_Datatype* datatype);
472[[deprecated(
"Use the wrapper MPI_Type_create_hindexed(..., AT_) instead!")]]
int
474 MPI_Datatype oldtype, MPI_Datatype* newtype);
476[[deprecated(
"Use the wrapper MPI_Type_contiguous(..., AT_) instead!")]]
int
479[[deprecated(
"Use the wrapper MPI_Type_commit(..., AT_) instead!")]]
int MPI_Type_commit(MPI_Datatype* datatype);
481[[deprecated(
"Use the wrapper MPI_Type_vector(..., AT_) instead!")]]
int
482MPI_Type_vector(
int count,
int solverlength,
int stride, MPI_Datatype oldtype, MPI_Datatype* newtype);
484[[deprecated(
"Use the wrapper MPI_Type_struct(..., AT_) instead!")]]
int
485MPI_Type_struct(
int count,
int* array_of_solverlengths, MPI_Aint* array_of_displacements, MPI_Datatype* array_of_types,
486 MPI_Datatype* newtype);
488[[deprecated(
"Use the wrapper MPI_Type_create_hvector(..., AT_) instead!")]]
int
491[[deprecated(
"Use the wrapper MPI_Type_create_darray(..., AT_) instead!")]]
int
493 const int array_of_dargs[],
const int array_of_psizes[],
int order, MPI_Datatype oldtype,
494 MPI_Datatype* newtype);
496[[deprecated(
"Use the wrapper MPI_Type_create_hindexed(..., AT_) instead!")]]
int
498 MPI_Datatype* newtype);
500[[deprecated(
"Use the wrapper MPI_Type_set_name(..., AT_, <...>) instead!")]]
int
505[[deprecated(
"Use the wrapper MPI_Group_incl(..., AT_) instead!")]]
int
508[[deprecated(
"Use the wrapper MPI_Group_free(..., AT_) instead!")]]
int MPI_Group_free(MPI_Group* group);
510[[deprecated(
"Use the wrapper MPI_Group_compare(..., AT_) instead!")]]
int
513[[deprecated(
"Use the wrapper MPI_Group_excl(..., AT_) instead!")]]
int
516[[deprecated(
"Use the wrapper MPI_Group_difference(..., AT_) instead!")]]
int
519[[deprecated(
"Use the wrapper MPI_Group_intersection(..., AT_) instead!")]]
int
522[[deprecated(
"Use the wrapper MPI_Group_range_excl(..., AT_) instead!")]]
int
525[[deprecated(
"Use the wrapper MPI_Group_range_incl(..., AT_) instead!")]]
int
528[[deprecated(
"Use the wrapper MPI_Group_rank(..., AT_) instead!")]]
int MPI_Group_rank(MPI_Group group,
int* rank);
530[[deprecated(
"Use the wrapper MPI_Group_size(..., AT_) instead!")]]
int MPI_Group_size(MPI_Group group,
int* size);
532[[deprecated(
"Use the wrapper MPI_Group_union(..., AT_) instead!")]]
int
536[[deprecated(
"Use the wrapper MPI_Start(..., AT_) instead!")]]
int MPI_Start(MPI_Request* request);
538[[deprecated(
"Use the wrapper MPI_Startall(..., AT_) instead!")]]
int MPI_Startall(
int count,
539 MPI_Request array_of_requests[]);
541[[deprecated(
"Use the wrapper MPI_Get_count(..., AT_) instead!")]]
int MPI_Get_count(
const MPI_Status* status,
542 MPI_Datatype datatype,
int* count);
547[[deprecated(
"Use the wrapper MPI_Abort(..., AT_) instead!")]]
int MPI_Abort(MPI_Comm comm,
int errorcode);
549[[deprecated(
"Use the wrapper MPI_Status_set_cancelled(..., AT_, <...>) instead!")]]
int
552[[deprecated(
"Use the wrapper MPI_Alloc_mem(..., AT_, <...>) instead!")]]
int
555[[deprecated(
"Use the wrapper MPI_Op_create(..., AT_, <...>) instead!")]]
int MPI_Op_create(MPI_User_function* function,
556 int commute, MPI_Op* op);
558[[deprecated(
"Use the wrapper MPI_Op_commutative(..., AT_, <...>) instead!")]]
int MPI_Op_commutative(MPI_Op op,
561[[deprecated(
"Use the wrapper MPI_MPI_Op_free(..., AT_, <...>) instead!")]]
int MPI_Op_free(MPI_Op* op);
563[[deprecated(
"Use the wrapper MPI_Compare_and_swap(..., AT_, <...>) instead!")]]
int
564MPI_Compare_and_swap(
const void* origin_addr,
const void* compare_addr,
void* result_addr, MPI_Datatype datatype,
565 int target_rank, MPI_Aint target_disp, MPI_Win win);
567[[deprecated(
"Use the wrapper MPI_Probe(..., AT_, <...>) instead!")]]
int MPI_Probe(
int source,
int tag, MPI_Comm comm,
570[[deprecated(
"Use the wrapper MPI_Request_get_status(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
573[[deprecated(
"Use the wrapper MPI_Request_free(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
576[[deprecated(
"Use the wrapper MPI_Cancel(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
581[[deprecated(
"Use the wrapper MPI_Info_create(..., AT_) instead!")]]
int MPI_Info_create(MPI_Info* info);
583[[deprecated(
"Use the wrapper MPI_Info_free(..., AT_) instead!")]]
int MPI_Info_free(MPI_Info* info);
585[[deprecated(
"Use the wrapper MPI_Info_get(..., AT_) instead!")]]
int
586MPI_Info_get(MPI_Info info,
char* key,
int valuelen,
char* value,
int* flag);
588[[deprecated(
"Use the wrapper MPI_Info_nthkey(..., AT_) instead!")]]
int MPI_Info_get_nthkey(MPI_Info info,
int n,
591[[deprecated(
"Use the wrapper MPI_Info_nkeys(..., AT_) instead!")]]
int MPI_Info_get_nkeys(MPI_Info info,
int* nkeys);
593[[deprecated(
"Use the wrapper MPI_Info_valuelen(..., AT_) instead!")]]
int
597[[deprecated(
"Use the wrapper MPI_File_open(..., AT_) instead!")]]
int
598MPI_File_open(MPI_Comm comm,
char* filename,
int amode, MPI_Info info, MPI_File* mpi_fh);
601[[deprecated(
"Use the wrapper MPI_File_seek(..., AT_) instead!")]]
int MPI_File_seek(MPI_File mpi_fh, MPI_Offset offset,
604[[deprecated(
"Use the wrapper MPI_File_close(..., AT_) instead!")]]
int MPI_File_close(MPI_File* mpi_fh);
606[[deprecated(
"Use the wrapper MPI_File_write_shared(..., AT_) instead!")]]
int
609[[deprecated(
"Use the wrapper MPI_File_iwrite_shared(..., AT_) instead!")]]
int
613[[deprecated(
"Use the wrapper MPI_Cart_coords(..., AT_, <...>) instead!")]]
int
616[[deprecated(
"Use the wrapper MPI_Cart_create(..., AT_, <...>) instead!")]]
int
617MPI_Cart_create(MPI_Comm comm_old,
int ndims,
const int dims[],
const int periods[],
int reorder, MPI_Comm* comm_cart);
619[[deprecated(
"Use the wrapper MPI_Graph_create(..., AT_, <...>) instead!")]]
int
620MPI_Graph_create(MPI_Comm comm_old,
int nnodes,
const int index[],
const int edges[],
int reorder,
621 MPI_Comm* comm_graph);
624[[deprecated(
"Use the wrapper MPI_Win_fence(..., AT_, <...>) instead!")]]
int MPI_Win_fence(
int assert, MPI_Win win);
626[[deprecated(
"Use the wrapper MPI_Put(..., AT_, <name of sendbuf>, <name of recvbuf>) instead!")]]
int
627MPI_Put(
const void* origin_addr,
int origin_count, MPI_Datatype origin_datatype,
int target_rank, MPI_Aint target_disp,
628 int target_count, MPI_Datatype target_datatype, MPI_Win win);
630[[deprecated(
"Use the wrapper MPI_Accumulate(..., AT_, <...>) instead!")]]
int
631MPI_Accumulate(
const void* origin_addr,
int origin_count, MPI_Datatype origin_datatype,
int target_rank,
632 MPI_Aint target_disp,
int target_count, MPI_Datatype target_datatype, MPI_Op op, MPI_Win win);
637#if defined(MAIA_GCC_COMPILER)
638#pragma GCC diagnostic pop
639#elif defined(MAIA_CLANG_COMPILER)
640#pragma clang diagnostic pop
const MString const MString & message
std::basic_string< char > MString
int MPI_Op_free(MPI_Op *op)
int MPI_Rsend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm)
int MPI_Recv(void *buf, int count, MPI_Datatype datatype, int source, int tag, MPI_Comm comm, MPI_Status *status, const MString &name, const MString &varname)
same as MPI_Recv
int MPI_Igather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Request *request)
int MPI_Reduce_scatter_solver(const void *sendbuf, void *recvbuf, int recvcount, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
int MPI_File_iwrite_shared(MPI_File mpi_fh, const void *buf, int count, MPI_Datatype datatype, MPI_Request *request, const MString &name)
same as MPI_File_iwrite_shared
int MPI_Reduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[], MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
int MPI_Isend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request, const MString &name, const MString &varname)
same as MPI_Isend
int MPI_Group_rank(MPI_Group group, int *rank)
int MPI_Info_get(MPI_Info info, const char *key, int valuelen, char *value, int *flag, const MString &name)
same as MPI_Info_get
int MPI_Request_get_status(MPI_Request request, int *flag, MPI_Status *status)
int MPI_Type_vector(int count, int solverlength, int stride, MPI_Datatype oldtype, MPI_Datatype *newtype)
int MPI_Testany(int count, MPI_Request array_of_requests[], int *index, int *flag, MPI_Status *status)
int MPI_Comm_create_keyval(MPI_Comm_copy_attr_function *comm_copy_attr_fn, MPI_Comm_delete_attr_function *comm_delete_attr_fn, int *comm_keyval, void *extra_state)
int MPI_Alltoallw(const void *sendbuf, const int sendcounts[], const int sdispls[], const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[], const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm)
int MPI_Send_init(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request, const MString &name, const MString &varname)
same as MPI_Send_init
int MPI_Comm_call_errhandler(MPI_Comm comm, int errorcode)
int MPI_Barrier(MPI_Comm comm, const MString &name)
same as MPI_Barrier
int MPI_Ireduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, int root, MPI_Comm comm, MPI_Request *request)
int MPI_Imrecv(void *buf, int count, MPI_Datatype type, MPI_Message *message, MPI_Request *request)
int MPI_Iallgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
int MPI_Status_set_cancelled(MPI_Status *status, int flag)
int MPI_Group_range_excl(MPI_Group group, int n, int ranges[][3], MPI_Group *newgroup)
int MPIX_Allgather_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info, MPI_Request *request)
int MPI_Allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, const int recvcounts[], const int displs[], MPI_Datatype recvtype, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Allgatherv
int MPI_File_seek(MPI_File mpi_fh, MPI_Offset offset, int whence, const MString &name)
same as MPI_File_seek
int MPI_Op_create(MPI_User_function *function, int commute, MPI_Op *op)
int MPI_Bsend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm)
int MPI_Testsome(int incount, MPI_Request array_of_requests[], int *outcount, int array_of_indices[], MPI_Status array_of_statuses[])
int MPI_Waitany(int count, MPI_Request array_of_requests[], int *index, MPI_Status *status)
int MPI_Scatterv(const void *sendbuf, const int sendcount[], const int displs[], MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Scatterv
int MPI_Comm_remote_size(MPI_Comm comm, int *size)
int MPI_Ssend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm)
int MPI_Comm_connect(const char *port_name, MPI_Info info, int root, MPI_Comm comm, MPI_Comm *newcomm)
int MPI_Waitsome(int incount, MPI_Request array_of_requests[], int *outcount, int array_of_indices[], MPI_Status array_of_statuses[], const MString &name)
same as MPI_Waitsome
int MPI_Comm_compare(MPI_Comm comm1, MPI_Comm comm2, int *result)
int MPI_Get_count(const MPI_Status *status, MPI_Datatype datatype, int *count, const MString &name)
same as MPI_Get_count
int MPI_Group_range_incl(MPI_Group group, int n, int ranges[][3], MPI_Group *newgroup)
int MPI_Info_free(MPI_Info *info, const MString &name)
same as MPI_Info_free
int MPI_Type_commit(MPI_Datatype *datatype, const MString &name)
same as MPI_Type_commit
int MPI_Bsend_init(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request)
int MPI_Comm_free(MPI_Comm *comm, const MString &name, const MString &varname)
same as MPI_Comm_free, but updates the number of MPI communicators
int MPI_Iscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request)
int MPI_Ibsend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request)
int MPI_Irecv(void *buf, int count, MPI_Datatype datatype, int source, int tag, MPI_Comm comm, MPI_Request *request, const MString &name, const MString &varname)
same as MPI_Irecv
int MPI_Recv_init(void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request, const MString &name, const MString &varname)
same as MPI_Recv_init
int MPI_Comm_create(MPI_Comm comm, MPI_Group group, MPI_Comm *newcomm, const MString &name, const MString &varname)
same as MPI_Comm_create, but updates the number of MPI communicators
int MPI_Group_size(MPI_Group group, int *size)
int MPI_Ialltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[], MPI_Datatype sendtype, void *recvbuf, const int recvcounts[], const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
int MPI_Abort(MPI_Comm comm, int errorcode, const MString &name)
same as MPI_Abort
int MPI_Ibarrier(MPI_Comm comm, MPI_Request *request)
int MPI_Group_compare(MPI_Group group1, MPI_Group group2, int *result)
int MPI_Issend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request, const MString &name, const MString &varname)
same as MPI_Issend
int MPI_Ireduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[], MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request)
int MPI_Testall(int count, MPI_Request array_of_requests[], int *flag, MPI_Status array_of_statuses[])
int MPI_Ssend_init(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request)
int MPI_File_open(MPI_Comm comm, const char *filename, int amode, MPI_Info info, MPI_File *mpi_fh, const MString &name)
same as MPI_File_open
int MPI_Group_incl(MPI_Group group, int n, const int ranks[], MPI_Group *newgroup, const MString &name)
same as MPI_Group_incl
int MPI_Test_cancelled(const MPI_Status *status, int *flag)
int MPI_Comm_create_group(MPI_Comm comm, MPI_Group group, int tag, MPI_Comm *newcomm)
int MPI_Type_free(MPI_Datatype *datatype, const MString &name)
same as MPI_Type_free
int MPI_Type_create_hvector(int count, int solverlength, MPI_Aint stride, MPI_Datatype oldtype, MPI_Datatype *newtype)
int MPI_Comm_accept(const char *port_name, MPI_Info info, int root, MPI_Comm comm, MPI_Comm *newcomm)
int MPI_Comm_group(MPI_Comm comm, MPI_Group *group, const MString &name, const MString &varname)
same as MPI_Comm_group
int MPI_Info_get_valuelen(MPI_Info info, const char *key, int *valuelen, int *flag, const MString &name)
same as MPI_Info_get_valuelen
int MPI_Neighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
int MPI_Op_commutative(MPI_Op op, int *commute)
int MPI_Scan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
int MPI_Reduce_local(const void *inbuf, void *inoutbuf, int count, MPI_Datatype datatype, MPI_Op op)
int MPI_Type_create_indexed_solver(int count, int solverlength, const int array_of_displacements[], MPI_Datatype oldtype, MPI_Datatype *newtype)
int MPI_Sendrecv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, int dest, int sendtag, void *recvbuf, int recvcount, MPI_Datatype recvtype, int source, int recvtag, MPI_Comm comm, MPI_Status *status)
int MPI_Ibcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm, MPI_Request *request, const MString &name, const MString &varname)
same as MPI_Ibcast
int MPI_Scatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Scatter
int MPI_Cancel(MPI_Request *request, const MString &name)
same as MPI_cancel
int MPI_Wait(MPI_Request *request, MPI_Status *status, const MString &name)
same as MPI_Wait
int MPI_Gatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, const int recvcounts[], const int displs[], MPI_Datatype recvtype, int root, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Gatherv
int MPI_Comm_disconnect(MPI_Comm *comm)
int MPI_Exscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Exscan
int MPI_Type_set_name(MPI_Datatype type, const char *type_name)
int MPI_Waitall(int count, MPI_Request *request, MPI_Status *status, const MString &name)
same as MPI_Waitall
int MPI_Type_contiguous(int count, MPI_Datatype old_type, MPI_Datatype *new_type_p, const MString &name)
same as MPI_Type_contiguous
int MPI_Comm_split_type(MPI_Comm comm, int split_type, int key, MPI_Info info, MPI_Comm *newcomm)
int MPI_Start(MPI_Request *request, const MString &name)
same as MPI_Start
int MPI_Iallreduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Iallreduce
int MPI_Type_create_hindexed(int count, const int array_of_solverlengths[], const MPI_Aint array_of_displacements[], MPI_Datatype oldtype, MPI_Datatype *newtype, const MString &name)
same as MPI_Type_create_hindexed
int MPI_Reduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, int root, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Reduce
int MPI_File_close(MPI_File *mpi_fh, const MString &name)
same as MPI_File_close
int MPI_Info_create(MPI_Info *info, const MString &name)
same as MPI_Info_create
int MPI_Test(MPI_Request *request, int *flag, MPI_Status *status, const MString &name)
same as MPI_Test
int MPI_Ialltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
int MPI_Iscatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Request *request)
int MPI_Get_address(const void *location, MPI_Aint *address, const MString &name)
same as MPI_Get_address
int MPI_Alloc_mem(MPI_Aint size, MPI_Info info, void *baseptr)
int MPI_Ireduce_scatter_solver(const void *sendbuf, void *recvbuf, int recvcount, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request)
int MPI_Compare_and_swap(const void *origin_addr, const void *compare_addr, void *result_addr, MPI_Datatype datatype, int target_rank, MPI_Aint target_disp, MPI_Win win)
int MPI_Allreduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Allreduce
int MPI_Cart_create(MPI_Comm comm_old, int ndims, const int dims[], const int periods[], int reorder, MPI_Comm *comm_cart)
int MPI_Info_get_nthkey(MPI_Info info, int n, char *key, const MString &name)
same as MPI_Info_get_nthkey
int MPI_Alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Alltoall
int MPI_Request_free(MPI_Request *request, const MString &name)
same as MPI_Request_free
int MPI_Comm_split(MPI_Comm comm, int color, int key, MPI_Comm *newcomm, const MString &name, const MString &varname)
same as MPI_Comm_split, but updates the number of MPI communicators
int MPI_Iprobe(int source, int tag, MPI_Comm comm, int *flag, MPI_Status *status, const MString &name)
Iprobe MPI to get status without actually receiving the message.
int MPI_Bcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm, const MString &name, const MString &varname)
same as MPI_Bcast
int MPI_Probe(int source, int tag, MPI_Comm comm, MPI_Status *status, const MString &name)
probe MPI to get status without actually receiving the message
int MPI_Type_struct(int count, int *array_of_solverlengths, MPI_Aint *array_of_displacements, MPI_Datatype *array_of_types, MPI_Datatype *newtype)
int MPI_Gather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Gather
int MPI_Type_create_darray(int size, int rank, int ndims, const int array_of_gsizes[], const int array_of_distribs[], const int array_of_dargs[], const int array_of_psizes[], int order, MPI_Datatype oldtype, MPI_Datatype *newtype)
int MPI_Graph_create(MPI_Comm comm_old, int nnodes, const int index[], const int edges[], int reorder, MPI_Comm *comm_graph)
int MPI_Allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Allgather
int MPI_Igatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, const int recvcounts[], const int displs[], MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Request *request)
int MPI_File_write_shared(MPI_File mpi_fh, const void *buf, int count, MPI_Datatype datatype, MPI_Status *status, const MString &name)
same as MPI_File_write_shared
int MPI_Put(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype, int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Win win)
int MPI_Comm_remote_group(MPI_Comm comm, MPI_Group *group)
int MPI_Info_get_nkeys(MPI_Info info, int *nkeys, const MString &name)
same as MPI_Info_get_nkeys
int MPI_Group_free(MPI_Group *group, const MString &name)
same as MPI_Group_free
int MPI_Cart_coords(MPI_Comm comm, int rank, int maxdims, int coords[])
int MPI_Accumulate(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype, int target_rank, MPI_Aint target_disp, int target_count, MPI_Datatype target_datatype, MPI_Op op, MPI_Win win)
int MPI_Mrecv(void *buf, int count, MPI_Datatype type, MPI_Message *message, MPI_Status *status)
int MPI_Group_intersection(MPI_Group group1, MPI_Group group2, MPI_Group *newgroup)
int MPI_Alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[], MPI_Datatype sendtype, void *recvbuf, const int recvcounts[], const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm, const MString &name, const MString &sndvarname, const MString &rcvvarname)
same as MPI_Alltoallv
int MPI_Group_union(MPI_Group group1, MPI_Group group2, MPI_Group *newgroup)
int MPI_Startall(int count, MPI_Request array_of_requests[], const MString &name)
same as MPI_Startall
int MPI_Sendrecv_replace(void *buf, int count, MPI_Datatype datatype, int dest, int sendtag, int source, int recvtag, MPI_Comm comm, MPI_Status *status)
int MPI_Comm_create_errhandler(MPI_Comm_errhandler_function *function, MPI_Errhandler *errhandler)
int MPI_Group_excl(MPI_Group group, int n, const int ranks[], MPI_Group *newgroup)
int MPI_Send(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, const MString &name, const MString &varname)
same as MPI_Send
int MPI_Ialltoallw(const void *sendbuf, const int sendcounts[], const int sdispls[], const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[], const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm, MPI_Request *request)
int MPI_Iallgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, const int recvcounts[], const int displs[], MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
int MPI_Iscatterv(const void *sendbuf, const int sendcounts[], const int displs[], MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Request *request)
int MPI_Win_fence(int assert, MPI_Win win)
int MPI_Group_difference(MPI_Group group1, MPI_Group group2, MPI_Group *newgroup)