MPI_Put transfers data from the caller to a target window. This is analogous to an MPI_Send call. It has the same restrictions as MPI_Get.

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)
origin_addr
address of the send buffer
origin_count
the number of entries in the origin buffer
origin_datatype
the datatype of each entry
target_rank
the rank of the target
target_disp
displacement from target window start to target buffer (target offset)
target_count
number of entries in the target buffer
target_datatype
datatype of each entry in the target buffer
win
the window object

All comments regarding MPI_Get apply to MPI_Put (and vice versa). The homogeneous environment of Stampede2's queues eases the need to worry about datatype interpretation and displacement units in these calls.

 
©   Cornell University  |  Center for Advanced Computing  |  Copyright Statement  |  Inclusivity Statement