2

我正在寻找一个高效的单向通信库,可以用来有效地实现 RDMA。

目前,我查看了 MPI-2 实现,例如 MPICH2 和 MVAPICH2(使用 RDMA 的基于 InfiniBand 架构的 MPI-2 实现)。

MVAPICH2 有很多我正在寻找的功能,不幸的是,我无法使用它,因为我目前无法访问我所在大学的 InfiniBand 架构。

所以我真正想要的是,是否有任何其他库(不是必需的 MPI 实现变体)在减少通信进程之间的开销方面可以被认为是有效的(例如:避免在集合协议中握手,从而从目标进程中卸载开销)。

我也很感激任何可以帮助我做一些不同的事情而不是找到一个合适的库的建议。

谢谢。

4

2 回答 2

4

首先,RDMA 和 RMA 不是一回事。RDMA需要某种专用硬件(例如 InfiniBand)才能直接访问应用程序缓冲区。例如,如果您通过 TCP 进行单方面的 RMA 操作,您仍然会通过操作系统内核并在此过程中制作多个数据副本。

您可以使用单方面的 MPI 操作编写应用程序,使用在以太网上运行的 MPI 库对其进行测试,当时机成熟并且您可以访问更快的硬件时,只需将 MPI 库替换为支持 RDMA 的东西。

或者,查看一些较低级别的库,例如 ARMCI 和 GASNet。但是,如果没有专门的硬件,RDMA 什么也做不了。

您是否有针对这些要求的特定应用?

于 2012-04-26T04:00:12.623 回答
1

为了补充 G.Inozemtsev 的答案,这里有更多参考资料。

在几个项目中研究了通过千兆以太网进行有效的单向通信。有几个 GigE 供应商为其提供硬件支持的 iWARP(Internet 上的广域 RMDA 协议)。

DK Panda 1. P. Balaji 等人的小组有几篇关于 iWARP 的论文。Supporting iWARP Compatibility and Features for Regular Network Adapters, 2005 2. S. Naravulla 等人。基于 iWARP 的高性能 MPI:早期体验,2007

另一种选择是可以在 UDP 之上实现的Berkeley Active Messages 。

据我所知,随着 InfiniBand 织物的广泛使用,这一研究方向并未得到积极发展。

于 2012-04-26T12:32:36.770 回答