impi-devel 2021.10.0__py2.py3-none-manylinux1_x86_64.whl → 2021.12.0__py2.py3-none-manylinux1_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of impi-devel might be problematic. Click here for more details.

Files changed (22) hide show
  1. {impi_devel-2021.10.0.data → impi_devel-2021.12.0.data}/data/bin/mpicc +31 -19
  2. {impi_devel-2021.10.0.data → impi_devel-2021.12.0.data}/data/bin/mpicxx +31 -19
  3. {impi_devel-2021.10.0.data → impi_devel-2021.12.0.data}/data/bin/mpif77 +34 -39
  4. {impi_devel-2021.10.0.data → impi_devel-2021.12.0.data}/data/bin/mpif90 +34 -38
  5. {impi_devel-2021.10.0.data → impi_devel-2021.12.0.data}/data/bin/mpifc +31 -19
  6. {impi_devel-2021.10.0.data → impi_devel-2021.12.0.data}/data/bin/mpigcc +29 -32
  7. {impi_devel-2021.10.0.data → impi_devel-2021.12.0.data}/data/bin/mpigxx +28 -33
  8. impi_devel-2021.10.0.data/data/bin/mpiicx → impi_devel-2021.12.0.data/data/bin/mpiicc +14 -8
  9. impi_devel-2021.10.0.data/data/bin/mpiicpx → impi_devel-2021.12.0.data/data/bin/mpiicpc +14 -8
  10. impi_devel-2021.10.0.data/data/bin/mpiicpc → impi_devel-2021.12.0.data/data/bin/mpiicpx +41 -40
  11. impi_devel-2021.10.0.data/data/bin/mpiicc → impi_devel-2021.12.0.data/data/bin/mpiicx +28 -30
  12. impi_devel-2021.10.0.data/data/bin/mpiifx → impi_devel-2021.12.0.data/data/bin/mpiifort +18 -8
  13. impi_devel-2021.10.0.data/data/bin/mpiifort → impi_devel-2021.12.0.data/data/bin/mpiifx +36 -36
  14. {impi_devel-2021.10.0.data → impi_devel-2021.12.0.data}/data/include/mpi.h +1069 -434
  15. {impi_devel-2021.10.0.data → impi_devel-2021.12.0.data}/data/include/mpicxx.h +35 -35
  16. {impi_devel-2021.10.0.data → impi_devel-2021.12.0.data}/data/include/mpio.h +149 -0
  17. {impi_devel-2021.10.0.dist-info → impi_devel-2021.12.0.dist-info}/METADATA +2 -2
  18. impi_devel-2021.12.0.dist-info/RECORD +21 -0
  19. impi_devel-2021.10.0.dist-info/RECORD +0 -21
  20. {impi_devel-2021.10.0.dist-info → impi_devel-2021.12.0.dist-info}/LICENSE.txt +0 -0
  21. {impi_devel-2021.10.0.dist-info → impi_devel-2021.12.0.dist-info}/WHEEL +0 -0
  22. {impi_devel-2021.10.0.dist-info → impi_devel-2021.12.0.dist-info}/top_level.txt +0 -0
@@ -82,6 +82,13 @@
82
82
  #define MPICH_API_PUBLIC
83
83
  #endif
84
84
 
85
+
86
+ #if defined(__SYCL_DEVICE_ONLY__)
87
+ #define IMPI_DEVICE_EXPORT SYCL_EXTERNAL
88
+ #else
89
+ #define IMPI_DEVICE_EXPORT
90
+ #endif
91
+
85
92
  /* Keep C++ compilers from getting confused */
86
93
  #if defined(__cplusplus)
