SHMEM_LONG_ADD(3)
π
SHMEM_LONG_ADD(3) β an Open MPI bestie page π
okay so welcome to Open MPIβs SHMEM_LONG_ADD(3) page, and honestly itβs giving atomic-add main character energy β¨
πΈ NAME πΈ
These are the atomic add girlies, fr fr:
shmem_int_add(3)shmem_int4_add(3)shmem_int8_add(3)shmem_long_add(3)shmem_longlong_add(3)
They perform an atomic add operation. periodt. π
β¨ SYNOPSIS β¨
C or C++:
#include <mpp/shmem.h>
void shmem_int_add(int *target, int value, int pe)
void shmem_long_add(long *target, long value, int pe)
void shmem_longlong_add(long long *target, long long value,
int pe)
Fortran:
include 'mpp/shmem.h'
INTEGER pe
CALL SHMEM_INT4_ADD(target, value, pe)
CALL SHMEM_INT8_ADD(target, value, pe)
π DESCRIPTION π
The atomic add routines add value to the data at address target on PE pe. The operation completes without the possibility of another process updating target between the time of the fetch and the update. no cap, thatβs the whole vibe check π«Ά
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 oftargetshould match that implied in the SYNOPSIS section. If you are using the Fortran compiler, it must be of type integer with an element size of 4 bytes forSHMEM_INT4_ADDand 8 bytes forSHMEM_INT8_ADD. literally match the type, bestie πvalueβ The value to be atomically added totarget. If you are using C/C++, the type ofvalueshould match that implied in the SYNOPSIS section. If you are using Fortran, it must be of type integer with an element size oftarget. slay, but keep those sizes aligned πpeβ An integer that indicates the PE number upon whichtargetis to be updated. If you are using Fortran, it must be a default integer value. iconic little PE number, keep it default π
π¦ NOTES π¦
The term remotely accessible is defined in intro_shmem(3). iykyk π
π SEE ALSO π
intro_shmem(3)shmem_cache(3)
π COPYRIGHT π
2003-2026, The Open MPI Community
xoxo, Open MPI π β source/version Open MPI, dated May 14, 2026, on this SHMEM_LONG_ADD(3) page. mwah! πβ¨
π¦ where this page comes from
- arch rolling: nvhpc-comm-libs 26.9-1 Β· LicenseRef-NVIDIA-HPC-SDK
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms