1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
|
.\" Man page generated from reStructuredText.
.
.TH "SHMEM_INT_FADD" "3" "May 30, 2025" "" "Open MPI"
.
.nr rst2man-indent-level 0
.
.de1 rstReportMargin
\\$1 \\n[an-margin]
level \\n[rst2man-indent-level]
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
-
\\n[rst2man-indent0]
\\n[rst2man-indent1]
\\n[rst2man-indent2]
..
.de1 INDENT
.\" .rstReportMargin pre:
. RS \\$1
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
. nr rst2man-indent-level +1
.\" .rstReportMargin post:
..
.de UNINDENT
. RE
.\" indent \\n[an-margin]
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
.nr rst2man-indent-level -1
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
.sp
shmem_int4_fadd(3), shmem_int8_fadd(3), \fI\%shmem_int_fadd\fP(3),
\fI\%shmem_long_fadd\fP(3), \fI\%shmem_longlong_fadd\fP(3) \- Performs an atomic
fetch\-and\-add operation on a remote data object
.SH SYNOPSIS
.sp
C or C++:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
#include <mpp/shmem.h>
int shmem_int_fadd(int *target, int value, int pe)
long shmem_long_fadd(long *target, long value, int pe)
long long shmem_longlong_fadd(long long *target, longlong value,
int pe)
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
Fortran:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
INCLUDE "mpp/shmem.fh"
INTEGER pe
INTEGER(KIND=4) SHMEM_INT4_FADD, ires, target, value
ires = SHMEM_INT4_FADD(target, value, pe)
INTEGER(KIND=8) SHMEM_INT8_FADD, ires, target, value
ires = SHMEM_INT8_FADD(target, value, pe)
.ft P
.fi
.UNINDENT
.UNINDENT
.SH DESCRIPTION
.sp
shmem_fadd functions perform an atomic fetch\-and\-add operation. An
atomic fetch\-and\-add operation fetches the old target and adds value to
target without the possibility of another process updating target
between the time of the fetch and the update. These routines add value
to target on Processing Element (PE) pe and return the previous contents
of target as an atomic operation.
.sp
The arguments are as follows:
.INDENT 0.0
.TP
.B target
The remotely accessible integer data object to be updated on the
remote PE. The type of target should match that implied in the
SYNOPSIS section.
.TP
.B value
The value to be atomically added to target. The type of value should
match that implied in the SYNOPSIS section.
.TP
.B 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.
.UNINDENT
.SH NOTES
.sp
The term remotely accessible is defined in \fIintro_shmem\fP(3).
.SH RETURN VALUES
.sp
The contents that had been at the target address on the remote PE prior
to the atomic addition operation.
.sp
\fBSEE ALSO:\fP
.INDENT 0.0
.INDENT 3.5
\fIintro_shmem\fP(3)
.UNINDENT
.UNINDENT
.SH COPYRIGHT
2003-2025, The Open MPI Community
.\" Generated by docutils manpage writer.
.
|