87
94
  extern "C" {
@@ -354,6 +361,10 @@ typedef int MPI_Group;
354
361
  typedef int MPI_Win;
355
362
  #define MPI_WIN_NULL ((MPI_Win)0x20000000)
356
363
 
364
+ /* for session */
365
+ typedef int MPI_Session;
366
+ #define MPI_SESSION_NULL ((MPI_Session)0x38000000)
367
+
357
368
  /* File and IO */
358
369
  /* This define lets ROMIO know that MPI_File has been defined */
359
370
  #define MPI_FILE_DEFINED
@@ -419,6 +430,8 @@ static const MPI_Datatype mpich_mpi_datatype_null MPICH_ATTR_TYPE_TAG_MUST_BE_NU
419
430
  #define MPI_MAX_ERROR_STRING 512
420
431
  #define MPI_MAX_PORT_NAME 256
421
432
  #define MPI_MAX_OBJECT_NAME 128
433
+ #define MPI_MAX_STRINGTAG_LEN 256
434
+ #define MPI_MAX_PSET_NAME_LEN 256
422
435
 
423
436
  /* Pre-defined constants */
424
437
  #define MPI_UNDEFINED (-32766)
@@ -472,11 +485,12 @@ typedef int (MPI_Win_delete_attr_function)(MPI_Win, int, void *, void *);
472
485
  typedef void (MPI_Comm_errhandler_function)(MPI_Comm *, int *, ...);
473
486
  typedef void (MPI_File_errhandler_function)(MPI_File *, int *, ...);
474
487
  typedef void (MPI_Win_errhandler_function)(MPI_Win *, int *, ...);
488
+ typedef void (MPI_Session_errhandler_function)(MPI_Session *, int *, ...);
475
489
  /* names that were added in MPI-2.0 and deprecated in MPI-2.2 */
476
490
  typedef MPI_Comm_errhandler_function MPI_Comm_errhandler_fn;
477
491
  typedef MPI_File_errhandler_function MPI_File_errhandler_fn;
478
492
  typedef MPI_Win_errhandler_function MPI_Win_errhandler_fn;
479
-
493
+ typedef MPI_Session_errhandler_function MPI_Session_errhandler_fn;
480
494
  /* Built in (0x1 in 30-31), errhandler (0x5 in bits 26-29, allkind (0
481
495
  in 22-25), index in the low bits */
482
496
  #define MPI_ERRORS_ARE_FATAL ((MPI_Errhandler)0x54000000)
@@ -486,6 +500,7 @@ typedef MPI_Win_errhandler_function MPI_Win_errhandler_fn;
486
500
  Using the MPIR prefix preserved the MPI_ names for objects defined by
487
501
  the standard. */
488
502
  #define MPIR_ERRORS_THROW_EXCEPTIONS ((MPI_Errhandler)0x54000002)
503
+ #define MPI_ERRORS_ABORT ((MPI_Errhandler)0x54000003)
489
504
  typedef int MPI_Errhandler;
490
505
 
491
506
  /* Make the C names for the dup function mixed case.
@@ -584,8 +599,8 @@ typedef int (MPI_Delete_function) ( MPI_Comm, int, void *, void * );
584
599
  * digits for REV, 1 digit for EXT and 2 digits for EXT_NUMBER. So,
585
600
  * 2019.0.0b0 will have the numeric version 20190000100.
586
601
  */
587
- #define I_MPI_VERSION "2021.10.0"
588
- #define I_MPI_NUMVERSION 20211000300
602
+ #define I_MPI_VERSION "2021.12.0"
603
+ #define I_MPI_NUMVERSION 20211200300
589
604
 
590
605
  /* for the datatype decoders */
591
606
  enum MPIR_Combiner_enum {
@@ -640,6 +655,8 @@ typedef int MPI_Info;
640
655
  /* MPICH-specific types */
641
656
  #define MPIX_COMM_TYPE_NEIGHBORHOOD 2
642
657
 
658
+ #define MPI_COMM_TYPE_HW_GUIDED 3
659
+
643
660
  /* Definitions that are determined by configure. */
644
661
  typedef long MPI_Aint;
645
662
  typedef int MPI_Fint;
@@ -792,6 +809,8 @@ typedef enum MPIR_T_pvar_class_t {
792
809
  #define MPI_Win_f2c(win) (MPI_Win)(win)
793
810
  #define MPI_Message_c2f(msg) ((MPI_Fint)(msg))
794
811
  #define MPI_Message_f2c(msg) ((MPI_Message)(msg))
812
+ #define MPI_Session_c2f(session) (MPI_Fint)(session)
813
+ #define MPI_Session_f2c(session) (MPI_Session)(session)
795
814
 
796
815
  /* PMPI versions of the handle transfer functions. See section 4.17 */
797
816
  #define PMPI_Comm_c2f(comm) (MPI_Fint)(comm)
@@ -812,6 +831,8 @@ typedef enum MPIR_T_pvar_class_t {
812
831
  #define PMPI_Win_f2c(win) (MPI_Win)(win)
813
832
  #define PMPI_Message_c2f(msg) ((MPI_Fint)(msg))
814
833
  #define PMPI_Message_f2c(msg) ((MPI_Message)(msg))
834
+ #define PMPI_Session_c2f(session) (MPI_Fint)(session)
835
+ #define PMPI_Session_f2c(session) (MPI_Session)(session)
815
836
 
816
837
  #define MPI_STATUS_IGNORE (MPI_Status *)1
817
838
  #define MPI_STATUSES_IGNORE (MPI_Status *)1
@@ -964,10 +985,11 @@ typedef int (MPIX_Grequest_wait_function)(int, void **, double, MPI_Status *);
964
985
  #define MPI_T_ERR_INVALID_NAME 73 /* Name doesn't match */
965
986
  #define MPI_T_ERR_INVALID 74 /* Generic error code for MPI_T added in MPI-3.1 */
966
987
 
988
+ #define MPI_ERR_SESSION 75 /* Invalid session handle */
967
989
 
968
990
  #define MPI_ERR_LASTCODE 0x3fffffff /* Last valid error code for a
969
991
  predefined error class */
970
- #define MPICH_ERR_LAST_CLASS 74 /* It is also helpful to know the
992
+ #define MPICH_ERR_LAST_CLASS 75 /* It is also helpful to know the
971
993
  last valid class */
972
994
 
973
995
  #define MPICH_ERR_FIRST_MPIX 100 /* Define a gap here because sock is
@@ -994,6 +1016,16 @@ typedef int (MPI_Datarep_extent_function)(MPI_Datatype datatype, MPI_Aint *,
994
1016
  void *);
995
1017
  #define MPI_CONVERSION_FN_NULL ((MPI_Datarep_conversion_function *)0)
996
1018
 
1019
+ typedef int (MPI_Datarep_conversion_function_c)(void *, MPI_Datatype, MPI_Count,
1020
+ void *, MPI_Offset, void *);
1021
+ #define MPI_CONVERSION_FN_NULL_C ((MPI_Datarep_conversion_function_c *)0)
1022
+
1023
+ typedef struct {
1024
+ void **storage_stack;
1025
+ } QMPI_Context;
1026
+
1027
+ #define QMPI_MAX_TOOL_NAME_LENGTH 256
1028
+
997
1029
  /*
998
1030
  For systems that may need to add additional definitions to support
999
1031
  different declaration styles and options (e.g., different calling
@@ -1013,6 +1045,20 @@ int MPI_Send(const void *buf, int count, MPI_Datatype datatype, int dest, int ta
1013
1045
  int MPI_Recv(void *buf, int count, MPI_Datatype datatype, int source, int tag,
1014
1046
  MPI_Comm comm, MPI_Status *status) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1015
1047
  int MPI_Get_count(const MPI_Status *status, MPI_Datatype datatype, int *count) MPICH_API_PUBLIC;
1048
+ int MPI_Comm_create_from_group(MPI_Group group, const char *stringtag, MPI_Info info,
1049
+ MPI_Errhandler errhandler, MPI_Comm *newcomm) MPICH_API_PUBLIC;
1050
+ int MPI_Group_from_session_pset(MPI_Session session, const char *pset_name, MPI_Group *newgroup)
1051
+ MPICH_API_PUBLIC;
1052
+ int MPI_Session_finalize(MPI_Session *session) MPICH_API_PUBLIC;
1053
+ int MPI_Session_get_info(MPI_Session session, MPI_Info *info_used) MPICH_API_PUBLIC;
1054
+ int MPI_Session_get_nth_pset(MPI_Session session, MPI_Info info, int n, int *pset_len,
1055
+ char *pset_name) MPICH_API_PUBLIC;
1056
+ int MPI_Session_get_num_psets(MPI_Session session, MPI_Info info, int *npset_names)
1057
+ MPICH_API_PUBLIC;
1058
+ int MPI_Session_get_pset_info(MPI_Session session, const char *pset_name, MPI_Info *info)
1059
+ MPICH_API_PUBLIC;
1060
+ int MPI_Session_init(MPI_Info info, MPI_Errhandler errhandler, MPI_Session *session)
1061
+ MPICH_API_PUBLIC;
1016
1062
  int MPI_Bsend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag,
1017
1063
  MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1018
1064
  int MPI_Ssend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag,
@@ -1094,58 +1140,246 @@ int MPI_Pack(const void *inbuf, int incount, MPI_Datatype datatype, void *outbuf
1094
1140
  int MPI_Unpack(const void *inbuf, int insize, int *position, void *outbuf, int outcount,
1095
1141
  MPI_Datatype datatype, MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1096
1142
  int MPI_Pack_size(int incount, MPI_Datatype datatype, MPI_Comm comm, int *size) MPICH_API_PUBLIC;
1097
- int MPI_Barrier(MPI_Comm comm) MPICH_API_PUBLIC;
1098
- int MPI_Bcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm)
1099
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1100
- int MPI_Gather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1101
- int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
1102
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1103
- int MPI_Gatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1104
- const int *recvcounts, const int *displs, MPI_Datatype recvtype, int root,
1105
- MPI_Comm comm)
1106
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1107
- int MPI_Scatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1108
- int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
1109
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1110
- int MPI_Scatterv(const void *sendbuf, const int *sendcounts, const int *displs,
1111
- MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
1112
- int root, MPI_Comm comm)
1113
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
1143
+ int MPI_Op_create(MPI_User_function *user_fn, int commute, MPI_Op *op) MPICH_API_PUBLIC;
1144
+ int MPI_Op_free(MPI_Op *op) MPICH_API_PUBLIC;
1114
1145
  int MPI_Allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1115
1146
  int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
1116
1147
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1148
+ int MPI_Allgather_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1149
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
1150
+ MPI_Request *request)
1151
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1117
1152
  int MPI_Allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1118
- const int *recvcounts, const int *displs, MPI_Datatype recvtype, MPI_Comm comm)
1153
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype,
1154
+ MPI_Comm comm)
1119
1155
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1156
+ int MPI_Allgatherv_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1157
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype,
1158
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
1159
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1160
+ int MPI_Allreduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1161
+ MPI_Comm comm)
1162
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1163
+ int MPI_Allreduce_init(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
1164
+ MPI_Op op, MPI_Comm comm, MPI_Info info, MPI_Request *request)
1165
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1120
1166
  int MPI_Alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1121
1167
  int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
1122
1168
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1123
- int MPI_Alltoallv(const void *sendbuf, const int *sendcounts, const int *sdispls,
1124
- MPI_Datatype sendtype, void *recvbuf, const int *recvcounts,
1125
- const int *rdispls, MPI_Datatype recvtype, MPI_Comm comm)
1169
+ int MPI_Alltoall_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1170
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
1171
+ MPI_Request *request)
1172
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1173
+ int MPI_Alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
1174
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[], const int rdispls[],
1175
+ MPI_Datatype recvtype, MPI_Comm comm)
1126
1176
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
1177
+ int MPI_Alltoallv_init(const void *sendbuf, const int sendcounts[], const int sdispls[],
1178
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
1179
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
1180
+ MPI_Request *request)
1181
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
1127
1182
  int MPI_Alltoallw(const void *sendbuf, const int sendcounts[], const int sdispls[],
1128
1183
  const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
1129
- const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm) MPICH_API_PUBLIC;
1130
- int MPI_Exscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
1131
- MPI_Op op, MPI_Comm comm)
1184
+ const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm)
1185
+ MPICH_API_PUBLIC;
1186
+ int MPI_Alltoallw_init(const void *sendbuf, const int sendcounts[], const int sdispls[],
1187
+ const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
1188
+ const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm,
1189
+ MPI_Info info, MPI_Request *request) MPICH_API_PUBLIC;
1190
+ int MPI_Barrier(MPI_Comm comm) MPICH_API_PUBLIC;
1191
+ int MPI_Barrier_init(MPI_Comm comm, MPI_Info info, MPI_Request *request) MPICH_API_PUBLIC;
1192
+ int MPI_Bcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm)
1193
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1194
+ int MPI_Bcast_init(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm,
1195
+ MPI_Info info, MPI_Request *request)
1196
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1197
+ int MPI_Exscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1198
+ MPI_Comm comm)
1132
1199
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1133
- int MPI_Reduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
1134
- MPI_Op op, int root, MPI_Comm comm)
1200
+ int MPI_Exscan_init(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1201
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
1202
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1203
+ int MPI_Gather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1204
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
1205
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1206
+ int MPI_Gather_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1207
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Info info,
1208
+ MPI_Request *request)
1209
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1210
+ int MPI_Gatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1211
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype, int root,
1212
+ MPI_Comm comm)
1213
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1214
+ int MPI_Gatherv_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1215
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype, int root,
1216
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
1217
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1218
+ int MPI_Iallgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1219
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
1220
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1221
+ int MPI_Iallgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1222
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype,
1223
+ MPI_Comm comm, MPI_Request *request)
1224
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1225
+ int MPI_Iallreduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1226
+ MPI_Comm comm, MPI_Request *request)
1227
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1228
+ int MPI_Ialltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1229
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
1230
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1231
+ int MPI_Ialltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
1232
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
1233
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
1234
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
1235
+ int MPI_Ialltoallw(const void *sendbuf, const int sendcounts[], const int sdispls[],
1236
+ const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
1237
+ const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm,
1238
+ MPI_Request *request) MPICH_API_PUBLIC;
1239
+ int MPI_Ibarrier(MPI_Comm comm, MPI_Request *request) MPICH_API_PUBLIC;
1240
+ int MPI_Ibcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm,
1241
+ MPI_Request *request) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1242
+ int MPI_Iexscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1243
+ MPI_Comm comm, MPI_Request *request)
1244
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1245
+ int MPI_Igather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1246
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm,
1247
+ MPI_Request *request)
1248
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1249
+ int MPI_Igatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1250
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype, int root,
1251
+ MPI_Comm comm, MPI_Request *request)
1252
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1253
+ int MPI_Ineighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1254
+ void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm,
1255
+ MPI_Request *request)
1256
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1257
+ int MPI_Ineighbor_allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1258
+ void *recvbuf, const int recvcounts[], const int displs[],
1259
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
1260
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1261
+ int MPI_Ineighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1262
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm,
1263
+ MPI_Request *request)
1264
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1265
+ int MPI_Ineighbor_alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
1266
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
1267
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
1268
+ MPI_Request *request)
1269
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
1270
+ int MPI_Ineighbor_alltoallw(const void *sendbuf, const int sendcounts[], const MPI_Aint sdispls[],
1271
+ const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
1272
+ const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm,
1273
+ MPI_Request *request) MPICH_API_PUBLIC;
1274
+ int MPI_Ireduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1275
+ int root, MPI_Comm comm, MPI_Request *request)
1276
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1277
+ int MPI_Ireduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[],
1278
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request)
1279
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1280
+ int MPI_Ireduce_scatter_block(const void *sendbuf, void *recvbuf, int recvcount,
1281
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm,
1282
+ MPI_Request *request)
1283
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1284
+ int MPI_Iscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1285
+ MPI_Comm comm, MPI_Request *request)
1286
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1287
+ int MPI_Iscatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1288
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm,
1289
+ MPI_Request *request)
1290
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1291
+ int MPI_Iscatterv(const void *sendbuf, const int sendcounts[], const int displs[],
1292
+ MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
1293
+ int root, MPI_Comm comm, MPI_Request *request)
1294
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
1295
+ int MPI_Neighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1296
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
1297
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1298
+ int MPI_Neighbor_allgather_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1299
+ void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm,
1300
+ MPI_Info info, MPI_Request *request)
1301
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1302
+ int MPI_Neighbor_allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1303
+ void *recvbuf, const int recvcounts[], const int displs[],
1304
+ MPI_Datatype recvtype, MPI_Comm comm)
1305
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1306
+ int MPI_Neighbor_allgatherv_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1307
+ void *recvbuf, const int recvcounts[], const int displs[],
1308
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
1309
+ MPI_Request *request)
1310
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1311
+ int MPI_Neighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1312
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
1313
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1314
+ int MPI_Neighbor_alltoall_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1315
+ void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm,
1316
+ MPI_Info info, MPI_Request *request)
1317
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1318
+ int MPI_Neighbor_alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
1319
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
1320
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm)
1321
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
1322
+ int MPI_Neighbor_alltoallv_init(const void *sendbuf, const int sendcounts[], const int sdispls[],
1323
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
1324
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
1325
+ MPI_Info info, MPI_Request *request)
1326
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
1327
+ int MPI_Neighbor_alltoallw(const void *sendbuf, const int sendcounts[], const MPI_Aint sdispls[],
1328
+ const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
1329
+ const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm)
1330
+ MPICH_API_PUBLIC;
1331
+ int MPI_Neighbor_alltoallw_init(const void *sendbuf, const int sendcounts[],
1332
+ const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
1333
+ void *recvbuf, const int recvcounts[], const MPI_Aint rdispls[],
1334
+ const MPI_Datatype recvtypes[], MPI_Comm comm, MPI_Info info,
1335
+ MPI_Request *request) MPICH_API_PUBLIC;
1336
+ int MPI_Reduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1337
+ int root, MPI_Comm comm)
1135
1338
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1136
- int MPI_Op_create(MPI_User_function *user_fn, int commute, MPI_Op *op) MPICH_API_PUBLIC;
1137
- int MPI_Op_free(MPI_Op *op) MPICH_API_PUBLIC;
1138
- int MPI_Allreduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
1139
- MPI_Op op, MPI_Comm comm)
1140
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1339
+ int MPI_Reduce_init(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1340
+ int root, MPI_Comm comm, MPI_Info info, MPI_Request *request)
1341
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1342
+ int MPI_Reduce_local(const void *inbuf, void *inoutbuf, int count, MPI_Datatype datatype,
1343
+ MPI_Op op)
1344
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1141
1345
  int MPI_Reduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[],
1142
1346
  MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
1143
1347
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1348
+ int MPI_Reduce_scatter_block(const void *sendbuf, void *recvbuf, int recvcount,
1349
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
1350
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1351
+ int MPI_Reduce_scatter_block_init(const void *sendbuf, void *recvbuf, int recvcount,
1352
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Info info,
1353
+ MPI_Request *request)
1354
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1355
+ int MPI_Reduce_scatter_init(const void *sendbuf, void *recvbuf, const int recvcounts[],
1356
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Info info,
1357
+ MPI_Request *request)
1358
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1144
1359
  int MPI_Scan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1145
1360
  MPI_Comm comm)
1146
1361
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1147
- int MPI_Group_size(MPI_Group group, int *size) MPICH_API_PUBLIC;
1148
- int MPI_Group_rank(MPI_Group group, int *rank) MPICH_API_PUBLIC;
1362
+ int MPI_Scan_init(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1363
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
1364
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1365
+ int MPI_Scatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1366
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
1367
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1368
+ int MPI_Scatter_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1369
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Info info,
1370
+ MPI_Request *request)
1371
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1372
+ int MPI_Scatterv(const void *sendbuf, const int sendcounts[], const int displs[],
1373
+ MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
1374
+ int root, MPI_Comm comm)
1375
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
1376
+ int MPI_Scatterv_init(const void *sendbuf, const int sendcounts[], const int displs[],
1377
+ MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
1378
+ int root, MPI_Comm comm, MPI_Info info, MPI_Request *request)
1379
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
1380
+
1381
+ IMPI_DEVICE_EXPORT int MPI_Group_size(MPI_Group group, int *size) MPICH_API_PUBLIC;
1382
+ IMPI_DEVICE_EXPORT int MPI_Group_rank(MPI_Group group, int *rank) MPICH_API_PUBLIC;
1149
1383
  int MPI_Group_translate_ranks(MPI_Group group1, int n, const int ranks1[], MPI_Group group2,
1150
1384
  int ranks2[]) MPICH_API_PUBLIC;
1151
1385
  int MPI_Group_compare(MPI_Group group1, MPI_Group group2, int *result) MPICH_API_PUBLIC;
@@ -1157,7 +1391,7 @@ int MPI_Group_incl(MPI_Group group, int n, const int ranks[], MPI_Group *newgrou
1157
1391
  int MPI_Group_excl(MPI_Group group, int n, const int ranks[], MPI_Group *newgroup) MPICH_API_PUBLIC;
1158
1392
  int MPI_Group_range_incl(MPI_Group group, int n, int ranges[][3], MPI_Group *newgroup) MPICH_API_PUBLIC;
1159
1393
  int MPI_Group_range_excl(MPI_Group group, int n, int ranges[][3], MPI_Group *newgroup) MPICH_API_PUBLIC;
1160
- int MPI_Group_free(MPI_Group *group) MPICH_API_PUBLIC;
1394
+ IMPI_DEVICE_EXPORT int MPI_Group_free(MPI_Group *group) MPICH_API_PUBLIC;
1161
1395
  int MPI_Comm_size(MPI_Comm comm, int *size) MPICH_API_PUBLIC;
1162
1396
  int MPI_Comm_rank(MPI_Comm comm, int *rank) MPICH_API_PUBLIC;
1163
1397
  int MPI_Comm_compare(MPI_Comm comm1, MPI_Comm comm2, int *result) MPICH_API_PUBLIC;
@@ -1244,24 +1478,32 @@ int MPI_Accumulate(const void *origin_addr, int origin_count, MPI_Datatype origi
1244
1478
  int target_rank, MPI_Aint target_disp, int target_count,
1245
1479
  MPI_Datatype target_datatype, MPI_Op op, MPI_Win win)
1246
1480
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1247
- int MPI_Get(void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
1481
+ IMPI_DEVICE_EXPORT int MPI_Get(void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
1248
1482
  int target_rank, MPI_Aint target_disp, int target_count,
1249
1483
  MPI_Datatype target_datatype, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1250
- int MPI_Put(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
1484
+ IMPI_DEVICE_EXPORT int MPI_Put(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
1251
1485
  int target_rank, MPI_Aint target_disp, int target_count,
1252
1486
  MPI_Datatype target_datatype, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1253
1487
  int MPI_Win_complete(MPI_Win win) MPICH_API_PUBLIC;
1254
1488
  int MPI_Win_create(void *base, MPI_Aint size, int disp_unit, MPI_Info info, MPI_Comm comm,
1255
1489
  MPI_Win *win) MPICH_API_PUBLIC;
1256
- int MPI_Win_fence(int assert, MPI_Win win) MPICH_API_PUBLIC;
1490
+ IMPI_DEVICE_EXPORT int MPI_Win_fence(int assert, MPI_Win win) MPICH_API_PUBLIC;
1257
1491
  int MPI_Win_free(MPI_Win *win) MPICH_API_PUBLIC;
1258
- int MPI_Win_get_group(MPI_Win win, MPI_Group *group) MPICH_API_PUBLIC;
1259
- int MPI_Win_lock(int lock_type, int rank, int assert, MPI_Win win) MPICH_API_PUBLIC;
1492
+ IMPI_DEVICE_EXPORT int MPI_Win_get_group(MPI_Win win, MPI_Group *group) MPICH_API_PUBLIC;
1493
+ IMPI_DEVICE_EXPORT int MPI_Win_lock(int lock_type, int rank, int assert, MPI_Win win) MPICH_API_PUBLIC;
1260
1494
  int MPI_Win_post(MPI_Group group, int assert, MPI_Win win) MPICH_API_PUBLIC;
1261
1495
  int MPI_Win_start(MPI_Group group, int assert, MPI_Win win) MPICH_API_PUBLIC;
1262
1496
  int MPI_Win_test(MPI_Win win, int *flag) MPICH_API_PUBLIC;
1263
- int MPI_Win_unlock(int rank, MPI_Win win) MPICH_API_PUBLIC;
1497
+ IMPI_DEVICE_EXPORT int MPI_Win_unlock(int rank, MPI_Win win) MPICH_API_PUBLIC;
1264
1498
  int MPI_Win_wait(MPI_Win win) MPICH_API_PUBLIC;
1499
+ int MPI_Win_allocate_c(MPI_Aint size, MPI_Aint disp_unit, MPI_Info info, MPI_Comm comm,
1500
+ void *baseptr, MPI_Win *win) MPICH_API_PUBLIC;
1501
+ int MPI_Win_allocate_shared_c(MPI_Aint size, MPI_Aint disp_unit, MPI_Info info, MPI_Comm comm,
1502
+ void *baseptr, MPI_Win *win) MPICH_API_PUBLIC;
1503
+ int MPI_Win_create_c(void *base, MPI_Aint size, MPI_Aint disp_unit, MPI_Info info, MPI_Comm comm,
1504
+ MPI_Win *win) MPICH_API_PUBLIC;
1505
+ int MPI_Win_shared_query_c(MPI_Win win, int rank, MPI_Aint *size, MPI_Aint *disp_unit,
1506
+ void *baseptr) MPICH_API_PUBLIC;
1265
1507
 
1266
1508
  /* MPI-3 One-Sided Communication Routines */
1267
1509
  int MPI_Win_allocate(MPI_Aint size, int disp_unit, MPI_Info info, MPI_Comm comm, void *baseptr,
@@ -1312,10 +1554,10 @@ int MPI_Rget_accumulate(const void *origin_addr, int origin_count,
1312
1554
  MPI_Request *request)
1313
1555
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
1314
1556
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1315
- int MPI_Win_lock_all(int assert, MPI_Win win) MPICH_API_PUBLIC;
1316
- int MPI_Win_unlock_all(MPI_Win win) MPICH_API_PUBLIC;
1317
- int MPI_Win_flush(int rank, MPI_Win win) MPICH_API_PUBLIC;
1318
- int MPI_Win_flush_all(MPI_Win win) MPICH_API_PUBLIC;
1557
+ IMPI_DEVICE_EXPORT int MPI_Win_lock_all(int assert, MPI_Win win) MPICH_API_PUBLIC;
1558
+ IMPI_DEVICE_EXPORT int MPI_Win_unlock_all(MPI_Win win) MPICH_API_PUBLIC;
1559
+ IMPI_DEVICE_EXPORT int MPI_Win_flush(int rank, MPI_Win win) MPICH_API_PUBLIC;
1560
+ IMPI_DEVICE_EXPORT int MPI_Win_flush_all(MPI_Win win) MPICH_API_PUBLIC;
1319
1561
  int MPI_Win_flush_local(int rank, MPI_Win win) MPICH_API_PUBLIC;
1320
1562
  int MPI_Win_flush_local_all(MPI_Win win) MPICH_API_PUBLIC;
1321
1563
  int MPI_Win_sync(MPI_Win win) MPICH_API_PUBLIC;
@@ -1380,6 +1622,11 @@ int MPI_File_create_errhandler(MPI_File_errhandler_function *file_errhandler_fn,
1380
1622
  MPI_Errhandler *errhandler) MPICH_API_PUBLIC;
1381
1623
  int MPI_File_get_errhandler(MPI_File file, MPI_Errhandler *errhandler) MPICH_API_PUBLIC;
1382
1624
  int MPI_File_set_errhandler(MPI_File file, MPI_Errhandler errhandler) MPICH_API_PUBLIC;
1625
+ int MPI_Session_call_errhandler(MPI_Session session, int errorcode) MPICH_API_PUBLIC;
1626
+ int MPI_Session_create_errhandler(MPI_Session_errhandler_function *session_errhandler_fn,
1627
+ MPI_Errhandler *errhandler) MPICH_API_PUBLIC;
1628
+ int MPI_Session_get_errhandler(MPI_Session session, MPI_Errhandler *errhandler) MPICH_API_PUBLIC;
1629
+ int MPI_Session_set_errhandler(MPI_Session session, MPI_Errhandler errhandler) MPICH_API_PUBLIC;
1383
1630
  int MPI_Finalized(int *flag) MPICH_API_PUBLIC;
1384
1631
  int MPI_Free_mem(void *base) MPICH_API_PUBLIC;
1385
1632
  int MPI_Get_address(const void *location, MPI_Aint *address) MPICH_API_PUBLIC;
@@ -1439,14 +1686,7 @@ int MPI_Type_create_f90_integer(int range, MPI_Datatype *newtype) MPICH_API_PUBL
1439
1686
  int MPI_Type_create_f90_real(int precision, int range, MPI_Datatype *newtype) MPICH_API_PUBLIC;
1440
1687
  int MPI_Type_create_f90_complex(int precision, int range, MPI_Datatype *newtype) MPICH_API_PUBLIC;
1441
1688
 
1442
- int MPI_Reduce_local(const void *inbuf, void *inoutbuf, int count, MPI_Datatype datatype,
1443
- MPI_Op op)
1444
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1445
1689
  int MPI_Op_commutative(MPI_Op op, int *commute) MPICH_API_PUBLIC;
1446
- int MPI_Reduce_scatter_block(const void *sendbuf, void *recvbuf, int recvcount,
1447
- MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
1448
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4)
1449
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1450
1690
  int MPI_Dist_graph_create_adjacent(MPI_Comm comm_old, int indegree, const int sources[],
1451
1691
  const int sourceweights[], int outdegree,
1452
1692
  const int destinations[], const int destweights[],
@@ -1469,112 +1709,6 @@ int MPI_Mrecv(void *buf, int count, MPI_Datatype datatype, MPI_Message *message,
1469
1709
 
1470
1710
  /* Nonblocking collectives */
1471
1711
  int MPI_Comm_idup(MPI_Comm comm, MPI_Comm *newcomm, MPI_Request *request) MPICH_API_PUBLIC;
1472
- int MPI_Ibarrier(MPI_Comm comm, MPI_Request *request) MPICH_API_PUBLIC;
1473
- int MPI_Ibcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm,
1474
- MPI_Request *request) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1475
- int MPI_Igather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1476
- int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm,
1477
- MPI_Request *request)
1478
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1479
- int MPI_Igatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1480
- const int recvcounts[], const int displs[], MPI_Datatype recvtype, int root,
1481
- MPI_Comm comm, MPI_Request *request)
1482
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1483
- int MPI_Iscatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1484
- int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm,
1485
- MPI_Request *request)
1486
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1487
- int MPI_Iscatterv(const void *sendbuf, const int sendcounts[], const int displs[],
1488
- MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
1489
- int root, MPI_Comm comm, MPI_Request *request)
1490
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
1491
- int MPI_Iallgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1492
- int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
1493
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1494
- int MPI_Iallgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1495
- const int recvcounts[], const int displs[], MPI_Datatype recvtype,
1496
- MPI_Comm comm, MPI_Request *request)
1497
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1498
- int MPI_Ialltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1499
- int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
1500
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1501
- int MPI_Ialltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
1502
- MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
1503
- const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
1504
- MPI_Request *request)
1505
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
1506
- int MPI_Ialltoallw(const void *sendbuf, const int sendcounts[], const int sdispls[],
1507
- const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
1508
- const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm,
1509
- MPI_Request *request) MPICH_API_PUBLIC;
1510
- int MPI_Ireduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
1511
- MPI_Op op, int root, MPI_Comm comm, MPI_Request *request)
1512
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1513
- int MPI_Iallreduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
1514
- MPI_Op op, MPI_Comm comm, MPI_Request *request)
1515
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1516
- int MPI_Ireduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[],
1517
- MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request)
1518
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1519
- int MPI_Ireduce_scatter_block(const void *sendbuf, void *recvbuf, int recvcount,
1520
- MPI_Datatype datatype, MPI_Op op, MPI_Comm comm,
1521
- MPI_Request *request)
1522
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4)
1523
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1524
- int MPI_Iscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1525
- MPI_Comm comm, MPI_Request *request)
1526
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1527
- int MPI_Iexscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
1528
- MPI_Op op, MPI_Comm comm, MPI_Request *request)
1529
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1530
-
1531
- /* Neighborhood collectives */
1532
- int MPI_Ineighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1533
- void *recvbuf, int recvcount, MPI_Datatype recvtype,
1534
- MPI_Comm comm, MPI_Request *request)
1535
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
1536
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1537
- int MPI_Ineighbor_allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1538
- void *recvbuf, const int recvcounts[], const int displs[],
1539
- MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
1540
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
1541
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1542
- int MPI_Ineighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1543
- void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm,
1544
- MPI_Request *request)
1545
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
1546
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1547
- int MPI_Ineighbor_alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
1548
- MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
1549
- const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
1550
- MPI_Request *request)
1551
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4)
1552
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
1553
- int MPI_Ineighbor_alltoallw(const void *sendbuf, const int sendcounts[],
1554
- const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
1555
- void *recvbuf, const int recvcounts[], const MPI_Aint rdispls[],
1556
- const MPI_Datatype recvtypes[], MPI_Comm comm, MPI_Request *request) MPICH_API_PUBLIC;
1557
- int MPI_Neighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1558
- void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
1559
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
1560
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1561
- int MPI_Neighbor_allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1562
- void *recvbuf, const int recvcounts[], const int displs[],
1563
- MPI_Datatype recvtype, MPI_Comm comm)
1564
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
1565
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1566
- int MPI_Neighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
1567
- void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
1568
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
1569
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1570
- int MPI_Neighbor_alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
1571
- MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
1572
- const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm)
1573
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4)
1574
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
1575
- int MPI_Neighbor_alltoallw(const void *sendbuf, const int sendcounts[], const MPI_Aint sdispls[],
1576
- const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
1577
- const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm) MPICH_API_PUBLIC;
1578
1712
 
