【发布时间】:2015-02-08 18:29:17
【问题描述】:
不知道有没有办法知道boost中MPI通信的接收方进程、发送方进程和标签值。
现在,我有一些进程可以相互发送/接收大量消息。而且,我在接收方有一个 boost::mpi::request 集合。此集合存储已收到的请求项。通信操作完成后,我可以从这个集合中提取谁是接收者进程和发送者进程吗? (我还需要知道标签值。)或者,我应该改变我的策略吗?也许有一个请求集合没有意义?
【问题讨论】:
-
您的意思是,一旦您完成了 IRECV,您想要找出谁发送了数据,或者您想要查看一个 Request 对象并找出它的发件人或发件人?
-
这是一个非此即彼的问题,而不是一个是/否的问题。无论如何,如果您的意思是第一个选项,那么 Jonathan Dursi 下面的答案就是您想要的。如果是第二个,你会更加失望。
-
第一个正是我的意思