[MPIWG Fortran] Questions on the F08 subarray format

Balaji, Pavan balaji at anl.gov
Sat Mar 1 16:29:59 CST 2014


Folks,

I had a few questions on the MPI-3 F08 bindings, which I couldn’t find answers to in the standard.  Can someone point me to the place where these are defined?

1. How does the subarray format work for functions that have a void* argument, but no datatype to describe them (e.g., MPI_WIN_CREATE)?  In this case, What C function will MPI_WIN_CREATE_F08TS call?  Do we need to create an separate internal MPIR_WIN_CREATE_NEW function in our implementation that takes a datatype argument?  Does this mean that now MPI_WIN_CREATE can allow for noncontiguous buffers on each process?

2. How does the subarray format work for functions that have a datatype argument, but no void* corresponding to that datatype?  For example, the target buffer in MPI_PUT is described using an MPI_AINT (offset), rather than a void*.

3. How does the subarray format work for functions that have two void* arguments corresponding to the same datatype (e.g., MPI_REDUCE)?

Thanks,

  — Pavan




More information about the mpiwg-fortran mailing list