1579
1713
  /* Shared memory */
1580
1714
  int MPI_Comm_split_type(MPI_Comm comm, int split_type, int key, MPI_Info info, MPI_Comm *newcomm) MPICH_API_PUBLIC;
@@ -1658,6 +1792,20 @@ int PMPI_Send(const void *buf, int count, MPI_Datatype datatype, int dest, int t
1658
1792
  int PMPI_Recv(void *buf, int count, MPI_Datatype datatype, int source, int tag,
1659
1793
  MPI_Comm comm, MPI_Status *status) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1660
1794
  int PMPI_Get_count(const MPI_Status *status, MPI_Datatype datatype, int *count) MPICH_API_PUBLIC;
1795
+ int PMPI_Comm_create_from_group(MPI_Group group, const char *stringtag, MPI_Info info,
1796
+ MPI_Errhandler errhandler, MPI_Comm *newcomm) MPICH_API_PUBLIC;
1797
+ int PMPI_Group_from_session_pset(MPI_Session session, const char *pset_name, MPI_Group *newgroup)
1798
+ MPICH_API_PUBLIC;
1799
+ int PMPI_Session_finalize(MPI_Session *session) MPICH_API_PUBLIC;
1800
+ int PMPI_Session_get_info(MPI_Session session, MPI_Info *info_used) MPICH_API_PUBLIC;
1801
+ int PMPI_Session_get_nth_pset(MPI_Session session, MPI_Info info, int n, int *pset_len,
1802
+ char *pset_name) MPICH_API_PUBLIC;
1803
+ int PMPI_Session_get_num_psets(MPI_Session session, MPI_Info info, int *npset_names)
1804
+ MPICH_API_PUBLIC;
1805
+ int PMPI_Session_get_pset_info(MPI_Session session, const char *pset_name, MPI_Info *info)
1806
+ MPICH_API_PUBLIC;
1807
+ int PMPI_Session_init(MPI_Info info, MPI_Errhandler errhandler, MPI_Session *session)
1808
+ MPICH_API_PUBLIC;
1661
1809
  int PMPI_Bsend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag,
1662
1810
  MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1663
1811
  int PMPI_Ssend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag,
@@ -1740,56 +1888,8 @@ int PMPI_Pack(const void *inbuf, int incount, MPI_Datatype datatype, void *outbu
1740
1888
  int PMPI_Unpack(const void *inbuf, int insize, int *position, void *outbuf, int outcount,
1741
1889
  MPI_Datatype datatype, MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1742
1890
  int PMPI_Pack_size(int incount, MPI_Datatype datatype, MPI_Comm comm, int *size) MPICH_API_PUBLIC;
1743
- int PMPI_Barrier(MPI_Comm comm) MPICH_API_PUBLIC;
1744
- int PMPI_Bcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm)
1745
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
1746
- int PMPI_Gather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1747
- int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
1748
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1749
- int PMPI_Gatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1750
- const int *recvcounts, const int *displs, MPI_Datatype recvtype, int root,
1751
- MPI_Comm comm)
1752
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1753
- int PMPI_Scatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1754
- int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
1755
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1756
- int PMPI_Scatterv(const void *sendbuf, const int *sendcounts, const int *displs,
1757
- MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
1758
- int root, MPI_Comm comm)
1759
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
1760
- int PMPI_Allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1761
- int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
1762
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1763
- int PMPI_Allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1764
- const int *recvcounts, const int *displs, MPI_Datatype recvtype, MPI_Comm comm)
1765
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
1766
- int PMPI_Alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
1767
- int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
1768
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
1769
- int PMPI_Alltoallv(const void *sendbuf, const int *sendcounts, const int *sdispls,
1770
- MPI_Datatype sendtype, void *recvbuf, const int *recvcounts,
1771
- const int *rdispls, MPI_Datatype recvtype, MPI_Comm comm)
1772
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
1773
- int PMPI_Alltoallw(const void *sendbuf, const int sendcounts[], const int sdispls[],
1774
- const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
1775
- const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm) MPICH_API_PUBLIC;
1776
- int PMPI_Exscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
1777
- MPI_Op op, MPI_Comm comm)
1778
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1779
- int PMPI_Reduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
1780
- MPI_Op op, int root, MPI_Comm comm)
1781
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1782
1891
  int PMPI_Op_create(MPI_User_function *user_fn, int commute, MPI_Op *op) MPICH_API_PUBLIC;
