我很好奇MPI缺少这个功能:
MPI_Isendrecv( ... );
,即非阻止发送和接收,任何人都可以告诉我其遗漏背后的理由吗?
答案 0 :(得分:5)
我认为MPI_SENDRECV
存在是为了方便那些想要使用阻塞语义但需要实现移位操作的程序员。如果您对非阻塞语义感到满意,则应该只使用现有的MPI_ISEND
和MPI_IRECV
。
有趣的是,MPI-3将添加非阻塞集体(例如MPI_IBARRIER
),但仍然没有MPI_ISENDRECV
(请参阅http://meetings.mpi-forum.org/draft_standard/mpi3.0_draft_2.pdf)。