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 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
|
.\" Man page generated from reStructuredText.
.
.TH "MPI_AINT_DIFF" "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
..
.INDENT 0.0
.INDENT 3.5
.UNINDENT
.UNINDENT
.sp
\fI\%MPI_Aint_add\fP, \fI\%MPI_Aint_diff\fP \- Portable functions for arithmetic
on MPI_Aint values.
.SH SYNTAX
.SS C Syntax
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
#include <mpi.h>
MPI_Aint MPI_Aint_add(MPI_Aint base, MPI_Aint disp)
MPI_Aint MPI_Aint_diff(MPI_Aint addr1, MPI_Aint addr2)
.ft P
.fi
.UNINDENT
.UNINDENT
.SS Fortran Syntax
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
USE MPI
! or the older form: INCLUDE \(aqmpif.h\(aq
INTEGER(KIND=MPI_ADDRESS_KIND) MPI_AINT_ADD(BASE, DISP)
INTEGER(KIND=MPI_ADDRESS_KIND) BASE, DISP
INTEGER(KIND=MPI_ADDRESS_KIND) MPI_AINT_DIFF(ADDR1, ADDR2)
INTEGER(KIND=MPI_ADDRESS_KIND) ADDR1, ADDR2
.ft P
.fi
.UNINDENT
.UNINDENT
.SS Fortran 2008 Syntax
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
USE mpi_f08
INTEGER(KIND=MPI_ADDRESS_KIND) MPI_AINT_ADD(BASE, DISP)
INTEGER(KIND=MPI_ADDRESS_KIND) BASE, DISP
INTEGER(KIND=MPI_ADDRESS_KIND) MPI_AINT_DIFF(ADDR1, ADDR2)
INTEGER(KIND=MPI_ADDRESS_KIND) ADDR1, ADDR2
.ft P
.fi
.UNINDENT
.UNINDENT
.SH INPUT PARAMETERS
.INDENT 0.0
.IP \(bu 2
\fBbase\fP: Base address (integer).
.IP \(bu 2
\fBdisp\fP: Displacement (integer).
.IP \(bu 2
\fBaddr1\fP: Minuend address (integer).
.IP \(bu 2
\fBaddr2\fP: Subtrahend address (integer).
.UNINDENT
.SH DESCRIPTION
.sp
\fI\%MPI_Aint_add\fP produces a new MPI_Aint value that is equivalent to the
sum of the \fIbase\fP and \fIdisp\fP arguments, where \fIbase\fP represents a base
address returned by a call to \fI\%MPI_Get_address\fP and \fIdisp\fP represents
a signed integer displacement. The resulting address is valid only at
the process that generated \fIbase\fP, and it must correspond to a location
in the same object referenced by \fIbase\fP, as described in MPI\-3.1 section
4.1.12. The addition is performed in a manner that results in the
correct MPI_Aint representation of the output address, as if the process
that originally produced \fIbase\fP had called:
.INDENT 0.0
.INDENT 3.5
.sp
.nf
.ft C
MPI_Get_address ((char *) base + disp, &result);
.ft P
.fi
.UNINDENT
.UNINDENT
.sp
\fI\%MPI_Aint_diff\fP produces a new MPI_Aint value that is equivalent to
the difference between \fIaddr1\fP and \fIaddr2\fP arguments, where \fIaddr1\fP
and \fIaddr2\fP represent addresses returned by calls to
\fI\%MPI_Get_address\fP\&. The resulting address is valid only at the
process that generated \fIaddr1\fP and \fIaddr2\fP, and \fIaddr1\fP and \fIaddr2\fP
must correspond to locations in the same object in the same process,
as described in MPI\-3.1 section 4.1.12. The difference is calculated
in a manner that results in the signed difference from \fIaddr1\fP to
\fIaddr2\fP, as if the process that originally produced the addresses had
called \fB(char *) addr1\fP \- \fB(char *) addr2\fP on the addresses
initially passed to \fI\%MPI_Get_address\fP\&.
.sp
\fBSEE ALSO:\fP
.INDENT 0.0
.INDENT 3.5
.INDENT 0.0
.IP \(bu 2
\fI\%MPI_Get_address\fP
.UNINDENT
.UNINDENT
.UNINDENT
.SH COPYRIGHT
2003-2025, The Open MPI Community
.\" Generated by docutils manpage writer.
.
|