1783
1892
  int PMPI_Op_free(MPI_Op *op) MPICH_API_PUBLIC;
1784
- int PMPI_Allreduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
1785
- MPI_Op op, MPI_Comm comm)
1786
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1787
- int PMPI_Reduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[],
1788
- MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
1789
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1790
- int PMPI_Scan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
1791
- MPI_Comm comm)
1792
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
1793
1893
  int PMPI_Group_size(MPI_Group group, int *size) MPICH_API_PUBLIC;
1794
1894
  int PMPI_Group_rank(MPI_Group group, int *rank) MPICH_API_PUBLIC;
1795
1895
  int PMPI_Group_translate_ranks(MPI_Group group1, int n, const int ranks1[], MPI_Group group2,
@@ -2024,6 +2124,11 @@ int PMPI_File_create_errhandler(MPI_File_errhandler_function *file_errhandler_fn
2024
2124
  MPI_Errhandler *errhandler) MPICH_API_PUBLIC;
2025
2125
  int PMPI_File_get_errhandler(MPI_File file, MPI_Errhandler *errhandler) MPICH_API_PUBLIC;
2026
2126
  int PMPI_File_set_errhandler(MPI_File file, MPI_Errhandler errhandler) MPICH_API_PUBLIC;
2127
+ int PMPI_Session_call_errhandler(MPI_Session session, int errorcode) MPICH_API_PUBLIC;
2128
+ int PMPI_Session_create_errhandler(MPI_Session_errhandler_function *session_errhandler_fn,
2129
+ MPI_Errhandler *errhandler) MPICH_API_PUBLIC;
2130
+ int PMPI_Session_get_errhandler(MPI_Session session, MPI_Errhandler *errhandler) MPICH_API_PUBLIC;
2131
+ int PMPI_Session_set_errhandler(MPI_Session session, MPI_Errhandler errhandler) MPICH_API_PUBLIC;
2027
2132
  int PMPI_Finalized(int *flag) MPICH_API_PUBLIC;
2028
2133
  int PMPI_Free_mem(void *base) MPICH_API_PUBLIC;
2029
2134
  int PMPI_Get_address(const void *location, MPI_Aint *address) MPICH_API_PUBLIC;
@@ -2113,118 +2218,8 @@ int PMPI_Mrecv(void *buf, int count, MPI_Datatype datatype, MPI_Message *message
2113
2218
 
2114
2219
  /* Nonblocking collectives */
2115
2220
  int PMPI_Comm_idup(MPI_Comm comm, MPI_Comm *newcomm, MPI_Request *request) MPICH_API_PUBLIC;
2116
- int PMPI_Ibarrier(MPI_Comm comm, MPI_Request *request) MPICH_API_PUBLIC;
2117
- int PMPI_Ibcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm,
2118
- MPI_Request *request) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2119
- int PMPI_Igather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2120
- int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm,
2121
- MPI_Request *request)
2122
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2123
- int PMPI_Igatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2124
- const int recvcounts[], const int displs[], MPI_Datatype recvtype, int root,
2125
- MPI_Comm comm, MPI_Request *request)
2126
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2127
- int PMPI_Iscatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2128
- int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm,
2129
- MPI_Request *request)
2130
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2131
- int PMPI_Iscatterv(const void *sendbuf, const int sendcounts[], const int displs[],
2132
- MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
2133
- int root, MPI_Comm comm, MPI_Request *request)
2134
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
2135
- int PMPI_Iallgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2136
- int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2137
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2138
- int PMPI_Iallgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2139
- const int recvcounts[], const int displs[], MPI_Datatype recvtype,
2140
- MPI_Comm comm, MPI_Request *request)
2141
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2142
- int PMPI_Ialltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2143
- int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2144
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2145
- int PMPI_Ialltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
2146
- MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
2147
- const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
2148
- MPI_Request *request)
2149
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2150
- int PMPI_Ialltoallw(const void *sendbuf, const int sendcounts[], const int sdispls[],
2151
- const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
2152
- const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm,
2153
- MPI_Request *request) MPICH_API_PUBLIC;
2154
- int PMPI_Ireduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
2155
- MPI_Op op, int root, MPI_Comm comm, MPI_Request *request)
2156
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2157
- int PMPI_Iallreduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
2158
- MPI_Op op, MPI_Comm comm, MPI_Request *request)
2159
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2160
- int PMPI_Ireduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[],
2161
- MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request)
2162
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4)
2163
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2164
- int PMPI_Ireduce_scatter_block(const void *sendbuf, void *recvbuf, int recvcount,
2165
- MPI_Datatype datatype, MPI_Op op, MPI_Comm comm,
2166
- MPI_Request *request)
2167
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4)
2168
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2169
- int PMPI_Iscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
2170
- MPI_Comm comm, MPI_Request *request)
2171
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2172
- int PMPI_Iexscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
2173
- MPI_Op op, MPI_Comm comm, MPI_Request *request)
2174
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2175
-
2176
- /* Neighborhood collectives */
2177
- int PMPI_Ineighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
2178
- void *recvbuf, int recvcount, MPI_Datatype recvtype,
2179
- MPI_Comm comm, MPI_Request *request)
2180
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
2181
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2182
- int PMPI_Ineighbor_allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
2183
- void *recvbuf, const int recvcounts[], const int displs[],
2184
- MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2185
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
2186
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2187
- int PMPI_Ineighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
2188
- void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2189
- MPI_Request *request)
2190
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
2191
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2192
- int PMPI_Ineighbor_alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
2193
- MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
2194
- const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
2195
- MPI_Request *request)
2196
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4)
2197
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2198
- int PMPI_Ineighbor_alltoallw(const void *sendbuf, const int sendcounts[],
2199
- const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
2200
- void *recvbuf, const int recvcounts[], const MPI_Aint rdispls[],
2201
- const MPI_Datatype recvtypes[], MPI_Comm comm, MPI_Request *request) MPICH_API_PUBLIC;
2202
- int PMPI_Neighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
2203
- void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
2204
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
2205
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2206
- int PMPI_Neighbor_allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
2207
- void *recvbuf, const int recvcounts[], const int displs[],
2208
- MPI_Datatype recvtype, MPI_Comm comm)
2209
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
2210
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2211
- int PMPI_Neighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
2212
- void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
2213
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
2214
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2215
- int PMPI_Neighbor_alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
2216
- MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
2217
- const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm)
2218
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4)
2219
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2220
- int PMPI_Neighbor_alltoallw(const void *sendbuf, const int sendcounts[], const MPI_Aint sdispls[],
2221
- const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
2222
- const MPI_Aint rdispls[], const MPI_Datatype recvtypes[],
2223
- MPI_Comm comm) MPICH_API_PUBLIC;
2224
-
2225
2221
  /* Shared memory */
2226
2222
  int PMPI_Comm_split_type(MPI_Comm comm, int split_type, int key, MPI_Info info, MPI_Comm *newcomm) MPICH_API_PUBLIC;
2227
-
2228
2223
  /* Noncollective communicator creation */
2229
2224
  int PMPI_Comm_create_group(MPI_Comm comm, MPI_Group group, int tag, MPI_Comm *newcomm) MPICH_API_PUBLIC;
2230
2225
 
@@ -2296,44 +2291,84 @@ int PMPIX_Comm_agree(MPI_Comm comm, int *flag) MPICH_API_PUBLIC;
2296
2291
  int MPI_Allgather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2297
2292
  MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm)
2298
2293
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2294
+ int MPI_Allgather_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2295
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2296
+ MPI_Info info, MPI_Request *request)
2297
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2299
2298
  int MPI_Allgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2300
- const MPI_Count *recvcounts, const MPI_Aint *displs, MPI_Datatype recvtype, MPI_Comm comm)
2299
+ const MPI_Count recvcounts[], const MPI_Aint displs[], MPI_Datatype recvtype,
2300
+ MPI_Comm comm)
2301
2301
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2302
+ int MPI_Allgatherv_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2303
+ void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2304
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
2305
+ MPI_Request *request)
2306
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2302
2307
  int MPI_Allreduce_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2303
2308
  MPI_Op op, MPI_Comm comm)
2304
2309
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2305
- int MPI_Reduce_scatter_c(const void *sendbuf, void *recvbuf, const MPI_Count recvcounts[],
2306
- MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
2310
+ int MPI_Allreduce_init_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2311
+ MPI_Op op, MPI_Comm comm, MPI_Info info, MPI_Request *request)
2307
2312
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2308
2313
  int MPI_Alltoall_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2309
2314
  MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm)
2310
2315
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2316
+ int MPI_Alltoall_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2317
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2318
+ MPI_Info info, MPI_Request *request)
2319
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2311
2320
  int MPI_Alltoallv_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint sdispls[],
2312
2321
  MPI_Datatype sendtype, void *recvbuf, const MPI_Count recvcounts[],
2313
2322
  const MPI_Aint rdispls[], MPI_Datatype recvtype, MPI_Comm comm)
2314
2323
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2324
+ int MPI_Alltoallv_init_c(const void *sendbuf, const MPI_Count sendcounts[],
2325
+ const MPI_Aint sdispls[], MPI_Datatype sendtype, void *recvbuf,
2326
+ const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2327
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info, MPI_Request *request)
2328
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2315
2329
  int MPI_Alltoallw_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint sdispls[],
2316
2330
  const MPI_Datatype sendtypes[], void *recvbuf, const MPI_Count recvcounts[],
2317
- const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm) MPICH_API_PUBLIC;
2331
+ const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm)
2332
+ MPICH_API_PUBLIC;
2333
+ int MPI_Alltoallw_init_c(const void *sendbuf, const MPI_Count sendcounts[],
2334
+ const MPI_Aint sdispls[], const MPI_Datatype sendtypes[], void *recvbuf,
2335
+ const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2336
+ const MPI_Datatype recvtypes[], MPI_Comm comm, MPI_Info info,
2337
+ MPI_Request *request) MPICH_API_PUBLIC;
2318
2338
  int MPI_Bcast_c(void *buffer, MPI_Count count, MPI_Datatype datatype, int root, MPI_Comm comm)
2319
2339
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2340
+ int MPI_Bcast_init_c(void *buffer, MPI_Count count, MPI_Datatype datatype, int root, MPI_Comm comm,
2341
+ MPI_Info info, MPI_Request *request)
2342
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2320
2343
  int MPI_Exscan_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2321
2344
  MPI_Op op, MPI_Comm comm)
2322
2345
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2346
+ int MPI_Exscan_init_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2347
+ MPI_Op op, MPI_Comm comm, MPI_Info info, MPI_Request *request)
2348
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2323
2349
  int MPI_Gather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2324
2350
  MPI_Count recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
2325
2351
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2352
+ int MPI_Gather_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2353
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype, int root,
2354
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
2355
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2326
2356
  int MPI_Gatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2327
- const MPI_Count *recvcounts, const MPI_Aint *displs, MPI_Datatype recvtype, int root,
2328
- MPI_Comm comm)
2357
+ const MPI_Count recvcounts[], const MPI_Aint displs[], MPI_Datatype recvtype,
2358
+ int root, MPI_Comm comm)
2329
2359
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2360
+ int MPI_Gatherv_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2361
+ void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2362
+ MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Info info,
2363
+ MPI_Request *request)
2364
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2330
2365
  int MPI_Iallgather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2331
2366
  MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2332
2367
  MPI_Request *request)
2333
2368
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2334
- int MPI_Iallgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2335
- const MPI_Count recvcounts[], const MPI_Aint displs[], MPI_Datatype recvtype,
2336
- MPI_Comm comm, MPI_Request *request)
2369
+ int MPI_Iallgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2370
+ void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2371
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2337
2372
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2338
2373
  int MPI_Iallreduce_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2339
2374
  MPI_Op op, MPI_Comm comm, MPI_Request *request)
@@ -2361,8 +2396,8 @@ int MPI_Igather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtyp
2361
2396
  MPI_Request *request)
2362
2397
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2363
2398
  int MPI_Igatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2364
