PULSAR  2.0.0
Parallel Ultra-Light Systolic Array Runtime
 All Data Structures Files Functions Typedefs Enumerations Macros Groups
mpi_stubs.h
Go to the documentation of this file.
1 
11 #ifndef MPI_STUBS_H
12 #define MPI_STUBS_H
13 
14 #ifndef MPI
15 
16 #include <stdio.h>
17 #include <stdlib.h>
18 
19 #define MPI_STATUS_IGNORE NULL
20 
21 typedef int MPI_Op;
22 typedef int MPI_Comm;
23 typedef int MPI_Datatype;
24 
25 typedef struct {
26  int MPI_TAG;
27  int MPI_SOURCE;
28 } MPI_Status;
29 
30 typedef struct {
31 } MPI_Request;
32 
33 enum {MPI_BYTE, MPI_INT, MPI_DOUBLE, MPI_ANY_SOURCE, MPI_ANY_TAG, MPI_MAX, MPI_SUCCESS, MPI_COMM_WORLD};
34 
35 #ifdef __cplusplus
36 extern "C" {
37 #endif
38 
39 int MPI_Initialized(int *flag);
40 int MPI_Barrier(MPI_Comm comm);
41 int MPI_Cancel(MPI_Request *request);
42 int MPI_Abort(MPI_Comm comm, int errorcode);
43 int MPI_Comm_rank(MPI_Comm comm, int *rank);
44 int MPI_Comm_size(MPI_Comm comm, int *size);
45 int MPI_Test(MPI_Request *request, int *flag, MPI_Status *status);
46 int MPI_Get_count(const MPI_Status *status, MPI_Datatype datatype, int *count);
47 int MPI_Send(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm);
48 int MPI_Recv(void *buf, int count, MPI_Datatype datatype, int source, int tag, MPI_Comm comm, MPI_Status *status);
49 int MPI_Irecv(void *buf, int count, MPI_Datatype datatype, int source, int tag, MPI_Comm comm, MPI_Request *request);
50 int MPI_Isend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request);
51 int MPI_Reduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, int root, MPI_Comm comm);
52 
53 #ifdef __cplusplus
54 }
55 #endif
56 
57 #endif /* MPI */
58 
59 #endif /* MPI_STUBS_H */