Skip to content

Instantly share code, notes, and snippets.

@minrk
Created November 4, 2024 10:46
Show Gist options
  • Save minrk/97e80a134d72ee3c9085afa6e4302d66 to your computer and use it in GitHub Desktop.
Save minrk/97e80a134d72ee3c9085afa6e4302d66 to your computer and use it in GitHub Desktop.
diff --color -u impi-devel-2021.12.0-h57928b3_537/Library/include/mpi.h impi-devel-2021.13.1-h57928b3_767/Library/include/mpi.h
--- impi-devel-2021.12.0-h57928b3_537/Library/include/mpi.h 2024-02-14 01:18:00
+++ impi-devel-2021.13.1-h57928b3_767/Library/include/mpi.h 2024-07-02 05:37:19
@@ -261,6 +261,7 @@
#define MPI_C_LONG_DOUBLE_COMPLEX ((MPI_Datatype)0x4c001042)
/* other extension types */
#define MPIX_C_FLOAT16 ((MPI_Datatype)MPI_DATATYPE_NULL)
+#define MPIX_C_BF16 ((MPI_Datatype)MPI_DATATYPE_NULL)
#ifdef MPICH_DEFINE_ATTR_TYPE_TYPES
static const MPI_Datatype mpich_mpi_c_bool MPICH_ATTR_TYPE_TAG_C99(_Bool) = MPI_C_BOOL;
@@ -476,8 +477,24 @@
/* MPI message objects for Mprobe and related functions */
typedef int MPI_Message;
+/* Definitions that are determined by configure. */
+#ifdef MPI_AINT64_TYPE
+#undef MPI_AINT64_TYPE
+#endif
+#if defined(USE_GCC) || defined(__GNUC__)
+#define MPI_AINT64_TYPE long long
+#else
+#define MPI_AINT64_TYPE __int64
+#endif
+typedef MPI_AINT64_TYPE MPI_Aint;
+#undef MPI_AINT64_TYPE
+
+typedef int MPI_Fint;
+typedef long long MPI_Count;
+
/* User combination function */
typedef void (MPI_User_function) ( void *, void *, int *, MPI_Datatype * );
+typedef void (MPI_User_function_c) ( void *, void *, MPI_Count *, MPI_Datatype * );
/* MPI Attribute copy and delete functions */
typedef int (MPI_Copy_function) ( MPI_Comm, int, void *, void *, void *, int * );
@@ -548,8 +565,8 @@
* digits for REV, 1 digit for EXT and 2 digits for EXT_NUMBER. So,
* 2019.0.0b0 will have the numeric version 20190000100.
*/
-#define I_MPI_VERSION "2021.12.0"
-#define I_MPI_NUMVERSION 20211200300
+#define I_MPI_VERSION "2021.13.1"
+#define I_MPI_NUMVERSION 20211301300
/* for the datatype decoders */
enum MPIR_Combiner_enum {
@@ -606,21 +623,6 @@
#define MPI_COMM_TYPE_HW_GUIDED 3
-/* Definitions that are determined by configure. */
-#ifdef MPI_AINT64_TYPE
-#undef MPI_AINT64_TYPE
-#endif
-#if defined(USE_GCC) || defined(__GNUC__)
-#define MPI_AINT64_TYPE long long
-#else
-#define MPI_AINT64_TYPE __int64
-#endif
-typedef MPI_AINT64_TYPE MPI_Aint;
-#undef MPI_AINT64_TYPE
-
-typedef int MPI_Fint;
-typedef long long MPI_Count;
-
#ifdef MPICH_DEFINE_ATTR_TYPE_TYPES
static const MPI_Datatype mpich_mpi_aint MPICH_ATTR_TYPE_TAG(MPI_Aint) = MPI_AINT;
#endif
@@ -1104,6 +1106,7 @@
MPI_Datatype datatype, MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
int MPI_Pack_size(int incount, MPI_Datatype datatype, MPI_Comm comm, int *size) MPICH_API_PUBLIC;
int MPI_Op_create(MPI_User_function *user_fn, int commute, MPI_Op *op) MPICH_API_PUBLIC;
+int MPI_Op_create_c(MPI_User_function_c *user_fn, int commute, MPI_Op *op) MPICH_API_PUBLIC;
int MPI_Op_free(MPI_Op *op) MPICH_API_PUBLIC;
int MPI_Allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
@@ -1305,6 +1308,9 @@
int MPI_Reduce_local(const void *inbuf, void *inoutbuf, int count, MPI_Datatype datatype,
MPI_Op op)
MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
+int MPI_Reduce_local_c(const void *inbuf, void *inoutbuf, MPI_Count count, MPI_Datatype datatype,
+ MPI_Op op)
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
int MPI_Reduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[],
MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
@@ -1447,6 +1453,20 @@
int MPI_Put(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
int target_rank, MPI_Aint target_disp, int target_count,
MPI_Datatype target_datatype, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
+
+int MPIX_Get_notify(void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
+ int target_rank, MPI_Aint target_disp, int target_count,
+ MPI_Datatype target_datatype, int notification_idx, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
+int MPIX_Put_notify(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
+ int target_rank, MPI_Aint target_disp, int target_count,
+ MPI_Datatype target_datatype, int notification_idx, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
+
+int MPIX_Get_notify_c(void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
+ MPI_Datatype target_datatype, int notification_idx, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
+int MPIX_Put_notify_c(const void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
+ MPI_Datatype target_datatype, int notification_idx, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
int MPI_Win_complete(MPI_Win win) MPICH_API_PUBLIC;
int MPI_Win_create(void *base, MPI_Aint size, int disp_unit, MPI_Info info, MPI_Comm comm,
MPI_Win *win) MPICH_API_PUBLIC;
@@ -1524,6 +1544,13 @@
int MPI_Win_flush_local(int rank, MPI_Win win) MPICH_API_PUBLIC;
int MPI_Win_flush_local_all(MPI_Win win) MPICH_API_PUBLIC;
int MPI_Win_sync(MPI_Win win) MPICH_API_PUBLIC;
+
+/* MPI notification extentions */
+int MPIX_Win_create_notify(MPI_Win win, int notification_num) MPICH_API_PUBLIC;
+int MPIX_Win_free_notify(MPI_Win win) MPICH_API_PUBLIC;
+int MPIX_Win_get_notify(MPI_Win win, int notification_idx, MPI_Count *notification) MPICH_API_PUBLIC;
+int MPIX_Win_set_notify(MPI_Win win, int notification_idx, MPI_Count notification) MPICH_API_PUBLIC;
+int MPIX_Win_get_notify_request(MPI_Win win, int notification_idx, MPI_Count expected_value, MPI_Request *request) MPICH_API_PUBLIC;
/* External Interfaces */
int MPI_Add_error_class(int *errorclass) MPICH_API_PUBLIC;
@@ -1852,6 +1879,7 @@
MPI_Datatype datatype, MPI_Comm comm) MPICH_ATTR_POINTER_WITH_TYPE_TAG(4,6) MPICH_API_PUBLIC;
int PMPI_Pack_size(int incount, MPI_Datatype datatype, MPI_Comm comm, int *size) MPICH_API_PUBLIC;
int PMPI_Op_create(MPI_User_function *user_fn, int commute, MPI_Op *op) MPICH_API_PUBLIC;
+int PMPI_Op_create_c(MPI_User_function_c *user_fn, int commute, MPI_Op *op) MPICH_API_PUBLIC;
int PMPI_Op_free(MPI_Op *op) MPICH_API_PUBLIC;
int PMPI_Group_size(MPI_Group group, int *size) MPICH_API_PUBLIC;
int PMPI_Group_rank(MPI_Group group, int *rank) MPICH_API_PUBLIC;
@@ -1957,6 +1985,21 @@
int PMPI_Put(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
int target_rank, MPI_Aint target_disp, int target_count,
MPI_Datatype target_datatype, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
+
+int PMPIX_Get_notify(void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
+ int target_rank, MPI_Aint target_disp, int target_count,
+ MPI_Datatype target_datatype, int notification_idx, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
+int PMPIX_Put_notify(const void *origin_addr, int origin_count, MPI_Datatype origin_datatype,
+ int target_rank, MPI_Aint target_disp, int target_count,
+ MPI_Datatype target_datatype, int notification_idx, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
+
+int PMPIX_Get_notify_c(void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
+ MPI_Datatype target_datatype, int notification_idx, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
+int PMPIX_Put_notify_c(const void *origin_addr, MPI_Count origin_count, MPI_Datatype origin_datatype,
+ int target_rank, MPI_Aint target_disp, MPI_Count target_count,
+ MPI_Datatype target_datatype, int notification_idx, MPI_Win win) MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,3) MPICH_API_PUBLIC;
+
int PMPI_Win_complete(MPI_Win win) MPICH_API_PUBLIC;
int PMPI_Win_create(void *base, MPI_Aint size, int disp_unit, MPI_Info info, MPI_Comm comm,
MPI_Win *win) MPICH_API_PUBLIC;
@@ -2026,7 +2069,13 @@
int PMPI_Win_flush_local(int rank, MPI_Win win) MPICH_API_PUBLIC;
int PMPI_Win_flush_local_all(MPI_Win win) MPICH_API_PUBLIC;
int PMPI_Win_sync(MPI_Win win) MPICH_API_PUBLIC;
-
+
+/* MPI notification extentions */
+int PMPIX_Win_create_notify(MPI_Win win, int notification_num) MPICH_API_PUBLIC;
+int PMPIX_Win_free_notify(MPI_Win win) MPICH_API_PUBLIC;
+int PMPIX_Win_get_notify(MPI_Win win, int notification_idx, MPI_Count *notification) MPICH_API_PUBLIC;
+int PMPIX_Win_set_notify(MPI_Win win, int notification_idx, MPI_Count notification) MPICH_API_PUBLIC;
+int PMPIX_Win_get_notify_request(MPI_Win win, int notification_idx, MPI_Count expected_value, MPI_Request *request) MPICH_API_PUBLIC;
/* External Interfaces */
int PMPI_Add_error_class(int *errorclass) MPICH_API_PUBLIC;
int PMPI_Add_error_code(int errorclass, int *errorcode) MPICH_API_PUBLIC;
@@ -2154,6 +2203,9 @@
int PMPI_Reduce_local(const void *inbuf, void *inoutbuf, int count, MPI_Datatype datatype,
MPI_Op op)
MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
+int PMPI_Reduce_local_c(const void *inbuf, void *inoutbuf, MPI_Count count, MPI_Datatype datatype,
+ MPI_Op op)
+ MPICH_ATTR_POINTER_WITH_TYPE_TAG(1,4) MPICH_ATTR_POINTER_WITH_TYPE_TAG(2,4) MPICH_API_PUBLIC;
int PMPI_Op_commutative(MPI_Op op, int *commute) MPICH_API_PUBLIC;
int PMPI_Reduce_scatter_block(const void *sendbuf, void *recvbuf, int recvcount,
MPI_Datatype datatype, MPI_Op op, MPI_Comm comm)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment