SHMEM_FETCH(3) | Open MPI | SHMEM_FETCH(3) |
shmem_int4_fetch(3), shmem_int8_fetch(3), shmem_int_fetch(3), shmem_long_fetch(3), shmem_longlong_fetch(3) shmem_double_fetch(3) shmem_float_fetch(3) - Atomically fetches the value of a remote data object
C or C++:
#include <mpp/shmem.h> int shmem_int_fetch(int *target, int pe); long shmem_long_fetch(long *target, int pe); long long shmem_longlong_fetch(long long *target, int pe); double shmem_double_fetch(long long *target, int pe); float shmem_float_fetch(float *target, int pe);
Fortran:
INCLUDE "mpp/shmem.fh" INTEGER pe INTEGER(KIND=4) SHMEM_INT4_FETCH, ires, target ires = SHMEM_INT4_FETCH(target, pe) INTEGER(KIND=8) SHMEM_INT8_FETCH, ires, target ires = SHMEM_INT8_FETCH(target, pe) REAL(KIND=4) SHMEM_INT4_FETCH, ires, target ires = SHMEM_REAL4_FETCH(target, pe) REAL(KIND=8) SHMEM_INT8_FETCH, ires, target ires = SHMEM_REAL8_FETCH(target, pe)
The shmem_fetch functions perform an atomic fetch operation. They return the contents of the target as an atomic operation.
The arguments are as follows:
The contents at the target address on the remote PE. The data type of the return value is the same as the the type of the remote data object.
intro_shmem(3)
Unreleased developer copy | gitclone |