SHMEM_LONGDOUBLE_P(3)

πŸ’… SHMEM_LONGDOUBLE_P β€” Open MPI, bestie edition 🫢

okay so first things first, this page lives in the Open MPI corner of your man pages, and the headline function is shmem_longdouble_p β€” but she brought her whole friend group ✨

✨ NAME ✨

shmem_char_p(3), shmem_float_p(3), shmem_int_p(3), shmem_long_p(3), shmem_short_p(3), shmem_longlong_p(3), shmem_longdouble_p(3) β€” these routines provide a low latency mechanism to write basic types (char, short, int, float, double, long, long long, long double) to symmetric data objects on remote PEs. like, the whole squad of basic types, no cap πŸ’–


🌸 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)

look at them all lined up, matching outfits, iconic πŸ‘‘


πŸ¦‹ DESCRIPTION πŸ¦‹

these routines are literally giving very low latency put capability for single elements of most basic types. one element, one type, straight to the remote PE β€” no drama, no extra steps πŸ’…

the arguments are as follows:

  • addr β€” the remotely accessible array element or scalar data object which will receive the data on the remote PE. miss thing is the destination, she's receiving πŸ“₯
  • value β€” the value to be transferred to addr on the remote PE. this is the actual gift being handed over 🎁
  • pe β€” the number of the remote PE. yep, just the number, that's the whole address book entry πŸ”’
⚠️ okay important bestie moment: as with shmem_put(3), these functions start the remote transfer and may return before the data is delivered to the remote PE. so like. the function saying "done" does NOT mean the data landed yet 😭 it's giving "left on read" energy. use shmem_quiet(3) to force completion of all remote PUT transfers β€” that's the "hey did you actually get my message" check-in πŸ’€

πŸŽ€ SEE ALSO πŸŽ€

go read those next, i'm serious, they're the prerequisites fr fr πŸ“š


2003-2026, The Open MPI Community β€” the whole Open MPI Community ate and left no crumbs πŸ‘‘


and that's the page!! May 14, 2026, brought to you by the Open MPI girlies, source and version included because we always cite our sources πŸ’œβœ¨ mwah, go write to some remote PEs πŸ¦‹

πŸ“¦ where this page comes from