A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
updated to use branching-tree broadcast instead of for-loop.
[simgrid.git]
/
src
/
smpi
/
private.h
diff --git
a/src/smpi/private.h
b/src/smpi/private.h
index
804ea9e
..
1a8c584
100644
(file)
--- a/
src/smpi/private.h
+++ b/
src/smpi/private.h
@@
-44,13
+44,15
@@
typedef struct smpi_mpi_request_t {
smx_mutex_t mutex;
smx_cond_t cond;
smx_mutex_t mutex;
smx_cond_t cond;
+
+ void *data;
+ int forward;
+
} s_smpi_mpi_request_t;
// smpi mpi op
} s_smpi_mpi_request_t;
// smpi mpi op
-// FIXME: type should be (void *a, void *b, int *length, MPI_Datatype *datatype)
-//, oper is b[i] = a[i] op b[i]
typedef struct smpi_mpi_op_t {
typedef struct smpi_mpi_op_t {
- void (*func)(void *
x, void *y, void *z
);
+ void (*func)(void *
a, void *b, int *length, MPI_Datatype *datatype
);
} s_smpi_mpi_op_t;
// smpi received message
} s_smpi_mpi_op_t;
// smpi received message
@@
-60,6
+62,10
@@
typedef struct smpi_received_message_t {
int tag;
void *buf;
int tag;
void *buf;
+
+ void *data;
+ int forward;
+
} s_smpi_received_message_t;
typedef struct smpi_received_message_t *smpi_received_message_t;
} s_smpi_received_message_t;
typedef struct smpi_received_message_t *smpi_received_message_t;
@@
-101,11
+107,16
@@
typedef struct smpi_global_t {
typedef struct smpi_global_t *smpi_global_t;
extern smpi_global_t smpi_global;
typedef struct smpi_global_t *smpi_global_t;
extern smpi_global_t smpi_global;
+typedef struct smpi_host_data_t {
+ int index;
+} s_smpi_host_data_t;
+typedef struct smpi_host_data_t *smpi_host_data_t;
+
// function prototypes
void smpi_mpi_init(void);
void smpi_mpi_finalize(void);
// function prototypes
void smpi_mpi_init(void);
void smpi_mpi_finalize(void);
-int smpi_mpi_comm_
size(smpi_mpi_communicator_t comm, int *size
);
-int smpi_mpi_comm_rank(smpi_mpi_communicator_t comm, int *rank);
+int smpi_mpi_comm_
rank(smpi_mpi_communicator_t comm
);
+
int smpi_mpi_barrier(smpi_mpi_communicator_t comm);
int smpi_mpi_isend(smpi_mpi_request_t request);
int smpi_mpi_irecv(smpi_mpi_request_t request);
int smpi_mpi_barrier(smpi_mpi_communicator_t comm);
int smpi_mpi_isend(smpi_mpi_request_t request);
int smpi_mpi_irecv(smpi_mpi_request_t request);