- const MPI_Count recvcounts[], const MPI_Aint displs[], MPI_Datatype recvtype, int root,
2365
- MPI_Comm comm, MPI_Request *request)
2399
+ const MPI_Count recvcounts[], const MPI_Aint displs[], MPI_Datatype recvtype,
2400
+ int root, MPI_Comm comm, MPI_Request *request)
2366
2401
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2367
2402
  int MPI_Ineighbor_allgather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2368
2403
  void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
@@ -2371,8 +2406,7 @@ int MPI_Ineighbor_allgather_c(const void *sendbuf, MPI_Count sendcount, MPI_Data
2371
2406
  int MPI_Ineighbor_allgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2372
2407
  void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2373
2408
  MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2374
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
2375
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2409
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2376
2410
  int MPI_Ineighbor_alltoall_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2377
2411
  void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2378
2412
  MPI_Comm comm, MPI_Request *request)
@@ -2385,7 +2419,8 @@ int MPI_Ineighbor_alltoallv_c(const void *sendbuf, const MPI_Count sendcounts[],
2385
2419
  int MPI_Ineighbor_alltoallw_c(const void *sendbuf, const MPI_Count sendcounts[],
2386
2420
  const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
2387
2421
  void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2388
- const MPI_Datatype recvtypes[], MPI_Comm comm, MPI_Request *request) MPICH_API_PUBLIC;
2422
+ const MPI_Datatype recvtypes[], MPI_Comm comm, MPI_Request *request)
2423
+ MPICH_API_PUBLIC;
2389
2424
  int MPI_Ireduce_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2390
2425
  MPI_Op op, int root, MPI_Comm comm, MPI_Request *request)
2391
2426
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
@@ -2404,254 +2439,733 @@ int MPI_Iscatter_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendty
2404
2439
  MPI_Request *request)
2405
2440
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2406
2441
  int MPI_Iscatterv_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint displs[],
2407
- MPI_Datatype sendtype, void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2408
- int root, MPI_Comm comm, MPI_Request *request)
2442
+ MPI_Datatype sendtype, void *recvbuf, MPI_Count recvcount,
2443
+ MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Request *request)
2409
2444
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
2410
2445
  int MPI_Neighbor_allgather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2411
2446
  void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2412
2447
  MPI_Comm comm)
2413
2448
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2449
+ int MPI_Neighbor_allgather_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2450
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2451
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
2452
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2414
2453
  int MPI_Neighbor_allgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2415
2454
  void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2416
2455
  MPI_Datatype recvtype, MPI_Comm comm)
2417
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
2418
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2456
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2457
+ int MPI_Neighbor_allgatherv_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2458
+ void *recvbuf, const MPI_Count recvcounts[],
2459
+ const MPI_Aint displs[], MPI_Datatype recvtype, MPI_Comm comm,
2460
+ MPI_Info info, MPI_Request *request)
2461
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2419
2462
  int MPI_Neighbor_alltoall_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2420
2463
  void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2421
2464
  MPI_Comm comm)
2422
2465
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2466
+ int MPI_Neighbor_alltoall_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2467
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2468
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
2469
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2423
2470
  int MPI_Neighbor_alltoallv_c(const void *sendbuf, const MPI_Count sendcounts[],
2424
2471
  const MPI_Aint sdispls[], MPI_Datatype sendtype, void *recvbuf,
2425
2472
  const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2426
2473
  MPI_Datatype recvtype, MPI_Comm comm)
2427
2474
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2428
- int MPI_Neighbor_alltoallw_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint sdispls[],
2429
- const MPI_Datatype sendtypes[], void *recvbuf, const MPI_Count recvcounts[],
2430
- const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm) MPICH_API_PUBLIC;
2475
+ int MPI_Neighbor_alltoallv_init_c(const void *sendbuf, const MPI_Count sendcounts[],
2476
+ const MPI_Aint sdispls[], MPI_Datatype sendtype, void *recvbuf,
2477
+ const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2478
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
2479
+ MPI_Request *request)
2480
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2481
+ int MPI_Neighbor_alltoallw_c(const void *sendbuf, const MPI_Count sendcounts[],
2482
+ const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
2483
+ void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2484
+ const MPI_Datatype recvtypes[], MPI_Comm comm) MPICH_API_PUBLIC;
2485
+ int MPI_Neighbor_alltoallw_init_c(const void *sendbuf, const MPI_Count sendcounts[],
2486
+ const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
2487
+ void *recvbuf, const MPI_Count recvcounts[],
2488
+ const MPI_Aint rdispls[], const MPI_Datatype recvtypes[],
2489
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
2490
+ MPICH_API_PUBLIC;
2431
2491
  int MPI_Reduce_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2432
2492
  MPI_Op op, int root, MPI_Comm comm)
2433
2493
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2494
+ int MPI_Reduce_init_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2495
+ MPI_Op op, int root, MPI_Comm comm, MPI_Info info, MPI_Request *request)
2496
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2497
+ int MPI_Reduce_scatter_c(const void *sendbuf, void *recvbuf, const MPI_Count recvcounts[],
2498
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
2499
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2434
2500
  int MPI_Reduce_scatter_block_c(const void *sendbuf, void *recvbuf, MPI_Count recvcount,
2435
2501
  MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
2436
2502
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2503
+ int MPI_Reduce_scatter_block_init_c(const void *sendbuf, void *recvbuf, MPI_Count recvcount,
2504
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Info info,
2505
+ MPI_Request *request)
2506
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2507
+ int MPI_Reduce_scatter_init_c(const void *sendbuf, void *recvbuf, const MPI_Count recvcounts[],
2508
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Info info,
2509
+ MPI_Request *request)
2510
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2437
2511
  int MPI_Scan_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2438
2512
  MPI_Op op, MPI_Comm comm)
2439
2513
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2514
+ int MPI_Scan_init_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2515
+ MPI_Op op, MPI_Comm comm, MPI_Info info, MPI_Request *request)
2516
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2440
2517
  int MPI_Scatter_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2441
2518
  MPI_Count recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
2442
2519
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2443
- int MPI_Scatterv_c(const void *sendbuf, const MPI_Count *sendcounts, const MPI_Aint *displs,
2520
+ int MPI_Scatter_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2521
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype, int root,
2522
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
2523
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2524
+ int MPI_Scatterv_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint displs[],
2444
2525
  MPI_Datatype sendtype, void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2445
2526
  int root, MPI_Comm comm)
2446
2527
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
2447
-
2448
-
2528
+ int MPI_Scatterv_init_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint displs[],
2529
+ MPI_Datatype sendtype, void *recvbuf, MPI_Count recvcount,
2530
+ MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Info info,
2531
+ MPI_Request *request)
2532
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
2533
+ int MPI_Get_count_c(const MPI_Status *status, MPI_Datatype datatype, MPI_Count *count)
2534
+ MPICH_API_PUBLIC;
2535
+ int MPI_Get_elements_c(const MPI_Status *status, MPI_Datatype datatype, MPI_Count *count)
2536
+ MPICH_API_PUBLIC;
2537
+ int MPI_Pack_c(const void *inbuf, MPI_Count incount, MPI_Datatype datatype, void *outbuf,
2538
+ MPI_Count outsize, MPI_Count *position, MPI_Comm comm) MPICH_API_PUBLIC;
2539
+ int MPI_Pack_external_c(const char *datarep, const void *inbuf, MPI_Count incount,
2540
+ MPI_Datatype datatype, void *outbuf, MPI_Count outsize,
2541
+ MPI_Count *position) MPICH_API_PUBLIC;
2542
+ int MPI_Pack_external_size_c(const char *datarep, MPI_Count incount, MPI_Datatype datatype,
2543
+ MPI_Count *size) MPICH_API_PUBLIC;
2544
+ int MPI_Pack_size_c(MPI_Count incount, MPI_Datatype datatype, MPI_Comm comm, MPI_Count *size)
2545
+ MPICH_API_PUBLIC;
2546
+ int MPI_Status_set_elements_c(MPI_Status *status, MPI_Datatype datatype, MPI_Count count)
2547
+ MPICH_API_PUBLIC;
2548
+ int MPI_Type_contiguous_c(MPI_Count count, MPI_Datatype oldtype, MPI_Datatype *newtype)
2549
+ MPICH_API_PUBLIC;
2550
+ int MPI_Type_create_darray_c(int size, int rank, int ndims, const MPI_Count array_of_gsizes[],
2551
+ const int array_of_distribs[], const int array_of_dargs[],
2552
+ const int array_of_psizes[], int order, MPI_Datatype oldtype,
2553
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
2554
+ int MPI_Type_create_hindexed_c(MPI_Count count, const MPI_Count array_of_blocklengths[],
2555
+ const MPI_Count array_of_displacements[], MPI_Datatype oldtype,
2556
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
2557
+ int MPI_Type_create_hindexed_block_c(MPI_Count count, MPI_Count blocklength,
2558
+ const MPI_Count array_of_displacements[], MPI_Datatype oldtype,
2559
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
2560
+ int MPI_Type_create_hvector_c(MPI_Count count, MPI_Count blocklength, MPI_Count stride,
2561
+ MPI_Datatype oldtype, MPI_Datatype *newtype) MPICH_API_PUBLIC;
2562
+ int MPI_Type_create_indexed_block_c(MPI_Count count, MPI_Count blocklength,
2563
+ const MPI_Count array_of_displacements[], MPI_Datatype oldtype,
2564
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
2565
+ int MPI_Type_create_resized_c(MPI_Datatype oldtype, MPI_Count lb, MPI_Count extent,
2566
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
2567
+ int MPI_Type_create_struct_c(MPI_Count count, const MPI_Count array_of_blocklengths[],
2568
+ const MPI_Count array_of_displacements[],
2569
+ const MPI_Datatype array_of_types[], MPI_Datatype *newtype)
2570
+ MPICH_API_PUBLIC;
2571
+ int MPI_Type_create_subarray_c(int ndims, const MPI_Count array_of_sizes[],
2572
+ const MPI_Count array_of_subsizes[],
2573
+ const MPI_Count array_of_starts[], int order, MPI_Datatype oldtype,
2574
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
2575
+ int MPI_Type_get_contents_c(MPI_Datatype datatype, MPI_Count max_integers, MPI_Count max_addresses,
2576
+ MPI_Count max_large_counts, MPI_Count max_datatypes,
2577
+ int array_of_integers[], MPI_Aint array_of_addresses[],
2578
+ MPI_Count array_of_large_counts[], MPI_Datatype array_of_datatypes[])
2579
+ MPICH_API_PUBLIC;
2580
+ int MPI_Type_get_envelope_c(MPI_Datatype datatype, MPI_Count *num_integers,
2581
+ MPI_Count *num_addresses, MPI_Count *num_large_counts,
2582
+ MPI_Count *num_datatypes, int *combiner) MPICH_API_PUBLIC;
2583
+ int MPI_Type_get_extent_c(MPI_Datatype datatype, MPI_Count *lb, MPI_Count *extent)
2584
+ MPICH_API_PUBLIC;
2585
+ int MPI_Type_get_true_extent_c(MPI_Datatype datatype, MPI_Count *true_lb, MPI_Count *true_extent)
2586
+ MPICH_API_PUBLIC;
2587
+ int MPI_Type_indexed_c(MPI_Count count, const MPI_Count array_of_blocklengths[],
2588
+ const MPI_Count array_of_displacements[], MPI_Datatype oldtype,
2589
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
2590
+ int MPI_Type_size_c(MPI_Datatype datatype, MPI_Count *size) MPICH_API_PUBLIC;
2591
+ int MPI_Type_vector_c(MPI_Count count, MPI_Count blocklength, MPI_Count stride,
2592
+ MPI_Datatype oldtype, MPI_Datatype *newtype) MPICH_API_PUBLIC;
2593
+ int MPI_Unpack_c(const void *inbuf, MPI_Count insize, MPI_Count *position, void *outbuf,
2594
+ MPI_Count outcount, MPI_Datatype datatype, MPI_Comm comm) MPICH_API_PUBLIC;
2595
+ int MPI_Unpack_external_c(const char datarep[], const void *inbuf, MPI_Count insize,
2596
+ MPI_Count *position, void *outbuf, MPI_Count outcount,
2597
+ MPI_Datatype datatype) MPICH_API_PUBLIC;
2598
+ int MPI_Bsend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2599
+ MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2600
+ int MPI_Bsend_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2601
+ MPI_Comm comm, MPI_Request *request)
2602
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2603
+ int MPI_Buffer_attach_c(void *buffer, MPI_Count size) MPICH_API_PUBLIC;
2604
+ int MPI_Buffer_detach_c(void *buffer_addr, MPI_Count *size) MPICH_API_PUBLIC;
2605
+ int MPI_Ibsend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2606
+ MPI_Comm comm, MPI_Request *request)
2607
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2608
+ int MPI_Imrecv_c(void *buf, MPI_Count count, MPI_Datatype datatype, MPI_Message *message,
2609
+ MPI_Request *request) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2610
+ int MPI_Irecv_c(void *buf, MPI_Count count, MPI_Datatype datatype, int source, int tag,
2611
+ MPI_Comm comm, MPI_Request *request)
2612
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2613
+ int MPI_Irsend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2614
+ MPI_Comm comm, MPI_Request *request)
2615
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2616
+ int MPI_Isend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2617
+ MPI_Comm comm, MPI_Request *request)
2618
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2619
+ int MPI_Issend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2620
+ MPI_Comm comm, MPI_Request *request)
2621
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2622
+ int MPI_Mrecv_c(void *buf, MPI_Count count, MPI_Datatype datatype, MPI_Message *message,
2623
+ MPI_Status *status) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2624
+ int MPI_Recv_c(void *buf, MPI_Count count, MPI_Datatype datatype, int source, int tag,
2625
+ MPI_Comm comm, MPI_Status *status)
2626
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2627
+ int MPI_Recv_init_c(void *buf, MPI_Count count, MPI_Datatype datatype, int source, int tag,
2628
+ MPI_Comm comm, MPI_Request *request)
2629
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2630
+ int MPI_Rsend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2631
+ MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2632
+ int MPI_Rsend_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2633
+ MPI_Comm comm, MPI_Request *request)
2634
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2635
+ int MPI_Send_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2636
+ MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2637
+ int MPI_Send_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2638
+ MPI_Comm comm, MPI_Request *request)
2639
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2640
+ int MPI_Sendrecv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, int dest,
2641
+ int sendtag, void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2642
+ int source, int recvtag, MPI_Comm comm, MPI_Status *status)
2643
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(6,8) MPICH_API_PUBLIC;
2644
+ int MPI_Sendrecv_replace_c(void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int sendtag,
2645
+ int source, int recvtag, MPI_Comm comm, MPI_Status *status)
2646
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2647
+ int MPI_Ssend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2648
+ MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2649
+ int MPI_Ssend_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2650
+ MPI_Comm comm, MPI_Request *request)
2651
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2652
+ int MPI_Accumulate_c(const void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
2653
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
2654
+ MPI_Datatype target_datatype, MPI_Op op, MPI_Win win)
2655
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2656
+ int MPI_Get_c(void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
2657
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
2658
+ MPI_Datatype target_datatype, MPI_Win win)
2659
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2660
+ int MPI_Get_accumulate_c(const void *origin_addr, MPI_Count origin_count,
2661
+ MPI_Datatype origin_datatype, void *result_addr, MPI_Count result_count,
2662
+ MPI_Datatype result_datatype, int target_rank, MPI_Aint target_disp,
2663
+ MPI_Count target_count, MPI_Datatype target_datatype, MPI_Op op,
2664
+ MPI_Win win)
2665
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2666
+ int MPI_Put_c(const void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
2667
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
2668
+ MPI_Datatype target_datatype, MPI_Win win)
2669
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2670
+ int MPI_Raccumulate_c(const void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
2671
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
2672
+ MPI_Datatype target_datatype, MPI_Op op, MPI_Win win, MPI_Request *request)
2673
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2674
+ int MPI_Rget_c(void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
2675
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
2676
+ MPI_Datatype target_datatype, MPI_Win win, MPI_Request *request)
2677
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2678
+ int MPI_Rget_accumulate_c(const void *origin_addr, MPI_Count origin_count,
2679
+ MPI_Datatype origin_datatype, void *result_addr, MPI_Count result_count,
2680
+ MPI_Datatype result_datatype, int target_rank, MPI_Aint target_disp,
2681
+ MPI_Count target_count, MPI_Datatype target_datatype, MPI_Op op,
2682
+ MPI_Win win, MPI_Request *request)
2683
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2684
+ int MPI_Rput_c(const void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
2685
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
2686
+ MPI_Datatype target_datatype, MPI_Win win, MPI_Request *request)
2687
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2688
+ int PMPI_Allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2689
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
2690
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2449
2691
  int PMPI_Allgather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2450
