SHMEM_SWAP(3) Open MPI SHMEM_SWAP(3)
NAME
shmem_double_swap(3), shmem_float_swap(3), shmem_int_swap(3),
shmem_long_swap(3), shmem_swap(3), shmem_int4_swap(3),
shmem_int8_swap(3), shmem_real4_swap(3), shmem_real8_swap(3),
shmem_longlong_swap(3) - Performs an atomic swap to a remote data ob-
ject
SYNOPSIS
C or C++:
#include <mpp/shmem.h>
double shmem_double_swap(double *target, double value,
int pe);
float shmem_float_swap(float *target, float value, int pe);
int shmem_int_swap(int *target, int value, int pe);
long shmem_long_swap(long *target, long value, int pe);
long long shmem_longlong_swap(long long *target,
long long value, int pe);
long shmem_swap(long *target, long value, int pe);
Fortran:
INCLUDE "mpp/shmem.fh"
INTEGER pe
INTEGER SHMEM_SWAP
ires = SHMEM_SWAP(target, value, pe)
INTEGER(KIND=4) SHMEM_INT4_SWAP
ires = SHMEM_INT4_SWAP(target, value, pe)
INTEGER(KIND=8) SHMEM_INT8_SWAP
ires = SHMEM_INT8_SWAP(target, value, pe)
REAL(KIND=4) SHMEM_REAL4_SWAP
res = SHMEM_REAL4_SWAP(target, value, pe)
REAL(KIND=8) SHMEM_REAL8_SWAP
res = SHMEM_REAL8_SWAP(target, value, pe)
DESCRIPTION
The atomic swap routines write value to address target on PE pe, and
return the previous contents of target in one atomic operation.
The arguments are as follows:
target The remotely accessible integer data object to be updated on the
remote PE. If you are using C/C++, the type of target should
match that implied in the SYNOPSIS section. If you are using
Fortran, it must be of the following type:
SHMEM_SWAP: Integer of default kind
SHMEM_INT4_SWAP: 4-byte integer
SHMEM_INT8_SWAP: 8-byte integer
SHMEM_REAL4_SWAP: 4-byte real
SHMEM_REAL8_SWAP: 8-byte real
value Value to be atomically written to the remote PE. value is the
same type as target.
pe An integer that indicates the PE number on which target is to be
updated. If you are using Fortran, it must be a default integer
value.
NOTES
The term remotely accessible is defined in intro_shmem(3).
RETURN VALUES
The contents that had been at the target address on the remote PE prior
to the swap is returned.
SEE ALSO
intro_shmem(3)
4.1.2 Nov 24, 2021 SHMEM_SWAP(3)
Generated by dwww version 1.14 on Sun Aug 10 05:15:05 CEST 2025.