我很好奇 MPI 中缺少此功能:
MPI_Isendrecv( ... );
即,非阻塞发送和接收,谁能告诉我遗漏背后的理由?
我的看法是,它的MPI_SENDRECV
存在是为了方便想要使用阻塞语义但需要实现移位操作的程序员。如果您对非阻塞语义感到满意,您应该简单地使用现有的MPI_ISEND
and MPI_IRECV
。
有趣的是,MPI-3 将添加非阻塞集合(例如MPI_IBARRIER
),但仍然没有MPI_ISENDRECV
(参见http://meetings.mpi-forum.org/draft_standard/mpi3.0_draft_2.pdf)。