[Mpi-forum] Question about MPI_Info set on communicators

Jeff Squyres (jsquyres) jsquyres at cisco.com
Mon Feb 15 16:34:26 CST 2016

This question has come up in the Open MPI community:

MPI_Info_set(myinfo, "use_shared_memory", "yes");
MPI_Comm_set_info(comm, myinfo);
MPI_Comm_get_info(comm, myinfo_returned); 
// Assume here that there was not enough shared memory available to use shared-memory for 
// communication on this comm, so MPI_Info_get() tells us that use_shared_memory is "no".

// ...time passes, and now assume there is more shared-memory available
MPI_Comm_dup_with_info(comm, &newcom);
MPI_comm_get_info(newcom, myinfo_returned);

Should newcom have "use_shared_memory" set to "yes" or "no"?

Arguments for "yes":
- the user originally asked for "yes"
- now there is shared memory available

Arguments for "no":
- the current value for "used_shared_memory" on the parent communicator is "no"

Which should it be?

MPI-3.1 6.4.2 p238 says:

"...Returns in newcomer a new communicator with the same group or groups, same topology, same info hints, any copied cached information, but a new context (see Section 6.7.1)."

So the specific question here is: what exactly does "Same info hints" mean?  The user-specific hint, or the current value of the hint?

Jeff Squyres
jsquyres at cisco.com  
For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/

More information about the mpi-forum mailing list