SHMEM_LONGDOUBLE_P(3)
π SHMEM_LONGDOUBLE_P(3) β the Open MPI manual page, bestie edition
okay so this page is a family reunion, because shmem_longdouble_p does not come alone. It rolls in with the whole squad: shmem_char_p <#shmem-char-p>(3), shmem_float_p <#shmem-float-p>(3), shmem_int_p <#shmem-int-p>(3), shmem_long_p <#shmem-long-p>(3), shmem_short_p <#shmem-short-p>(3), shmem_longlong_p <#shmem-longlong-p>(3), and shmem_longdouble_p(3). π
β¨ NAME β¨
These routines provide a low latency mechanism to write basic types β that's char, short, int, float, double, long, long long, and long double, the full lineup β to symmetric data objects on remote PEs. Basically: yeet a value into someone else's memory, but make it fast. π₯
β¨ SYNOPSIS β¨
C or C++:
#include <mpp/shmem.h>
void shmem_char_p(char *addr, char value, int pe)
void shmem_short_p(short *addr, short value, int pe)
void shmem_int_p(int *addr, int value, int pe)
void shmem_long_p(long *addr, long value, int pe)
void shmem_longlong_p(long long *addr, long long value, int pe)
void shmem_float_p(float *addr, float value, int pe)
void shmem_double_p(double *addr, double value, int pe)
void shmem_longdouble_p(long double *addr, long double value, int pe)
β¨ DESCRIPTION β¨
These routines provide a very low latency put capability for single elements of most basic types. not a whole array, not a chunk β one (1) element, and it's fast, periodt. π
the arguments, bestie π
addrβ the remotely accessible array element or scalar data object that will receive the data on the remote PE. it's the lil mailbox getting the drop-off π¬valueβ the value to be transferred toaddron the remote PE. the actual package π¦peβ the number of the remote PE. which friend's house we're delivering to π
β οΈ okay listen up because this is the important part: as withshmem_put(3), these functions start the remote transfer and may return before the data is delivered to the remote PE. do not assume it landed just because the call came back, bestie. if you need it done done, useshmem_quiet<#shmem-quiet>(3) to force completion of all remote PUT transfers. that's the vibe check, no cap.
see also, iykyk πΈ
intro_shmem(3) shmem_put(3)
Copyright π«Ά
2003-2026, The Open MPI Community
and that's the whole page, bestie π huge slay to the Open MPI girlies β this one's from Open MPI, dated Sep 10, 2026, and the copyright is 2003-2026, The Open MPI Community (yes, both years, they been at this a while). go forth and put your long doubles somewhere remote, and remember: shmem_quiet(3) before you trust anything β¨π¦π
π¦ where this page comes from
- ubuntu stonking: openmpi-doc 5.0.10-6 Β· other
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms