中文

TEMPI:具有 CUDA 感知数据类型规范表示的插入式 MPI 库

分布式、并行与集群计算 2021-04-22 v8

摘要

MPI 派生数据类型是一种抽象,用于简化 MPI 应用中非连续数据的处理。这些数据类型在运行时由 MPI 标准中定义的原始命名类型递归构造。近来,CUDA 感知 MPI 实现的开发与部署推动了分布式高性能 MPI 代码向使用 GPU 的转型。此类实现允许 MPI 函数直接操作 GPU 缓冲区,从而简化 GPU 计算与 MPI 代码的集成。本文首先提出一种针对嵌套跨步数据类型的新型数据类型处理策略,在先前工作的专用处理与通用处理之间找到了折中。本文还表明,非连续数据处理的性能特征可通过经验性系统测量建模,并用于透明地改善 MPI_Send/Recv 延迟。最后,尽管对非连续 GPU 数据和 CUDA 感知 MPI 实现已有大量关注,但良好性能并非理所当然。本文通过 MPI 插入库 TEMPI 展示了其贡献。TEMPI 可在不改变系统或应用的情况下与现有 MPI 部署配合使用。最终,与部署在领军级超级计算机上的 MPI 实现相比,本文的插入库模型实现了高达 242000 倍的 MPI_Pack 加速和高达 59000 倍的 MPI_Send 加速。这在具有 3072 个进程的 3D 晕交换中带来了超过 917 倍的加速。

关键词

引用

@article{arxiv.2012.14363,
  title  = {TEMPI: An Interposed MPI Library with a Canonical Representation of CUDA-aware Datatypes},
  author = {Carl Pearson and Kun Wu and I-Hsin Chung and Jinjun Xiong and Wen-Mei Hwu},
  journal= {arXiv preprint arXiv:2012.14363},
  year   = {2021}
}

备注

12 pages