Hello @ all,

my question is concerning the PMPI specification. I hope the list is the correct place to ask.

I want to write a complete wrapper for MPI. That is every define, typedef and function will be wrapped and might be completely changed. Currently I prefixed everything with AMPI_ such that no name clashes exist. But the user would need to rename every occurrence of MPI_ with AMPI_

I would now like to use the PMPI definition of MPI to define my wrappers as the MPI version which then use the PMPI definitions. Unfortunately I could not find tutorials for a complete wrapper.

As an example take MPI_COMM_WORLD. I made a grep on the openmpi installation on my linux machine for PMPI_COMM_WORLD but the result was empty. The definition of MPI_COMM_WORLD was 
#define MPI_COMM_WORLD OMPI_PREDEFINED_GLOBAL( MPI_Comm, ompi_mpi_comm_world)
without any chance to switch to PMPI_COMM_WORLD as a predefined macro.

I also checked the newest source tarball of openmpi and I could not find anything for PMPI_COMM_WORLD there.

In the mpi 3.0 standard on page 555 in section 14.2.1 the requirements are just listed for functions. Was the definition of the PMPI_ supplements for defines, types etc. never discussed?

I would have expected, that I can just include a pmpi.h and then I would have all the PMPI_ symbols without the MPI symbols available.

Do you know of any way I could make my idea work?

Cheers

Max

-- 
Max Sagebaum Chair for Scientific Computing, TU Kaiserslautern, Bldg/Geb 34, Paul-Ehrlich-Strasse, 67663 Kaiserslautern, Germany Phone: +49 (0)631 205 5638 Fax: +49 (0)631 205 3056 Email: max.sagebaum@scicomp.uni-kl.de URL: www.scicomp.uni-kl.de