有效MPI:用于多维环状零拷贝全广播的用户自定义数据类型和笛卡尔通信器
分布式、并行与集群计算
2026-05-29 v1
摘要
我们提出并展示了如何在MPI中有效实现针对任意d维环状的非平凡全广播通信算法。给定一个将进程数p分解为可映射到d维环状的d个因子,我们首先利用笛卡尔通信器将给定的p进程MPI通信器分为每个MPI进程属于的d个维度的较小通信器,并缓存这些通信器以避免每次全广播操作时的昂贵分解。在全广播操作本身中,将其分解为在维度通信器上的d个MPI_Alltoall操作序列。该操作在每次MPI_Alltoall调用前后进行的非平凡数据重排是隐式的,仅通过MPI派生数据类型实现。这使得算法的实现形式上是“零拷贝”,即不必执行显式的进程局部数据块重排。在此过程中,算法采用双缓冲方案,临时缓冲区需求有限。通过选择p的分解方式并选择合适的组件MPI_Alltoall操作实现方式,所呈现的实现为算法调优和适应特定高性能系统提供了充分的机会。几个选取的实验结果表明,性能与本地MPI_Alltoall实现相当,并揭示了常见MPI_Alltoall实现可能存在的问题。
引用
@article{arxiv.2605.29970,
title = {Effective MPI: User-defined Datatypes and Cartesian Communicators for Zero-copy All-to-all Communication in Multidimensional Tori},
author = {Jesper Larsson Träff},
journal= {arXiv preprint arXiv:2605.29970},
year = {2026}
}