10月17日,2018年开放数据峰会(Open Data Center Summit 2018,下文简称ODCC)数据中心网络分论坛在北京国际会议中心举办。ODCC关注数据中心产业的各个方面,从国家政策和法规,到地方制度和项目,从产业全局发展到具体技术落地,从尖端热点技术到传统行业推广,从国内到国际,从宏观到微观,全力推动中国数据中心产业发展。
以下是Mellanox资深系统工程师于若信的演讲实录:
大家早上好,非常高兴能与大家进行交流。数据快速增长、模型算法更加优化,要释放数据能量、发挥系统算力,需要有高带宽、低延迟、“更聪明”的高速互联网络,网络内计算和RDMA/RoCE将起到关键的作用。现在已经到了E级计算的阶段,我们可以看到从SMP到Cluster,从单核到众核,当越来越多的算力来自于GPU,系统性能都会遇到瓶颈,E级计算Co-Design聚焦于系统的扩展能力和应用的线性加速比,使计算系统有很大的可扩展性,如果我们应用不能够扩展到更多核数的话,也并不是我们要达到的目的。
所以从E级计算的角度来讲,不光是硬件的堆积,更多的是聚焦在应用层面上,算法层面上,以及应用怎么能扩展到整个系统的规模。
从今年Top500的结果看,很明显有两个特点,第一个是计算能力更多来自GPU,例如Summit系统95%的运算能力都来自GPU,第二个特点是HPC和AI交织在一起的,就更明显了。气象预报、金融分析、生命科学、石油勘探等等都有一些应用融合了HPC和AI。可以看到尽管它们的工作负载不一样,但是网络要求都相同,都需要高带宽、低延迟的互联网络方案。
数据中心的数据处理将从“CPU为中心”转换到“以数据为中心”,数据在什么地方我们就对数据进行处理,在数据传输过程中网络首先是感知到数据的,所以在网络上可以对数据进行处理,网络变成了CPU的协处理器。网络可以进行数据处理的工作其实有很多,可以交给网络来做。Data Centrlc这样的解决方案,我们有很多 工具 来实现这样的功能。
RDMA可以用在哪几个方面呢?MPI、SHMEM、PGAS都可以支持,非常成熟。还有AI领域,现在几乎所有的框架都支持RDMA,当然还有大数据分析里面的spark、Hadoop,可以用RDMA,我们也有一些测试、例子,在高频交易、数据库、以及分布式数据库解决方案都可以用到RDMA解决方案,还有存储,包括文件系统,像常见的并行文件系统都可以支持RDMA。
这是简单的框架,“网络内计算”在AI里面有非常适合的应用场景,SHARP就是聚合类通信的软件,RDMA就是远程之间的访问。Mellanox两个产品线都可以支持RDMA,原生的InfiniBand RDMA效率是最高的,延时是最低的,如果是以太网RoCE,都可以支持到中间件,支持上面所列出的AI框架。尤其是多GPU环境里也有RDMA,可以实现从一个GPU到另一个GPU数据传输,而没有中间任何拷贝,也没有中间任何OS kernel负荷,这些技术都可以应用到上面。
SHARP是聚合类通信软件,客户提交MPI作业可能需要求平均值,求一个最小值甚至是逻辑操作,计算完再发送到所有核上操作,以前是CPU要做的,CPU负载非常高,现在我们交换机是可以支持的。
如果基于硬件来看的话,随着节点数量的增加,延时基本上实现是稳定的。相对于CPU做的话,延时基本上是很快的,大概有10倍的差距。如果是30—40微秒用CPU做的话,用SHARP做的话是3—4微秒。
以MiniFE有限元分析应用为例,基于CPU做和基于聚合类通迅做相对比,SHARP提升也还是非常明显的,有10—25倍的提升。提供不同行业的应用的最佳实践,可以帮助客户如何利用SHARP加速聚合类应用。
SHARP最早是HPC里用的非常多的,在AI特别是深度学习的数据并行的时候很多操作是跟HPC非常类似的,就是聚合类通信的操作。所以我们在AI里也可以用到SHARP,比如说是数据并行的应用模式。有很多Worker拿到模型之后需要做一些训练,会有一些节点梯度平均、梯度同步,同步完了之后要有一个参数服务器,更新的模型再发给Worker去训练,实际上就是这样一个操作。我们就可以用到SHARP这种技术。SHARP有两点,第一点可以极大的减少节点之间数据通讯,我们不需要从这个节点把数据传到另外一个节点,我们直接给交换机就可以了,交换机去做工作,这是减少节点间通信,尤其是对于AI训练的时候节点非常多的应用场景来说,效果是非常明显的。
另外SHARP可以极大的降低CPU的使用率,因为我们可以把CPU工作负载进行工作,AI里面也可以用到这样的技术。
目前我们已经正式发布了HDR,就是200G的交换机和网卡、线缆,EDR和HDR都可以支持SHARP功能,而且SHARP功能已经在目前最快的全球超级计算机里得到了很好的应用。
另外就是Tag Matching,一个点到另一个点传输数据的时候有一个Tag,需要匹配标签。以前都需要CPU去做,造成CPU的负载很大,现在Tag Matching可以跟网卡交换机做,这样对于小的信息或者大的信息都可以应用,可以极大的降低延迟和CPU的使用率。
降低CPU使用率对用户来说带来很多好处,不管在计算还是其他的应用场景里,都可以扩展到更多的核数。以前我们有这种经验,如果我们提交一个作业到64、128线程,性能都在增加,但是超过512线程之后性能就会下降了,其原因是CPU更多时间花在了数据通信上面,而用在计算的时间反而少了。优化之后CPU核利用率降低,计算时间很多,实际上Tag Matching可以很好的提升应用扩展能力,起到加速作用。
另外随着网络的规模越来越大,网络的可靠性要求非常高,如果网络有问题的话可能需要提交作业重新做。目前来说用CPR的技术来做,但是要消耗很多时间,尤其作业非常大的情况下是不可以接受的,所以可靠性就非常重要。如果一个端口、线断掉了,能不能不有任何影响,我们可以做到。
SHIELD是针对大规模网络里面可靠性的解决方案,以前网络断了交给子网管理器,去重新规划路径,这是软件方面来做。如果一千个节点,大概需要5秒钟,用户基本无法忍受,应用也会中断。但是如果我们通过SHIELD的功能硬件做网络收敛,不管是端口断了还是线断了,硬件自己解决。这基本上可以控制在毫秒级之内,交换机自动找另外一个端口,数据从A传送到B。可以有本地恢复的功能,也可以通过网络的方式把通知信息发给相邻的交换机,直到找到另外一条路,数据传过来就可以了。
这个功能完全是硬件实现,不需要软件支持,可以非常快的把网络恢复,不影响到应用。
GPUDirect RDMA/Async,很多场景都会用到它,InfiniBand卡可以直接注册、调用GPU的内存,通过网络来操作数据直接拷贝,使用起来也非常方便,也非常成熟。
这是一个比较,如果你用到RDMA和不用RDMA的差别还是很大的,从延时到带宽。
我们还有智能网卡,可以通过RDMA将数据和控制卸载在网卡上做。
网络内计算对性能提升来讲还是非常明显的,刚才提到了SHARP是10倍的提升。
Mellanox的网卡其中主要是基于整体解决方案,在AI框架里都得到了很好的应用,就不一一列举了。也有很多客户用到我们的解决方案。
这是目前最快的系统,实际上是全球真正的E级计算。用到了我们的交换机,其中用到了EDR,Dual-Rail是很好的技术,把两个网口可以提高到一个并行带宽。一个计算节点有42Tflops计算能力,最后两个网卡可以提供23GB/s的速度,来满足对高性能计算数据处理的要求。当然一些新的技术在这个项目里也用到了,比如说自适应路由,还有乱序包的处理,都可以提高网络的使用效率。
谢谢大家!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 网络爬虫直播观看总结(掘金直播第十期)
- 一文盘点直播技术中的编解码、直播协议、网络传输与简单实现
- 一文盘点直播技术中的编解码、直播协议、网络传输与简单实现
- 直播与 RTC 融合
- 直播协议
- 熊猫直播技术架构演进
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。