2692
  MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm)
2451
2693
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2452
- int PMPI_Allgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2453
- const MPI_Count *recvcounts, const MPI_Aint *displs, MPI_Datatype recvtype, MPI_Comm comm)
2694
+ int PMPI_Allgather_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2695
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
2696
+ MPI_Request *request)
2697
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2698
+ int PMPI_Allgather_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2699
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2700
+ MPI_Info info, MPI_Request *request)
2701
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2702
+ int PMPI_Allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2703
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype,
2704
+ MPI_Comm comm)
2705
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2706
+ int PMPI_Allgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2707
+ void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2708
+ MPI_Datatype recvtype, MPI_Comm comm)
2454
2709
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2710
+ int PMPI_Allgatherv_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2711
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype,
2712
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
2713
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2714
+ int PMPI_Allgatherv_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2715
+ void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2716
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
2717
+ MPI_Request *request)
2718
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2719
+ int PMPI_Allreduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
2720
+ MPI_Comm comm)
2721
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2455
2722
  int PMPI_Allreduce_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2456
- MPI_Op op, MPI_Comm comm)
2457
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2458
- int PMPI_Reduce_scatter_c(const void *sendbuf, void *recvbuf, const MPI_Count recvcounts[],
2459
- MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
2723
+ MPI_Op op, MPI_Comm comm)
2724
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2725
+ int PMPI_Allreduce_init(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
2726
+ MPI_Op op, MPI_Comm comm, MPI_Info info, MPI_Request *request)
2727
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2728
+ int PMPI_Allreduce_init_c(const void *sendbuf, void *recvbuf, MPI_Count count,
2729
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Info info,
2730
+ MPI_Request *request)
2460
2731
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2732
+ int PMPI_Alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2733
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
2734
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2461
2735
  int PMPI_Alltoall_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2462
2736
  MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm)
2463
2737
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2738
+ int PMPI_Alltoall_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2739
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
2740
+ MPI_Request *request)
2741
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2742
+ int PMPI_Alltoall_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2743
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2744
+ MPI_Info info, MPI_Request *request)
2745
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2746
+ int PMPI_Alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
2747
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
2748
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm)
2749
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2464
2750
  int PMPI_Alltoallv_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint sdispls[],
2465
2751
  MPI_Datatype sendtype, void *recvbuf, const MPI_Count recvcounts[],
2466
2752
  const MPI_Aint rdispls[], MPI_Datatype recvtype, MPI_Comm comm)
2467
2753
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2754
+ int PMPI_Alltoallv_init(const void *sendbuf, const int sendcounts[], const int sdispls[],
2755
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
2756
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
2757
+ MPI_Request *request)
2758
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2759
+ int PMPI_Alltoallv_init_c(const void *sendbuf, const MPI_Count sendcounts[],
2760
+ const MPI_Aint sdispls[], MPI_Datatype sendtype, void *recvbuf,
2761
+ const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2762
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
2763
+ MPI_Request *request)
2764
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2765
+ int PMPI_Alltoallw(const void *sendbuf, const int sendcounts[], const int sdispls[],
2766
+ const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
2767
+ const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm)
2768
+ MPICH_API_PUBLIC;
2468
2769
  int PMPI_Alltoallw_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint sdispls[],
2469
2770
  const MPI_Datatype sendtypes[], void *recvbuf, const MPI_Count recvcounts[],
2470
- const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm) MPICH_API_PUBLIC;
2771
+ const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm)
2772
+ MPICH_API_PUBLIC;
2773
+ int PMPI_Alltoallw_init(const void *sendbuf, const int sendcounts[], const int sdispls[],
2774
+ const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
2775
+ const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm,
2776
+ MPI_Info info, MPI_Request *request) MPICH_API_PUBLIC;
2777
+ int PMPI_Alltoallw_init_c(const void *sendbuf, const MPI_Count sendcounts[],
2778
+ const MPI_Aint sdispls[], const MPI_Datatype sendtypes[], void *recvbuf,
2779
+ const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2780
+ const MPI_Datatype recvtypes[], MPI_Comm comm, MPI_Info info,
2781
+ MPI_Request *request) MPICH_API_PUBLIC;
2782
+ int PMPI_Barrier(MPI_Comm comm) MPICH_API_PUBLIC;
2783
+ int PMPI_Barrier_init(MPI_Comm comm, MPI_Info info, MPI_Request *request) MPICH_API_PUBLIC;
2784
+ int PMPI_Bcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm)
2785
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2471
2786
  int PMPI_Bcast_c(void *buffer, MPI_Count count, MPI_Datatype datatype, int root, MPI_Comm comm)
2472
2787
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2788
+ int PMPI_Bcast_init(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm,
2789
+ MPI_Info info, MPI_Request *request)
2790
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2791
+ int PMPI_Bcast_init_c(void *buffer, MPI_Count count, MPI_Datatype datatype, int root, MPI_Comm comm,
2792
+ MPI_Info info, MPI_Request *request)
2793
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2794
+ int PMPI_Exscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
2795
+ MPI_Comm comm)
2796
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2473
2797
  int PMPI_Exscan_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2474
2798
  MPI_Op op, MPI_Comm comm)
2475
2799
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2800
+ int PMPI_Exscan_init(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
2801
+ MPI_Op op, MPI_Comm comm, MPI_Info info, MPI_Request *request)
2802
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2803
+ int PMPI_Exscan_init_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2804
+ MPI_Op op, MPI_Comm comm, MPI_Info info, MPI_Request *request)
2805
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2806
+ int PMPI_Gather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2807
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
2808
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2476
2809
  int PMPI_Gather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2477
2810
  MPI_Count recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
2478
2811
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2812
+ int PMPI_Gather_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2813
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Info info,
2814
+ MPI_Request *request)
2815
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2816
+ int PMPI_Gather_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2817
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype, int root,
2818
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
2819
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2820
+ int PMPI_Gatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2821
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype, int root,
2822
+ MPI_Comm comm)
2823
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2479
2824
  int PMPI_Gatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2480
- const MPI_Count *recvcounts, const MPI_Aint *displs, MPI_Datatype recvtype, int root,
2481
- MPI_Comm comm)
2825
+ const MPI_Count recvcounts[], const MPI_Aint displs[], MPI_Datatype recvtype,
2826
+ int root, MPI_Comm comm)
2482
2827
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2483
- int PMPI_Iallgather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2484
- MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2828
+ int PMPI_Gatherv_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2829
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype, int root,
2830
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
2831
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2832
+ int PMPI_Gatherv_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2833
+ void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2834
+ MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Info info,
2835
+ MPI_Request *request)
2836
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2837
+ int PMPI_Iallgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2838
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2839
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2840
+ int PMPI_Iallgather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2841
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2485
2842
  MPI_Request *request)
2486
2843
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2487
- int PMPI_Iallgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2488
- const MPI_Count recvcounts[], const MPI_Aint displs[], MPI_Datatype recvtype,
2489
- MPI_Comm comm, MPI_Request *request)
2844
+ int PMPI_Iallgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2845
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype,
2846
+ MPI_Comm comm, MPI_Request *request)
2847
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2848
+ int PMPI_Iallgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2849
+ void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2850
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2490
2851
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2852
+ int PMPI_Iallreduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
2853
+ MPI_Comm comm, MPI_Request *request)
2854
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2491
2855
  int PMPI_Iallreduce_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2492
2856
  MPI_Op op, MPI_Comm comm, MPI_Request *request)
2493
2857
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2858
+ int PMPI_Ialltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2859
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2860
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2494
2861
  int PMPI_Ialltoall_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2495
2862
  MPI_Count recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2496
2863
  MPI_Request *request)
2497
2864
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2865
+ int PMPI_Ialltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
2866
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
2867
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
2868
+ MPI_Request *request)
2869
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2498
2870
  int PMPI_Ialltoallv_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint sdispls[],
2499
2871
  MPI_Datatype sendtype, void *recvbuf, const MPI_Count recvcounts[],
2500
2872
  const MPI_Aint rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
2501
2873
  MPI_Request *request)
2502
2874
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2875
+ int PMPI_Ialltoallw(const void *sendbuf, const int sendcounts[], const int sdispls[],
2876
+ const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
2877
+ const int rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm,
2878
+ MPI_Request *request) MPICH_API_PUBLIC;
2503
2879
  int PMPI_Ialltoallw_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint sdispls[],
2504
- const MPI_Datatype sendtypes[], void *recvbuf, const MPI_Count recvcounts[],
2505
- const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm,
2506
- MPI_Request *request) MPICH_API_PUBLIC;
2880
+ const MPI_Datatype sendtypes[], void *recvbuf, const MPI_Count recvcounts[],
2881
+ const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm,
2882
+ MPI_Request *request) MPICH_API_PUBLIC;
2883
+ int PMPI_Ibarrier(MPI_Comm comm, MPI_Request *request) MPICH_API_PUBLIC;
2884
+ int PMPI_Ibcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm,
2885
+ MPI_Request *request) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2507
2886
  int PMPI_Ibcast_c(void *buffer, MPI_Count count, MPI_Datatype datatype, int root, MPI_Comm comm,
2508
2887
  MPI_Request *request) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2888
+ int PMPI_Iexscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
2889
+ MPI_Comm comm, MPI_Request *request)
2890
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2509
2891
  int PMPI_Iexscan_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2510
2892
  MPI_Op op, MPI_Comm comm, MPI_Request *request)
2511
2893
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2894
+ int PMPI_Igather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2895
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm,
2896
+ MPI_Request *request)
2897
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2512
2898
  int PMPI_Igather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2513
2899
  MPI_Count recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm,
2514
2900
  MPI_Request *request)
2515
2901
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2902
+ int PMPI_Igatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2903
+ const int recvcounts[], const int displs[], MPI_Datatype recvtype, int root,
2904
+ MPI_Comm comm, MPI_Request *request)
2905
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2516
2906
  int PMPI_Igatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2517
- const MPI_Count recvcounts[], const MPI_Aint displs[], MPI_Datatype recvtype, int root,
2518
- MPI_Comm comm, MPI_Request *request)
2907
+ const MPI_Count recvcounts[], const MPI_Aint displs[], MPI_Datatype recvtype,
2908
+ int root, MPI_Comm comm, MPI_Request *request)
2519
2909
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2910
+ int PMPI_Ineighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
2911
+ void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2912
+ MPI_Request *request)
2913
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2520
2914
  int PMPI_Ineighbor_allgather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2521
2915
  void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2522
2916
  MPI_Comm comm, MPI_Request *request)
2523
2917
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2918
+ int PMPI_Ineighbor_allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
2919
+ void *recvbuf, const int recvcounts[], const int displs[],
2920
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2921
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2524
2922
  int PMPI_Ineighbor_allgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2525
