photon
1.1
|
Functions that perform collective operations and manage communicators. This collective interface works only with PWC/GWC probing. More...
Files | |
file | photon_collectives.h |
Functions | |
int | photon_collective_init (photonComm comm, photon_coll ctype, photon_cid local, photon_rid *request, int flags) |
int | photon_collective_join (photon_rid request, void *in, void *out, int scount, int rcount, photonDatatype stype, photonDatatype rtype, int root, photonOp op) |
int | photon_collective_comm_create (void *active, int num_active, int total, photonComm *c) |
In-progress communicator handling. More... | |
int | photon_collective_init_new_comm (void *active, int num_active, int total, photon_coll ctype, photon_cid local, photon_rid *request, int flags, photonComm *c) |
In-progress communicator handling. More... | |
Functions that perform collective operations and manage communicators. This collective interface works only with PWC/GWC probing.
int photon_collective_comm_create | ( | void * | active, |
int | num_active, | ||
int | total, | ||
photonComm * | c | ||
) |
In-progress communicator handling.
Definition at line 552 of file libphoton.c.
int photon_collective_init | ( | photonComm | comm, |
photon_coll | ctype, | ||
photon_cid | local, | ||
photon_rid * | request, | ||
int | flags | ||
) |
Initialize a Photon collective operation of type ctype
. This function prepares a new collective request referenced by the returned request
handle. A local completion identifier is passed as a parameter and will be returned by a subsequent photon_probe_completion() call once joined and completed.
As with the PWC/GWC interface, flags
may be set to PHOTON_REQ_PWC_NO_LCE to prevent the probing of the local
CID if not needed.
commm | The communicator to use for this collective |
ctype | The type of collective to initialize |
local | The completion identifier to probe for |
request | A pointer to a photon_rid that will be filled in with a unique ID |
flags | Flags that control the initialization and CID return behavior |
Definition at line 540 of file libphoton.c.
int photon_collective_init_new_comm | ( | void * | active, |
int | num_active, | ||
int | total, | ||
photon_coll | ctype, | ||
photon_cid | local, | ||
photon_rid * | request, | ||
int | flags, | ||
photonComm * | c | ||
) |
In-progress communicator handling.
Definition at line 557 of file libphoton.c.
int photon_collective_join | ( | photon_rid | request, |
void * | in, | ||
void * | out, | ||
int | scount, | ||
int | rcount, | ||
photonDatatype | stype, | ||
photonDatatype | rtype, | ||
int | root, | ||
photonOp | op | ||
) |
Joins a previously initialized Photon collective operation identified by the request
parameter. This method requires the in
, out
data, stype
, rtype
, and op
arguments specific to the previously declared photon_coll ctype
at collective initialization. If particular parametera are not required for the ctype
(e.g. PHOTON_COLL_BARRIER), they may be set to NULL.
request | The previously initialized collective request handle |
in | The input data for the collective |
out | The output (return) data for the collective |
scount | The number of elements in the input data |
rcount | The number of elements in the output (recv) data |
stype | The type of elements in the input data |
rtype | The type of elements in the output (recv) data |
root | The address (rank) of the receiving process (if required) |
op | The collective-specific operation to perform (if required) |
Definition at line 546 of file libphoton.c.