作者:Gilad Shainer,Mellanox Technologies
全新的数据世界为实现更高级别的科学模拟开创了机会,使我们能解决过去曾经认为不可解决的棘手问题,开发高级深度学习引擎,用以改善我们的生活。为了达成这些目标,数据中心体系结构已经悄然发生了变化,新的技术正在将数据中心体系结构从以 CPU 为中心的旧概念过渡到以数据为中心的新概念。在这个过程中,一个至关重要的环节就是一些新型计算方案的出现,如智能和可编程的互连解决方案。
InfiniBand 作为一种标准互连技术,长久以来一直在高性能计算和深度学习领域保持领先地位,现在又被应用于各种云平台,为计算和数据密集型应用提供高效服务。目前,在业界领先的云平台和Hyperscale 系统中,数以万计的计算节点使用InfiniBand互连,与全球各地众多的超级计算机系统采用了相同的方案。全球用户纷纷选择 InfiniBand 作为互连技术,是因为它能提升计算密集型和数据密集型应用的性能和扩展性。在传统以太网为基础的数据中心中,越来越多地出现使用InfiniBand互连的HPC、AI、大数据等专业应用池,这些专业应用池通过高速网关连接到以太网基础网。另外,InfiniBand 网络不仅仅性价比高,而且在相同数据吞吐量的情况下,甚至比以太网成本更低。
InfiniBand 推出了创新型网络计算引擎,它内置于网络设备内,可以对网络传输中的数据执行算术运算操作 – 比如数据聚合、数据标签匹配及其他一些运算。另外,还有一些InfiniBand 设备内置标准计算核心,可以很方便地编程来实现其他相关的数据运算。正因如此,与以太网或其他私有网络(有些是隐形以太网)相比,InfiniBand显然成为首选解决方案。
显而易见,网络计算的创新在于,除了履行它在数据中心中互连的核心使命外,网络还变成了传输数据中的“协处理器”,– 也就是说,能有效和高效地移动数据,确保其余计算资源能及时接收到数据。经过多年发展,该领域涌现出大批技术和功能,比如 RDMA、GPUDirect® RDMA、QoS、动态路由和拥塞控制,这些技术都是InfiniBand标准规范的一部分。其中最后两项InfiniBand网络的基础功能,却成为了一些最新的私有网络的新技术。
我们以网络拥塞为例说明。网络拥塞主要由以下两个原因导致:1)点对点通信共用同一网络路径,而其他路径则闲置;2)在多对一通信模式下,单个接收端无法及时处理多个发送端同时发出的所有数据。
动态路由机制可克服因点对点网络通信分布不均衡导致的网络拥塞。橡树岭国家实验室使用MPIGraph 基准测试结果表明,InfiniBand 动态路由可实现 96% 的网络利用率(来源:“The Design, Deployment, and Evaluation of the CORAL Pre-Exascale Systems,” Sudharshan S. Vazhkudai, Arthur S. Bland, Al Geist, et al )。InfiniBand 可以实现细粒度动态路由,支持多种动态路由方案。可以根据系统设计和使用情况选择最合适的方案来实现优异的性能。
图 1 – 静态路由与动态路由的 mpiGraph 性能结果比较,展现出 InfiniBand 动态路由的优势,在 Summit 超级计算机上的测量结果显示,它有效地消除了点对点拥塞,实现了 96% 的网络利用率(来源:“The Design, Deployment, and Evaluation of the CORAL Pre-Exascale Systems”,Sudharshan S. Vazhkudai、Arthur S. Bland、Al Geist , el al)
多对一通信拥塞问题可通过拥塞管理或拥塞控制机制加以解决。拥塞控制的关键在于,依靠网络交换机发现多对一场景并迅速向发送端发出网络拥塞通知。发送端接到拥塞通知后,适当减少发向接收端的数据量,以确保接收端能成功处理所有数据。这样可以防止网络被数据淹没,交换机缓冲区保持为空,从而避免了多对一拥塞场景。显然,拥塞通知越及时从交换机发出和到达发送端,拥塞控制成效越显著。
早在 2010 年,我有幸与挪威 Simula 实验室团队合作展示 InfiniBand 拥塞控制机制。我们搭建了一个小型实验环境,其中包含七台服务器和两台交换机,通过 DDR 20Gb/s InfiniBand 链路将各服务器连接到交换机(其中三台服务器连接到一台交换机,其余四台服务器连接到另一台交换机),再通过一条 QDR 40Gb/s InfiniBand 链路连接两台交换机。我们构造了一个多对一网络拥塞场景,和牺牲流(Victim Flows)(牺牲流是指其数据流不属于多对一通信组,但因拥塞导致性能受损)。结果证明了 InfiniBand 拥塞控制不仅可以消除网络拥塞,还能防止产生牺牲流。
图 2 – 采用 InfiniBand 拥塞控制与不采用 InfiniBand 拥塞控制的网络性能 – 证明 InfiniBand 拥塞控制在消除多对一拥塞和牺牲流方面的成效(来源文章:“first experiences with congestion control in InfiniBand hardware ”,2010 年)
毋庸置疑,自 2010 年以来,InfiniBand 硬件拥塞控制机制又进行了多次改进和增强。例如,最新 HDR 200Gb/s InfiniBand 交换机和网卡的 面向更有效和高效拥塞控制的快速发现和通信机制。
最近,我们注意到一种名为GPCNeT (Global Performance and Congestion Network Test - 全局性能和拥塞网络测试)的新型网络测试基准。GPCNeT 基准测试是一项 MPI 级测试,旨在衡量后台流量对于 Random Ring 延迟和带宽以及小数据 MPI Allreduce 操作的影响。这引起我们的思考:为什么创建此类基准测试突然变得如此重要?为什么没在十年前做这件事?主要原因在于直到最近那些私有网络才刚开始支持拥塞控制,还把它作为一个技术创新来进行介绍。
简单而言,GPCNeT 基准测试可测量三种 MPI 操作,分别在两种场景下进行每种操作测试:第一种场景,部分集群节点运行任一种MPI操作测试,其余节点闲置;第二种场景,相同节点运行同一种 MPI 操作测试不变,在其余节点上注入背景网络流量,构造多对一通信操作和网络拥塞。最后对每项测试在两种场景的结果进行比较,得出 GPCNeT 基准测试评分。
实际上,GPCNeT 基准测试衡量的是有载相对性能,而不是绝对网络性能。因此,GPCNeT 无法用来比较一种网络相对另外一种网络的快慢。举例来说,如果在一个网络上测试GPCNeT看到无拥塞时 MPI Allreduce 延迟 是2us(微秒)、有拥塞时延迟是 3us,而另外一个网络上测试GPCNeT看到无拥塞时延迟 是100 us、有拥塞时延迟 是110us,根据GPCNeT得分,会得出错误的结论,认为第二个网络更好(但是众所周知,延迟越小,网络性能越好)。这就是GPCNeT 基准打分机制的问题:它掩盖了真实的网络延迟性能。
此外,这个基准测试将 8 字节 的数据视为MPI Allreduce的重要测试数据,而背景拥塞流量则基于大消息。并不是说 8 字节 MPI Allreduce 性能不重要,而是大消息的聚合和归约对应用程序性能的影响更大 – 例如深度学习场景。深度学习已经成为很多 HPC 应用的重要组成部分,可用于提高 HPC 模拟的精确度。当然,应用程序中还会用到 8 字节数据交换,但大消息(从几百字节到几千字节乃至数百万字节大小)使用程度更高,且对应用程序性能的影响也更显著。
基于上述种种事实(还可以列出更多其他理由),我们可以得出结论:GPCNeT 是一个非常牵强的基准测试,其作用极为有限,无法用它的结果来比较现实网络性能。
最后,如果我们想看一下 HDR 200Gb/s InfiniBand 在 GPCNeT 基准测试中的表现究竟如何,测试结果再次印证了 HDR InfiniBand 的世界顶尖性能,几乎没有抖动!事实证明,InfiniBand 拥塞控制机制完美解决了 GPCNeT 基准测试营造的拥塞问题,GPCNeT 拥塞因子得分几乎为1 – 而1是GPUNeT拥塞因子理论最好成绩。
图 3 – 启用拥塞控制与不启用拥塞控制的 HDR 200Gb/s InfiniBand 的 GPCNeT 基准测试结果。在启用拥塞控制的情况下,InfiniBand 呈现出世界领先的性能结果。
当评估高性能计算系统或互连产品时,业界有很多更有效的基准测试可选。如果能够将用户实际应用作为基准进行测试,显然更有利于确定系统或网络的性能与功能。GPCNeT 基准测试的缺点远超过优点,是否应该称其为GPCNoT 呢?
关于Mellanox
Mellanox 公司的英文全称是 Mellanox Technologies(中文名:迈络思),是一家在全球范围内为服务器和存储提供端到端InfiniBand和以太网智能互连解决方案及服务的领军企业。Mellanox互连解决方案凭借其低延迟、高带宽、网络计算等优势, 可在应用之间快速地传递数据,提升系统性能和提高数据安全性,极大地提升了数据中心效率。Mellanox的端到端高速互连产品包括: 网卡、交换机、线缆、光模块、软件和芯片等,用以加速应用的性能、优化业务的投资回报率,覆盖云服务、超大规模数据中心、高性能计算、人工智能、企业级数据中心、网络安全、存储以及金融服务等各个行业。
免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。