- void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2526
- MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2527
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
2528
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2923
+ void *recvbuf, const MPI_Count recvcounts[],
2924
+ const MPI_Aint displs[], MPI_Datatype recvtype, MPI_Comm comm,
2925
+ MPI_Request *request)
2926
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2927
+ int PMPI_Ineighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
2928
+ void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm,
2929
+ MPI_Request *request)
2930
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2529
2931
  int PMPI_Ineighbor_alltoall_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2530
2932
  void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2531
2933
  MPI_Comm comm, MPI_Request *request)
2532
2934
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2935
+ int PMPI_Ineighbor_alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
2936
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
2937
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
2938
+ MPI_Request *request)
2939
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2533
2940
  int PMPI_Ineighbor_alltoallv_c(const void *sendbuf, const MPI_Count sendcounts[],
2534
2941
  const MPI_Aint sdispls[], MPI_Datatype sendtype, void *recvbuf,
2535
2942
  const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2536
2943
  MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *request)
2537
2944
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2945
+ int PMPI_Ineighbor_alltoallw(const void *sendbuf, const int sendcounts[], const MPI_Aint sdispls[],
2946
+ const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
2947
+ const MPI_Aint rdispls[], const MPI_Datatype recvtypes[],
2948
+ MPI_Comm comm, MPI_Request *request) MPICH_API_PUBLIC;
2538
2949
  int PMPI_Ineighbor_alltoallw_c(const void *sendbuf, const MPI_Count sendcounts[],
2539
2950
  const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
2540
- void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2541
- const MPI_Datatype recvtypes[], MPI_Comm comm, MPI_Request *request) MPICH_API_PUBLIC;
2951
+ void *recvbuf, const MPI_Count recvcounts[],
2952
+ const MPI_Aint rdispls[], const MPI_Datatype recvtypes[],
2953
+ MPI_Comm comm, MPI_Request *request) MPICH_API_PUBLIC;
2954
+ int PMPI_Ireduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
2955
+ int root, MPI_Comm comm, MPI_Request *request)
2956
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2542
2957
  int PMPI_Ireduce_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2543
2958
  MPI_Op op, int root, MPI_Comm comm, MPI_Request *request)
2544
2959
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2960
+ int PMPI_Ireduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[],
2961
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request)
2962
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2545
2963
  int PMPI_Ireduce_scatter_c(const void *sendbuf, void *recvbuf, const MPI_Count recvcounts[],
2546
2964
  MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *request)
2547
2965
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2966
+ int PMPI_Ireduce_scatter_block(const void *sendbuf, void *recvbuf, int recvcount,
2967
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm,
2968
+ MPI_Request *request)
2969
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2548
2970
  int PMPI_Ireduce_scatter_block_c(const void *sendbuf, void *recvbuf, MPI_Count recvcount,
2549
2971
  MPI_Datatype datatype, MPI_Op op, MPI_Comm comm,
2550
2972
  MPI_Request *request)
2551
2973
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2974
+ int PMPI_Iscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
2975
+ MPI_Comm comm, MPI_Request *request)
2976
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2552
2977
  int PMPI_Iscan_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2553
2978
  MPI_Op op, MPI_Comm comm, MPI_Request *request)
2554
2979
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2980
+ int PMPI_Iscatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
2981
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm,
2982
+ MPI_Request *request)
2983
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2555
2984
  int PMPI_Iscatter_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2556
2985
  MPI_Count recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm,
2557
2986
  MPI_Request *request)
2558
2987
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2988
+ int PMPI_Iscatterv(const void *sendbuf, const int sendcounts[], const int displs[],
2989
+ MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
2990
+ int root, MPI_Comm comm, MPI_Request *request)
2991
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
2559
2992
  int PMPI_Iscatterv_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint displs[],
2560
- MPI_Datatype sendtype, void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2561
- int root, MPI_Comm comm, MPI_Request *request)
2993
+ MPI_Datatype sendtype, void *recvbuf, MPI_Count recvcount,
2994
+ MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Request *request)
2562
2995
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
2996
+ int PMPI_Neighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
2997
+ void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
2998
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2563
2999
  int PMPI_Neighbor_allgather_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2564
3000
  void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2565
3001
  MPI_Comm comm)
2566
3002
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
3003
+ int PMPI_Neighbor_allgather_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
3004
+ void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm,
3005
+ MPI_Info info, MPI_Request *request)
3006
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
3007
+ int PMPI_Neighbor_allgather_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
3008
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
3009
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
3010
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
3011
+ int PMPI_Neighbor_allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
3012
+ void *recvbuf, const int recvcounts[], const int displs[],
3013
+ MPI_Datatype recvtype, MPI_Comm comm)
3014
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
2567
3015
  int PMPI_Neighbor_allgatherv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2568
3016
  void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint displs[],
2569
3017
  MPI_Datatype recvtype, MPI_Comm comm)
2570
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3)
2571
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
3018
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
3019
+ int PMPI_Neighbor_allgatherv_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
3020
+ void *recvbuf, const int recvcounts[], const int displs[],
3021
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
3022
+ MPI_Request *request)
3023
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
3024
+ int PMPI_Neighbor_allgatherv_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
3025
+ void *recvbuf, const MPI_Count recvcounts[],
3026
+ const MPI_Aint displs[], MPI_Datatype recvtype, MPI_Comm comm,
3027
+ MPI_Info info, MPI_Request *request)
3028
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,7) MPICH_API_PUBLIC;
3029
+ int PMPI_Neighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
3030
+ int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
3031
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2572
3032
  int PMPI_Neighbor_alltoall_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
2573
3033
  void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2574
3034
  MPI_Comm comm)
2575
3035
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
3036
+ int PMPI_Neighbor_alltoall_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
3037
+ void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm,
3038
+ MPI_Info info, MPI_Request *request)
3039
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
3040
+ int PMPI_Neighbor_alltoall_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
3041
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
3042
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
3043
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
3044
+ int PMPI_Neighbor_alltoallv(const void *sendbuf, const int sendcounts[], const int sdispls[],
3045
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
3046
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm)
3047
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2576
3048
  int PMPI_Neighbor_alltoallv_c(const void *sendbuf, const MPI_Count sendcounts[],
2577
3049
  const MPI_Aint sdispls[], MPI_Datatype sendtype, void *recvbuf,
2578
3050
  const MPI_Count recvcounts[], const MPI_Aint rdispls[],
2579
3051
  MPI_Datatype recvtype, MPI_Comm comm)
2580
3052
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
2581
- int PMPI_Neighbor_alltoallw_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint sdispls[],
2582
- const MPI_Datatype sendtypes[], void *recvbuf, const MPI_Count recvcounts[],
2583
- const MPI_Aint rdispls[], const MPI_Datatype recvtypes[], MPI_Comm comm) MPICH_API_PUBLIC;
3053
+ int PMPI_Neighbor_alltoallv_init(const void *sendbuf, const int sendcounts[], const int sdispls[],
3054
+ MPI_Datatype sendtype, void *recvbuf, const int recvcounts[],
3055
+ const int rdispls[], MPI_Datatype recvtype, MPI_Comm comm,
3056
+ MPI_Info info, MPI_Request *request)
3057
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
3058
+ int PMPI_Neighbor_alltoallv_init_c(const void *sendbuf, const MPI_Count sendcounts[],
3059
+ const MPI_Aint sdispls[], MPI_Datatype sendtype, void *recvbuf,
3060
+ const MPI_Count recvcounts[], const MPI_Aint rdispls[],
3061
+ MPI_Datatype recvtype, MPI_Comm comm, MPI_Info info,
3062
+ MPI_Request *request)
3063
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,8) MPICH_API_PUBLIC;
3064
+ int PMPI_Neighbor_alltoallw(const void *sendbuf, const int sendcounts[], const MPI_Aint sdispls[],
3065
+ const MPI_Datatype sendtypes[], void *recvbuf, const int recvcounts[],
3066
+ const MPI_Aint rdispls[], const MPI_Datatype recvtypes[],
3067
+ MPI_Comm comm) MPICH_API_PUBLIC;
3068
+ int PMPI_Neighbor_alltoallw_c(const void *sendbuf, const MPI_Count sendcounts[],
3069
+ const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
3070
+ void *recvbuf, const MPI_Count recvcounts[], const MPI_Aint rdispls[],
3071
+ const MPI_Datatype recvtypes[], MPI_Comm comm) MPICH_API_PUBLIC;
3072
+ int PMPI_Neighbor_alltoallw_init(const void *sendbuf, const int sendcounts[],
3073
+ const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
3074
+ void *recvbuf, const int recvcounts[], const MPI_Aint rdispls[],
3075
+ const MPI_Datatype recvtypes[], MPI_Comm comm, MPI_Info info,
3076
+ MPI_Request *request) MPICH_API_PUBLIC;
3077
+ int PMPI_Neighbor_alltoallw_init_c(const void *sendbuf, const MPI_Count sendcounts[],
3078
+ const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
3079
+ void *recvbuf, const MPI_Count recvcounts[],
3080
+ const MPI_Aint rdispls[], const MPI_Datatype recvtypes[],
3081
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
3082
+ MPICH_API_PUBLIC;
3083
+ int PMPI_Reduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
3084
+ int root, MPI_Comm comm)
3085
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2584
3086
  int PMPI_Reduce_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2585
3087
  MPI_Op op, int root, MPI_Comm comm)
2586
3088
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3089
+ int PMPI_Reduce_init(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
3090
+ MPI_Op op, int root, MPI_Comm comm, MPI_Info info, MPI_Request *request)
3091
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3092
+ int PMPI_Reduce_init_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
3093
+ MPI_Op op, int root, MPI_Comm comm, MPI_Info info, MPI_Request *request)
3094
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3095
+ int PMPI_Reduce_local(const void *inbuf, void *inoutbuf, int count, MPI_Datatype datatype,
3096
+ MPI_Op op)
3097
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3098
+ int PMPI_Reduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[],
3099
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
3100
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3101
+ int PMPI_Reduce_scatter_c(const void *sendbuf, void *recvbuf, const MPI_Count recvcounts[],
3102
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
3103
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3104
+ int PMPI_Reduce_scatter_block(const void *sendbuf, void *recvbuf, int recvcount,
3105
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
3106
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2587
3107
  int PMPI_Reduce_scatter_block_c(const void *sendbuf, void *recvbuf, MPI_Count recvcount,
2588
3108
  MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
2589
3109
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3110
+ int PMPI_Reduce_scatter_block_init(const void *sendbuf, void *recvbuf, int recvcount,
3111
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Info info,
3112
+ MPI_Request *request)
3113
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3114
+ int PMPI_Reduce_scatter_block_init_c(const void *sendbuf, void *recvbuf, MPI_Count recvcount,
3115
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Info info,
3116
+ MPI_Request *request)
3117
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3118
+ int PMPI_Reduce_scatter_init(const void *sendbuf, void *recvbuf, const int recvcounts[],
3119
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Info info,
3120
+ MPI_Request *request)
3121
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3122
+ int PMPI_Reduce_scatter_init_c(const void *sendbuf, void *recvbuf, const MPI_Count recvcounts[],
3123
+ MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Info info,
3124
+ MPI_Request *request)
3125
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3126
+ int PMPI_Scan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
3127
+ MPI_Comm comm)
3128
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
2590
3129
  int PMPI_Scan_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
2591
3130
  MPI_Op op, MPI_Comm comm)
2592
3131
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3132
+ int PMPI_Scan_init(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
3133
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
3134
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3135
+ int PMPI_Scan_init_c(const void *sendbuf, void *recvbuf, MPI_Count count, MPI_Datatype datatype,
3136
+ MPI_Op op, MPI_Comm comm, MPI_Info info, MPI_Request *request)
3137
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
3138
+ int PMPI_Scatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
3139
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
3140
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2593
3141
  int PMPI_Scatter_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, void *recvbuf,
2594
3142
  MPI_Count recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm)
2595
3143
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
2596
- int PMPI_Scatterv_c(const void *sendbuf, const MPI_Count *sendcounts, const MPI_Aint *displs,
2597
- MPI_Datatype sendtype, void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2598
- int root, MPI_Comm comm)
3144
+ int PMPI_Scatter_init(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
3145
+ int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Info info,
3146
+ MPI_Request *request)
3147
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
3148
+ int PMPI_Scatter_init_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype,
3149
+ void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype, int root,
3150
+ MPI_Comm comm, MPI_Info info, MPI_Request *request)
3151
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
3152
+ int PMPI_Scatterv(const void *sendbuf, const int sendcounts[], const int displs[],
3153
+ MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
3154
+ int root, MPI_Comm comm)
3155
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
3156
+ int PMPI_Scatterv_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint displs[],
3157
+ MPI_Datatype sendtype, void *recvbuf, MPI_Count recvcount,
3158
+ MPI_Datatype recvtype, int root, MPI_Comm comm)
2599
3159
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
2600
-
2601
- int MPI_Bsend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2602
- MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2603
- int MPI_Bsend_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2604
- MPI_Comm comm, MPI_Request *request)
2605
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2606
- int MPI_Buffer_attach_c(void *buffer, MPI_Count size) MPICH_API_PUBLIC;
2607
- int MPI_Buffer_detach_c(void *buffer_addr, MPI_Count *size) MPICH_API_PUBLIC;
2608
- int MPI_Ibsend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2609
- MPI_Comm comm, MPI_Request *request)
2610
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2611
- int MPI_Imrecv_c(void *buf, MPI_Count count, MPI_Datatype datatype, MPI_Message *message,
2612
- MPI_Request *request) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2613
- int MPI_Irecv_c(void *buf, MPI_Count count, MPI_Datatype datatype, int source, int tag,
2614
- MPI_Comm comm, MPI_Request *request)
2615
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2616
- int MPI_Irsend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2617
- MPI_Comm comm, MPI_Request *request)
2618
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2619
- int MPI_Isend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2620
- MPI_Comm comm, MPI_Request *request)
2621
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2622
- int MPI_Issend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2623
- MPI_Comm comm, MPI_Request *request)
2624
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2625
- int MPI_Mrecv_c(void *buf, MPI_Count count, MPI_Datatype datatype, MPI_Message *message,
2626
- MPI_Status *status) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2627
- int MPI_Recv_c(void *buf, MPI_Count count, MPI_Datatype datatype, int source, int tag,
2628
- MPI_Comm comm, MPI_Status *status)
2629
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2630
- int MPI_Recv_init_c(void *buf, MPI_Count count, MPI_Datatype datatype, int source, int tag,
2631
- MPI_Comm comm, MPI_Request *request)
2632
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2633
- int MPI_Rsend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2634
- MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2635
- int MPI_Rsend_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2636
- MPI_Comm comm, MPI_Request *request)
2637
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2638
- int MPI_Send_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2639
- MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2640
- int MPI_Send_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2641
- MPI_Comm comm, MPI_Request *request)
2642
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2643
- int MPI_Sendrecv_c(const void *sendbuf, MPI_Count sendcount, MPI_Datatype sendtype, int dest,
2644
- int sendtag, void *recvbuf, MPI_Count recvcount, MPI_Datatype recvtype,
2645
- int source, int recvtag, MPI_Comm comm, MPI_Status *status)
2646
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(6,8) MPICH_API_PUBLIC;
2647
- int MPI_Sendrecv_replace_c(void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int sendtag,
2648
- int source, int recvtag, MPI_Comm comm, MPI_Status *status)
2649
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2650
- int MPI_Ssend_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2651
- MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2652
- int MPI_Ssend_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag,
2653
- MPI_Comm comm, MPI_Request *request)
2654
- MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
3160
+ int PMPI_Scatterv_init(const void *sendbuf, const int sendcounts[], const int displs[],
3161
+ MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
3162
+ int root, MPI_Comm comm, MPI_Info info, MPI_Request *request)
3163
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
3164
+ int PMPI_Scatterv_init_c(const void *sendbuf, const MPI_Count sendcounts[], const MPI_Aint displs[],
3165
+ MPI_Datatype sendtype, void *recvbuf, MPI_Count recvcount,
3166
+ MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Info info,
3167
+ MPI_Request *request)
3168
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(5,7) MPICH_API_PUBLIC;
2655
3169
 
2656
3170
  int PMPI_Bsend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm)
2657
3171
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
@@ -2763,6 +3277,116 @@ int PMPI_Ssend_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, i
2763
3277
  MPI_Comm comm, MPI_Request *request)
2764
3278
  MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2765
3279
 
3280
+ int PMPI_Get_count_c(const MPI_Status *status, MPI_Datatype datatype, MPI_Count *count)
3281
+ MPICH_API_PUBLIC;
3282
+ int PMPI_Get_elements_c(const MPI_Status *status, MPI_Datatype datatype, MPI_Count *count)
3283
+ MPICH_API_PUBLIC;
3284
+ int PMPI_Get_elements_x(const MPI_Status *status, MPI_Datatype datatype, MPI_Count *count)
3285
+ MPICH_API_PUBLIC;
3286
+ int PMPI_Pack_c(const void *inbuf, MPI_Count incount, MPI_Datatype datatype, void *outbuf,
3287
+ MPI_Count outsize, MPI_Count *position, MPI_Comm comm) MPICH_API_PUBLIC;
3288
+ int PMPI_Pack_external_c(const char *datarep, const void *inbuf, MPI_Count incount,
3289
+ MPI_Datatype datatype, void *outbuf, MPI_Count outsize,
3290
+ MPI_Count *position) MPICH_API_PUBLIC;
3291
+ int PMPI_Pack_external_size_c(const char *datarep, MPI_Count incount, MPI_Datatype datatype,
3292
+ MPI_Count *size) MPICH_API_PUBLIC;
3293
+ int PMPI_Pack_size_c(MPI_Count incount, MPI_Datatype datatype, MPI_Comm comm, MPI_Count *size)
3294
+ MPICH_API_PUBLIC;
3295
+ int PMPI_Status_set_elements_c(MPI_Status *status, MPI_Datatype datatype, MPI_Count count)
3296
+ MPICH_API_PUBLIC;
3297
+ int PMPI_Type_contiguous_c(MPI_Count count, MPI_Datatype oldtype, MPI_Datatype *newtype)
3298
+ MPICH_API_PUBLIC;
3299
+ int PMPI_Type_create_darray_c(int size, int rank, int ndims, const MPI_Count array_of_gsizes[],
3300
+ const int array_of_distribs[], const int array_of_dargs[],
3301
+ const int array_of_psizes[], int order, MPI_Datatype oldtype,
3302
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
3303
+ int PMPI_Type_create_hindexed_c(MPI_Count count, const MPI_Count array_of_blocklengths[],
3304
+ const MPI_Count array_of_displacements[], MPI_Datatype oldtype,
3305
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
3306
+ int PMPI_Type_create_hindexed_block_c(MPI_Count count, MPI_Count blocklength,
3307
+ const MPI_Count array_of_displacements[],
3308
+ MPI_Datatype oldtype, MPI_Datatype *newtype)
3309
+ MPICH_API_PUBLIC;
3310
+ int PMPI_Type_create_hvector_c(MPI_Count count, MPI_Count blocklength, MPI_Count stride,
3311
+ MPI_Datatype oldtype, MPI_Datatype *newtype) MPICH_API_PUBLIC;
3312
+ int PMPI_Type_create_indexed_block_c(MPI_Count count, MPI_Count blocklength,
3313
+ const MPI_Count array_of_displacements[], MPI_Datatype oldtype,
3314
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
3315
+ int PMPI_Type_create_resized_c(MPI_Datatype oldtype, MPI_Count lb, MPI_Count extent,
3316
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
3317
+ int PMPI_Type_create_struct_c(MPI_Count count, const MPI_Count array_of_blocklengths[],
3318
+ const MPI_Count array_of_displacements[],
3319
+ const MPI_Datatype array_of_types[], MPI_Datatype *newtype)
3320
+ MPICH_API_PUBLIC;
3321
+ int PMPI_Type_create_subarray_c(int ndims, const MPI_Count array_of_sizes[],
3322
+ const MPI_Count array_of_subsizes[],
3323
+ const MPI_Count array_of_starts[], int order, MPI_Datatype oldtype,
3324
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
3325
+ int PMPI_Type_get_contents_c(MPI_Datatype datatype, MPI_Count max_integers, MPI_Count max_addresses,
3326
+ MPI_Count max_large_counts, MPI_Count max_datatypes,
3327
+ int array_of_integers[], MPI_Aint array_of_addresses[],
3328
+ MPI_Count array_of_large_counts[], MPI_Datatype array_of_datatypes[])
3329
+ MPICH_API_PUBLIC;
3330
+ int PMPI_Type_get_envelope_c(MPI_Datatype datatype, MPI_Count *num_integers,
3331
+ MPI_Count *num_addresses, MPI_Count *num_large_counts,
3332
+ MPI_Count *num_datatypes, int *combiner) MPICH_API_PUBLIC;
3333
+ int PMPI_Type_get_extent_c(MPI_Datatype datatype, MPI_Count *lb, MPI_Count *extent)
3334
+ MPICH_API_PUBLIC;
3335
+ int PMPI_Type_get_true_extent_c(MPI_Datatype datatype, MPI_Count *true_lb, MPI_Count *true_extent)
3336
+ MPICH_API_PUBLIC;
3337
+ int PMPI_Type_indexed_c(MPI_Count count, const MPI_Count array_of_blocklengths[],
3338
+ const MPI_Count array_of_displacements[], MPI_Datatype oldtype,
3339
+ MPI_Datatype *newtype) MPICH_API_PUBLIC;
3340
+ int PMPI_Type_size_c(MPI_Datatype datatype, MPI_Count *size) MPICH_API_PUBLIC;
3341
+ int PMPI_Type_vector_c(MPI_Count count, MPI_Count blocklength, MPI_Count stride,
3342
+ MPI_Datatype oldtype, MPI_Datatype *newtype) MPICH_API_PUBLIC;
3343
+ int PMPI_Unpack_c(const void *inbuf, MPI_Count insize, MPI_Count *position, void *outbuf,
3344
+ MPI_Count outcount, MPI_Datatype datatype, MPI_Comm comm) MPICH_API_PUBLIC;
3345
+ int PMPI_Unpack_external_c(const char datarep[], const void *inbuf, MPI_Count insize,
3346
+ MPI_Count *position, void *outbuf, MPI_Count outcount,
3347
+ MPI_Datatype datatype) MPICH_API_PUBLIC;
3348
+
3349
+ int PMPI_Win_allocate_c(MPI_Aint size, MPI_Aint disp_unit, MPI_Info info, MPI_Comm comm,
3350
+ void *baseptr, MPI_Win *win) MPICH_API_PUBLIC;
3351
+ int PMPI_Win_create_c(void *base, MPI_Aint size, MPI_Aint disp_unit, MPI_Info info, MPI_Comm comm,
3352
+ MPI_Win *win) MPICH_API_PUBLIC;
3353
+ int PMPI_Win_shared_query_c(MPI_Win win, int rank, MPI_Aint *size, MPI_Aint *disp_unit,
3354
+ void *baseptr) MPICH_API_PUBLIC;
3355
+ int PMPI_Win_allocate_shared_c(MPI_Aint size, MPI_Aint disp_unit, MPI_Info info, MPI_Comm comm,
3356
+ void *baseptr, MPI_Win *win) MPICH_API_PUBLIC;
3357
+ int PMPI_Get_c(void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
3358
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
3359
+ MPI_Datatype target_datatype, MPI_Win win)
3360
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
3361
+ int PMPI_Get_accumulate_c(const void *origin_addr, MPI_Count origin_count,
3362
+ MPI_Datatype origin_datatype, void *result_addr, MPI_Count result_count,
3363
+ MPI_Datatype result_datatype, int target_rank, MPI_Aint target_disp,
3364
+ MPI_Count target_count, MPI_Datatype target_datatype, MPI_Op op,
3365
+ MPI_Win win)
3366
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
3367
+ int PMPI_Put_c(const void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
3368
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
3369
+ MPI_Datatype target_datatype, MPI_Win win)
3370
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
3371
+ int PMPI_Raccumulate_c(const void *origin_addr, MPI_Count origin_count,
3372
+ MPI_Datatype origin_datatype, int target_rank, MPI_Aint target_disp,
3373
+ MPI_Count target_count, MPI_Datatype target_datatype, MPI_Op op, MPI_Win win,
3374
+ MPI_Request *request)
3375
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
3376
+ int PMPI_Rget_c(void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
3377
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
3378
+ MPI_Datatype target_datatype, MPI_Win win, MPI_Request *request)
3379
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
3380
+ int PMPI_Rget_accumulate_c(const void *origin_addr, MPI_Count origin_count,
3381
+ MPI_Datatype origin_datatype, void *result_addr, MPI_Count result_count,
3382
+ MPI_Datatype result_datatype, int target_rank, MPI_Aint target_disp,
3383
+ MPI_Count target_count, MPI_Datatype target_datatype, MPI_Op op,
3384
+ MPI_Win win, MPI_Request *request)
3385
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
3386
+ int PMPI_Rput_c(const void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
3387
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
3388
+ MPI_Datatype target_datatype, MPI_Win win, MPI_Request *request)
3389
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
2766
3390
  #endif /* MPI_BUILD_PROFILING */
2767
3391
  /* End of MPI bindings */
2768
3392
 
@@ -2780,6 +3404,18 @@ int PMPI_Ssend_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, i
2780
3404
 
2781
3405
  #include "mpio.h"
2782
3406
 
3407
+ /* GPU extensions */
3408
+ #define MPIX_GPU_SUPPORT_CUDA (0)
3409
+ #define MPIX_GPU_SUPPORT_ZE (1)
3410
+ #define MPIX_GPU_SUPPORT_DEVICE_INITIATED (3)
3411
+ int MPIX_GPU_query_support(int gpu_type, int *is_supported) MPICH_API_PUBLIC;
3412
+ int MPIX_Query_cuda_support(void) MPICH_API_PUBLIC;
3413
+ int MPIX_Query_ze_support(void) MPICH_API_PUBLIC;
3414
+ #ifdef MPI_BUILD_PROFILING
3415
+ int PMPIX_GPU_query_support(int gpu_type, int *is_supported) MPICH_API_PUBLIC;
3416
+ int PMPIX_Query_cuda_support(void) MPICH_API_PUBLIC;
3417
+ int PMPIX_Query_ze_support(void) MPICH_API_PUBLIC;
3418
+ #endif
2783
3419
  #if defined(__cplusplus)
2784
3420
  }
2785
3421
  /* Add the C++ bindings */
@@ -2798,7 +3434,6 @@ int PMPI_Ssend_init_c(const void *buf, MPI_Count count, MPI_Datatype datatype, i
2798
3434
  #endif
2799
3435
  #endif
2800
3436
 
2801
-
2802
3437
  /* Generalized requests extensions */
2803
3438
  typedef int MPIX_Grequest_class;
2804
3439
  int MPIX_Grequest_class_create(MPI_Grequest_query_function *query_fn,