Hello list,

we have several questions regarding calls to collectives using intercommunicators. In man for MPI_Bcast, there is a notice for the inter-communicator case that reads the text below our questions.

If an I is an intercomunicator for communicattors C1={p1,p2,p3} and C2={p4,p5,p6}, and a process p3 (from C1) wants to broadcast a message to C2. Is it mandatory that p1 and p2 have to call to MPI_Bcast? Or can the user skip adding these calls?

BTW, what is the behavior for the broadcast for p1 and p2 in this case, simply return?

Will MPI fail if MPI_PROC_NULL is not given for the parameter root in p1 and p2?

Thank you very much in advance.

----

** When Communicator is an Inter-communicator

When the communicator is an inter-communicator, the root process in the first group broadcasts data to all the processes in the second group. The first group defines the root process. That process uses MPI_ROOT as the value of its root argument. The remaining processes use MPI_PROC_NULL as the value of their root argument. All processes in the second group use the rank of that root process in the first group as the value of their root argument. The receive buffer arguments of the processes in the second group must be consistent with the send buffer argument of the root process in the first group.



WARNING / LEGAL TEXT: This message is intended only for the use of the
individual or entity to which it is addressed and may contain
information which is privileged, confidential, proprietary, or exempt
from disclosure under applicable law. If you are not the intended
recipient or the person responsible for delivering the message to the
intended recipient, you are strictly prohibited from disclosing,
distributing, copying, or in any way using this message. If you have
received this communication in error, please notify the sender and
destroy and delete any copies you may have received.

http://www.bsc.es/disclaimer

Reply via email to