MPI-2, page 179, lines 4-5 change
Thus, the names of MPI_COMM_WORLD, MPI_COMM_SELF, and MPI_COMM_PARENT will have the default of MPI_COMM_WORLD, MPI_COMM_SELF, and MPI_COMM_PARENT.
to
Thus, the names of MPI_COMM_WORLD, MPI_COMM_SELF, and the communicator returned by MPI_COMM_GET_PARENT (if not MPI_COMM_NULL) will have the default of MPI_COMM_WORLD, MPI_COMM_SELF, and MPI_COMM_PARENT.
MPI-2, page 94, line 3-5, change
* The manager is represented as the process with rank 0 in (the remote * group of) MPI_COMM_PARENT. If the workers need to communicate among * themselves, they can use MPI_COMM_WORLD.
to
* The manager is represented as the process with rank 0 in (the remote * group of) the parent communicator. If the workers need to communicate * among themselves, they can use MPI_COMM_WORLD.
MPI2, page 79, Line 11 is
MPI_UNPACK_EXTERNAL (datarep, inbuf, incount, datatype, outbuf, outsize, position)but should be
MPI_UNPACK_EXTERNAL (datarep, inbuf, insize, position, outbuf, outcount, datatype)
MPI-2, page 337, line 31-32 reads
bool MPI::Win::Get_attr(const MPI::Win&win, int win_keyval,
void* attribute_val) const
but should read
bool MPI::Win::Get_attr(int win_keyval, void* attribute_val) const
On page 172, line 37 in section 8.2, change MPI_REQUEST_CANCEL to MPI_CANCEL.
MPI-2, page 163, line 22 reads
Within each group, all processes provide the same recvcounts argument, and the sum of the recvcounts entries should be the same for the two groups.but should read
Within each group, all processes provide the same recvcounts argument, and the sum of the recvcounts entries and datatype should specify the same type signature for the two groups.
MPI-2, page 345, line 37: Remove the const from const MPI::Op.
MPI-2, page 346, line 20: Remove the const from const MPI::Group.
MPI-2, page 346, add after line 34:
Advice to implementors:
If an implementation does not change the value of
predefined handles while execution of MPI_Init, the implementation is free
to define the predefined operation handles as const MPI::Op and the predefined
group handle MPI::GROUP_EMPTY as const MPI::Group.
Other predefined handles must not be "const" because they are allowed as
INOUT argument in the MPI_COMM_SET_NAME/ATTR and MPI_TYPE_SET_NAME/ATTR
routines.
End of advice to implementors
MPI-1, page 128, line 11, in MPI-1.1 has an extraneous root argument. That line should be
MPI_Scan( a, answer, 1, sspair, myOp, comm );
MPI-2, page 223, line 19. Change
MPI_FILE_GET_VIEW(FH, DISP, ETYPE, FILETYPE, DATAREP, IERROR)
INTEGER FH, ETYPE, FILETYPE, IERROR
CHARACTER*(*) DATAREP, INTEGER(KIND=MPI_OFFSET_KIND) DISP
to
MPI_FILE_GET_VIEW(FH, DISP, ETYPE, FILETYPE, DATAREP, IERROR)
INTEGER FH, ETYPE, FILETYPE, IERROR
CHARACTER*(*) DATAREP
INTEGER(KIND=MPI_OFFSET_KIND) DISP
in io-2.tex. (Replace the comma after the declaration of datarep)
MPI-2, page 66, line 26, change
MPI_TYPE_CREATE_HVECTOR(COUNT, BLOCKLENGTH, STIDE, OLDTYPE, NEWTYPE, IERROR)
INTEGER COUNT, BLOCKLENGTH, OLDTYPE, NEWTYPE, IERROR
INTEGER(KIND=MPI_ADDRESS_KIND) STRIDE
to
MPI_TYPE_CREATE_HVECTOR(COUNT, BLOCKLENGTH, STRIDE, OLDTYPE, NEWTYPE, IERROR)
INTEGER COUNT, BLOCKLENGTH, OLDTYPE, NEWTYPE, IERROR
INTEGER(KIND=MPI_ADDRESS_KIND) STRIDE
in misc-2.tex (Replace STIDE with STRIDE).
Examples in Chapter 3 of MPI 1.1 require several fixes.
MPI 1.1, Example 3.12, page 43, line 47 and page 44, lines 1, 5, 8, 10, and 13, the communicator argument comm must be added before the req argument.
The ierr argument must be added at the end of the argument list in the calls to MPI_COMM_RANK and MPI_WAIT in MPI 1.1, page 43, line 43, and page 44, lines 6 and 14.
The ierr argument must be added at the end of the argument list in the calls to MPI_WAIT in MPI 1.1, page 44, lines 35 and 36.
The lines in MPI 1.1, page 52, line 45, and page 53, line 17
IF (status(MPI_SOURCE) = 0) THENshould be
IF (status(MPI_SOURCE) .EQ. 0) THEN
MPI 1.1, page 80, line 2, The variable base should be declared as MPI_Aint, not int, in Example 3.34.
Change MPI-2, page 343, lines 22-23
// Type: const void *
MPI::BOTTOM
to
// Type: void * const
MPI::BOTTOM
In MPI 1.1, page 16, line 23, use strlen(message) + 1 instead of strlen(message) in the MPI_Send call.
A LaTeX line break is needed in MPI 1.1, page 58, line 44, in Section 3.9. The text should read
be invoked in a sequence of the form,Create (Start Complete)* Freewhere * indicates zero or more repetitions. If the same communication ...