#define MPI_ERR_GROUP 10
#define MPI_ERR_OP 11
#define MPI_ERR_OTHER 12
+#define MPI_ERR_IN_STATUS 13
+#define MPI_ERR_PENDING 14
#define MPI_IDENT 0
#define MPI_SIMILAR 1
#define MPI_UNEQUAL 2
#define MPI_TAG_UB 1000000
#define MPI_HOST 0
#define MPI_IO 0
+#define MPI_BSEND_OVERHEAD 0
+
+typedef enum MPIR_Topo_type {
+ MPI_GRAPH=1,
+ MPI_CART=2,
+ MPI_DIST_GRAPH=3
+} MPIR_Topo_type;
typedef ptrdiff_t MPI_Aint;
typedef long long MPI_Offset;
typedef int MPI_Delete_function(MPI_Comm comm, int keyval, void* attribute_val, void* extra_state);
XBT_PUBLIC(MPI_Datatype) MPI_PACKED;
+XBT_PUBLIC(MPI_Errhandler*) MPI_ERRORS_RETURN;
+XBT_PUBLIC(MPI_Errhandler*) MPI_ERRORS_ARE_FATAL;
+XBT_PUBLIC(MPI_Errhandler*) MPI_ERRHANDLER_NULL;
+
+
MPI_CALL(XBT_PUBLIC(int), MPI_Pack_size, (int incount, MPI_Datatype datatype, MPI_Comm comm, int* size));
MPI_CALL(XBT_PUBLIC(int), MPI_Cart_coords, (MPI_Comm comm, int rank, int maxdims, int* coords));
MPI_CALL(XBT_PUBLIC(int), MPI_Cart_create, (MPI_Comm comm_old, int ndims, int* dims, int* periods, int reorder, MPI_Comm* comm_cart));
MPI_Comm MPI_COMM_WORLD = MPI_COMM_NULL;
+MPI_Errhandler* MPI_ERRORS_RETURN = NULL;
+MPI_Errhandler* MPI_ERRORS_ARE_FATAL = NULL;
+MPI_Errhandler* MPI_ERRHANDLER_NULL = NULL;
+
#define MAILBOX_NAME_MAXLEN (5 + sizeof(int) * 2 + 1)
static char* get_mailbox_name(char* str, int index) {
smpi_bench_begin();
return retval;}
+int PMPI_Error_class(int errorcode, int* errorclass) {
+ // assume smpi uses only standard mpi error codes
+ *errorclass=errorcode;
+ return MPI_SUCCESS;
+}
/* The following calls are not yet implemented and will fail at runtime. */
/* Once implemented, please move them above this notice. */
return not_yet_implemented();
}
-int PMPI_Error_class(int errorcode, int* errorclass) {
- return not_yet_implemented();
-}
-
int PMPI_Errhandler_create(MPI_Handler_function* function, MPI_Errhandler* errhandler) {
return not_yet_implemented();
}