[mpiwg-rma] Use of MPI_SHORT_INT, etc with MPI_Accumulate

William Gropp wgropp at illinois.edu
Wed May 11 09:35:42 CDT 2016

Read this as (predefined datatype) or (derived datatype where all basic components are of the same predefined datatype).

MPI_SHORT_INT is a predefined datatype, and so is valid for accumulate.


William Gropp
Director, Parallel Computing Institute
Thomas M. Siebel Chair in Computer Science
Chief Scientist, NCSA
University of Illinois Urbana-Champaign

On May 11, 2016, at 9:02 AM, Nathan Hjelm <hjelmn at mac.com> wrote:

> I have a user who is trying to use MPI_SHORT_INT as the origin and target datatype arguments of MPI_Accumulate. My interpretation of the standard does not allow this type. I am justifying this because of MPI 3-1 § 11.3.4 pp 425:2-8:
> Each datatype argument must be a predefined datatype or a derived datatype, where
> all basic components are of the same predefined datatype. Both datatype arguments must
> be constructed from the same predefined datatype.
> MPI_SHORT_INT, MPI_LONG_DOUBLE_INT, etc are not in any of the A.1 tables labeled as "predefined datatypes”. They show up in a separate list of datatypes for reduction functions. Since these datatypes are not “predefined datatypes” and are not composite datatypes of the "same predefined datatype” they are not valid for MPI_Accumulate, MPI_Get_accumulate, etc. Am I wrong in my interpretation?
> -Nathan
> _______________________________________________
> mpiwg-rma mailing list
> mpiwg-rma at mpi-forum.org
> http://lists.mpi-forum.org/mailman/listinfo.cgi/mpiwg-rma

More information about the mpiwg-rma mailing list