基于 InfiniBand 且支持 RDMA 的 MPICH2 设计与实现
硬件体系结构
2007-05-23 v1 分布式、并行与集群计算
摘要
多年来,MPI 一直是编写并行应用程序的事实标准。最流行的 MPI 实现之一是 MPICH。其继任者 MPICH2 采用全新设计,提供更高性能和灵活性。为确保可移植性,它采用分层结构,可在不同层级进行移植。本文介绍了我们在 InfiniBand 上设计和实现 MPICH2 的经验。由于其高性能和开放标准,InfiniBand 在高性能计算领域日益流行。我们的研究重点是优化 MPICH2 中 MPI-1 函数的性能。目标之一是利用 InfiniBand 中的远程直接内存访问(RDMA)以实现高性能。我们的设计基于 MPICH2 提供的 RDMA Channel 接口,该接口将与体系结构相关的通信功能封装到极小的一组函数中。从基本设计出发,我们应用了不同的优化,并提出了一种基于零拷贝的设计。我们使用微基准测试来表征优化和设计的影响。我们还使用 NAS 并行基准进行了应用级评估。我们优化的 MPICH2 实现实现了 7.6 μs 的延迟和 857 MB/s 的带宽,接近底层 InfiniBand 的原始性能。我们的研究表明,MPICH2 中的 RDMA Channel 接口提供了一种简单而强大的抽象,通过利用 InfiniBand 中的 RDMA 操作,能够实现高性能的实现。据我们所知,这是首个利用 RDMA 支持在 InfiniBand 上实现 MPICH2 的高性能设计和实现。
引用
@article{arxiv.cs/0310059,
title = {Design and Implementation of MPICH2 over InfiniBand with RDMA Support},
author = {Jiuxing Liu and Weihang Jiang and Pete Wyckoff and Dhabaleswar K. Panda and David Ashton and Darius Buntinas and William Gropp and Brian Toonen},
journal= {arXiv preprint arXiv:cs/0310059},
year = {2007}
}
备注
12 pages, 17 figures