Improving MPI communication via data type fission

Improving MPI communication via data type fission
复制标题

通过数据类型裂变改进 MPI 通信

DOI:
--
复制
发表时间:
2010
期刊:
IEEE International Symposium on High-Performance Parallel Distributed Computing
影响因子:
--
通讯作者:
M. Swany
M. Swany
中科院分区:
--
文献类型:
--
作者:
Ben Perry;M. Swany

文献摘要

被引文献

相似文献

消息传递接口(MPI)消息以MPI数据类型的传输实例为中心。在MPI术语中表示的数据类型通常是在应用程序本地的数据类型之后建模的。如果用户不想从本机数据类型传输字段,则用户有时会对齐MPI数据类型,使得在被省略的字段所在的位移中存在间隙。由于所得到的MPI数据类型现在是非连续的,因此需要花费周期来使数据连续以进行传输,然后在接收端将数据扩展回来。我们表明,通过执行数据类型裂变(分离的过程中的传输字段从非传输字段)和相应的对齐MPI数据类型,我们可以完全消除需要复制数据在包装和拆包过程中,这可以显着提高通信繁重的单程序多数据应用程序的性能。
Message Passing Interface (MPI) messages are centered around transmitting instances of MPI data types. The data types represented in MPI terms are usually modeled after data types native to the application. If a user does not want to transmit a field from the native data type, the user will sometimes align the MPI data type such that there is a gap in the displacement where the omitted field would be. With the resulting MPI data type now being non-contiguous, cycles are spent making the data contiguous for transmission and then expanding the data back out on the receiving side. We show that by performing data type fission (the process of segregating the transmitted fields from the non-transmitted fields) and aligning the MPI data type accordingly, we can completely eliminate the need to copy data during the packing and unpacking process, which can significantly improve the performance of communication-heavy Single Program Multiple Data applications.