找回密码
 立即注册
  • TA的每日心情
    开心
    2017-3-15 10:09
  • 签到天数: 39 天

    [LV.5]常住居民I

    发表于 2017-5-3 10:28:31
    2271
    NVIDIA DGX- 1 :速度最快的深度学习系统

    为庆祝DGX-1问世一周年,NVIDIA发布关于DGX-1系统架构的详尽新技术白皮书。此白皮书深入探讨了将DGX-1缔造成为深度学习训练最快平台的各种软硬件技术。本文将简要介绍这些技术,但详情还请阅读DGX-1白皮书,登录论坛,即可查阅本文附件-DGX-1白皮书

    NVIDIA在一年前宣布推出专为深度学习打造的集成系统NVIDIA®DGX-1™。DGX-1(如图1所示)具有通过NVLink(NVIDIA的一种高性能GPU互联技术)在混合数据立方体网格网络中连接8台Tesla P100 GPU加速器的能力。搭配双插槽Intel Xeon CPU和4个100 Gb InfiniBand网络接口卡,DGX-1为深度学习训练带来了前所未有的非凡性能。此外,DGX-1系统软件和功能强大管理库可以适时调整,以用于扩展Tesla P100 GPU网络中的深度学习,为有关生产和研究的深度学习应用提供灵活且可扩展的平台。
    图 1: NVIDIA DGX-1

    DGX-1 系统架构
    DGX-1是一种专为高吞吐量和高互联带宽而设计的深度学习系统,以实现神经网络训练的最佳性能。该系统的核心是一套与混合立方体网格NVLink网络拓扑相连的8个Tesla P100 GPU的集合体。除了8个GPU外,DGX-1还包括两个用于启动、存储管理和协调深度学习框架的CPU。DGX-1内置于三机架单元箱体中,具有供电、冷却、联网、多系统互联和SSD文件系统缓存等功能,可优化吞吐量和深度学习训练时间。图2显示了DGX-1系统的各部分组件。


    图 2︰DGX-1 系统组件

    NVLink是一种节能高效的高带宽互联技术,可支持NVIDIA Pascal GPU以每GPU 160 GB/s的双向总带宽,连接到节点中的对等GPU或其他设备,其速度约相当于目前PCIe Gen3 x16互联的五倍。NVLink互联和DGX-1架构的混合立方体网格GPU网络拓扑能在8个Tesla P100 GPU之间实现最高带宽的数据交换。

    Tesla P100的页面迁移引擎可在GPU和主机内存之间执行高带宽、低损耗的数据共享。为了扩展到多节点高性能集群,DGX-1通过InfiniBand(IB)网络提供了系统之间的高带宽。

    NVLink有效扩展深度学习

    图 3:Tesla P100 加速器

    为实现最大计算密度,DGX-1配备了8台NVIDIA Tesla P100加速器(参见图3)。当前,PCIe互联阻碍了许多高度并行GPU的应用扩展。NVLink提供了在深度学习和其他应用程序中,实现良好弱扩展和强扩展所需的通信性能。每个Tesla P100 GPU都具有四个NVLink连接点,每个连接点在20 GB/s的峰值带速下与另一个GPU进行点对点连接。多个NVLink连接可以绑定在一起,从而在一对GPU之间实现多路互联带宽。最终,NVLink成就了灵活互联性,以便在多个GPU之间构建各种网络拓扑。此外,Pascal还支持16路PCIe 3.0,从而连接DGX-1中的CPU和GPU。PCIe也可用于高速网络接口卡。

    专为DGX-1设计的NVLink网络拓扑结构旨在优化诸多因素,包括各种点对点和集体通信原语所需的带宽、高灵活拓扑和具备GPU子集的卓越性能。混合立方体网格拓扑(参见图4)可被视为一个拐角处设有GPU的立方体,同时所有十二个边缘都通过NVLink连接,六个面中的两个面有对角线连接。它也可以被认为是单个NVLink连接的两个交织环。

    图4:DGX-1采用8-GPU混合立方体网格互联网络拓扑结构。立方体网状连接面的各个拐角都连接到PCIe树网络,PCIe树网络也与CPU和NIC相连。

    图5显示了DGX-1的深度学习训练性能和扩展。图5中的柱状条表示借助Microsoft Cognitive Toolkit(CNTK),ResNet-50深层神经网络架构每秒图像的训练性能;而线条则代表与单个GPU相比,2、4或8台P100 GPU并行加速的效果。在测试时,每个GPU最小配置为64个图像。

    图5:DGX-1(弱)扩展结果和性能,使用单个GPU批量大小为64的Microsoft Cognitive Toolkit(CNTK)对ResNet-50神经网络架构进行训练。柱状条表示利用NVLink在DGX-1上进行一台、两台、四台和八台Tesla P100 GPU之间的通信(浅绿色显示),与使用八台Tesla P100 GPU和PCIe通信(深绿色显示)的现有系统进行性能对比的结果。与单个GPU相比,图中线条呈现加速趋势。配备8台GPU的NVLink比PCIe的训练性能超出约1.4倍(1513张图像/秒与1096张图像/秒)。测试使用NVIDIA DGX容器版本16.12,通过cuDNN 6.0.5和NCCL 1.6.1处理实际数据,gradbits = 32。

    如图5所示,在将PCIe(树形拓扑)上的1、2、4和8台 GPU的深度学习训练与DGX-1的8-GPU混合立方体网格NVLink互联进行比较时,NVLink的优点显然易见。NVLink在4x和8x测试案例中毫无悬念地更胜一筹。其中,DGX-1以PCIe难以企及的方式聚合了多个NVLink连接,相比PCIe将总体速度提升近1.4倍。较之其他NVLink网络配置(如:环形拓扑),DGX-1架构的NVLink互联不仅可以实现比PCIe更好的扩展性,而且NVLink混合立方体网格网络拓扑更是为深度学习提供了最佳的整体扩展。

    面向DGX-1 多系统扩展的无限带宽
    最新计算工作负载的多系统扩展性尤其适用于深度学习,主要依靠系统内外多个GPU之间的强大通信,以支持各个系统的出色GPU性能。除了用于GPU之间高速内部通信的NVLink之外,DGX-1还利用Mellanox ConnectX-4 EDR InfiniBand端口在各系统间提供超大带宽并减少瓶颈。DGX-1采用的最新无限带宽标准EDR IB端口可实现以下功能:

    • 每个端口共有8个数据通道,总运行速度为25 Gb/s或200 Gb/s(同时包括4个100 Gb/s内通道及4个100 Gb/s外通道);


    • 低延迟通信和内置原语和集合,以加速涵盖多个系统的大规模计算;


    • 高性能网络拓扑支持,可同时实现多个系统之间的数据传输,且端口争用最低;


    • 适用于无限带宽的NVIDIA GPUDirect RDMA可在多个系统GPU之间直接传输。

    DGX-1拥有四个EDR IB端口,速度达到800 Gb/s(系统内外同时各提供400 Gb/s),以用于构建DGX-1系统的高速集群。四个EDR IB端口将平衡帧内和节点间的带宽,并在某些案例中完全用于节点间通信。与典型的网络技术(如:以太网)相比,InfiniBand即使在大型多系统集群中也能提供20倍的带宽和降低4倍的延迟率(详见技术白皮书)。

    最新的DGX-1多系统集群采用基于胖树拓扑网络,以提供单个系统与其它系统之间路由完善的可预测、无争用通信(参见图6)。胖树拓扑是一种呈树状结构的网络拓扑,叶片上的系统通过多个交换机级别连接到中央顶层交换机。胖树中的每个级别具有提供相等带宽的相同数量链路。胖树拓扑结构确保了在计算和深度学习应用中常见的全对全或全集合的最高通信平分带宽和最低延迟。


    图 6︰面向深度学习的124 DGX-1多系统集群示例

    DGX-1软件
    既有的DGX-1软件可以大规模地展开深度学习。主要目标在于协助操作者以最少的设置在DGX-1中部署深度学习框架和应用程序。平台软件的设计原则集中于在服务器上安装最小的操作系统和驱动,并通过NVIDIA维护的 DGX 容器注册表在NVIDIA Docker容器中提供所有应用和软件开发工具包。可用于DGX-1的容器包括多个经优化的深度学习框架、NVIDIA DIGITS深度学习训练应用、第三方加速解决方案和NVIDIA CUDA工具包。图7显示了DGX-1深度学习软件堆栈。

    图 7︰DGX-1 深度学习软件堆栈

    DGX-1 软件堆栈包括下列主要组件:

    • NVIDIA CUDA工具包,详情请阅读CUDA Toolkit 8.0版本新功能;


    • NVIDIA Docker是当前流行的Docker集装箱引擎封装产品,可透明提供容器,且内含必要组件,用以执行GPU代码。


    • NVIDIA 深度学习软件开发工具包可为设计和部署GPU提供加速的深度学习应用程序提供强大的工具和数据库。它包括深度学习原语(cuDNN)、知识推理(TensorRT)、视频分析、线性代数(cuBLAS)和稀疏矩阵(cuSPARSE)等;


    • NVIDIA集成通信库(NCCL,发音为“Nickel”)是一个支持拓扑的多GPU集成通信原语库。面向DGX-1的NVIDIA Docker容器包含一个NCCL版本,可用于优化DGX-1架构中的8-GPU混合立方体网格NVLink网络集合。


    • DGX-1深度学习框架,NVIDIA深度学习软件开发工具包加速了广泛应用的深度学习框架,如:Caffe、CNTK、MXNet、TensorFlow、Theano和Torch。 DGX-1软件堆栈可为以上框架提供经过优化的集装箱版本。这些框架包括所有必要的依存关系,均预先构建、经过测试且随时可以运行。对于需要更大灵活性来建立自定义深学习解决方案的用户,每个框架集装箱图像还包括框架源代码,以支持自定义修改和增强功能,以及完整的软件开发栈。


    DGX-1 实现深度学习的最佳性能
    DGX-1在训练流行深层神经网络的出色性能表现,充分体现了深度学习综合系统的价值。图8中的曲线图显示,利用Microsoft Cognitive Toolkit、TensorFlow和Torch的ResNet-50和ResNet-152深层神经网络,与具有相同GPU的现有系统相比,DGX-1的训练明显更快了。该图说明了以下两大优点:

    • DGX-1中的P100 GPU相比深度学习的上一代NVIDIA Tesla M40 GPU具有更高吞吐量。


    • 相比通过PCIe互联的8台Tesla P100 GPU同类系统,DGX-1性能明显更高。




    图8:采用所有8台Tesla P100s 的DGX-1深度学习训练与通过PCI-e互联,基于流行的CNTK(2.0 Beta5)TensorFlow(0.12-dev)和Torch(11-08-16)深度学习框架部署ResNet-50和Resnet-152深层神经网络架构的8台Tesla M40和Tesla P100系统进行对比。该训练针对ResNet-50采用32位浮点运算,总批量规模为512位;同时针对ResNet-152的批量规模为128位。其他软件包括NVIDIA DGX容器版本16.12、NCCL 1.6.1、CUDA 8.0.54、cuDNN 6.0.5和Ubuntu 14.04。 NVIDIA Linux显示驱动程序为375.30。 8x M40和8x P100 PCIe服务器具有双英特尔至强Xeon E5-2698v4 CPU和256GB DDR4-2133 RAM(DGX-1具有512GB DDR4-2133)的SMC 4028GR。

    DGX-1的高性能部分归功于互联在8台Tesla P100 GPU之间的NVLink混合立方体网格,但还并不止这些。DGX-1的许多性能优势源自其是一个集成系统,具有针对深度学习的完整软件平台。这包括深度学习框架优化,例如NVIDIA Caffe、cuBLAS、cuDNN和其他GPU加速库中的优化,以及通过NCCL进行的NVLink协调集体通信。该集成软件平台与Tesla P100和NVLink完美结合,确保DGX-1远远优于同类现有系统。

    NVIDIA DGX-1技术白皮书包含有关DGX-1的系统架构、平台软件和性能的更多细节。
    登录论坛马上查看NVIDIA DGX-1 技术白皮书。


    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    使用道具 举报 回复
    发表于 2017-5-3 14:01:57
    DGX-1 实现深度学习的最佳性能
    DGX-1在训练流行深层神经网络的出色性能表现,充分体现了深度学习综合系统的价值。图8中的曲线图显示,利用Microsoft Cognitive Toolkit、TensorFlow和Torch的ResNet-50和ResNet-152深层神经网络,与具有相同GPU的现有系统相比,DGX-1的训练明显更快了。该图说明了以下两大优点:
    • DGX-1中的P100 GPU相比深度学习的上一代NVIDIA Tesla M40 GPU具有更高吞吐量。


    • 相比通过PCIe互联的8台Tesla P100 GPU同类系统,DGX-1性能明显更高。



    图8:采用所有8台Tesla P100s 的DGX-1深度学习训练与通过PCI-e互联,基于流行的CNTK(2.0 Beta5)TensorFlow(0.12-dev)和Torch(11-08-16)深度学习框架部署ResNet-50和Resnet-152深层神经网络架构的8台Tesla M40和Tesla P100系统进行对比。该训练针对ResNet-50采用32位浮点运算,总批量规模为512位;同时针对ResNet-152的批量规模为128位。其他软件包括NVIDIA DGX容器版本16.12、NCCL 1.6.1、CUDA 8.0.54、cuDNN 6.0.5和Ubuntu 14.04。 NVIDIA Linux显示驱动程序为375.30。 8x M40和8x P100 PCIe服务器具有双英特尔至强Xeon E5-2698v4 CPU和256GB DDR4-2133 RAM(DGX-1具有512GB DDR4-2133)的SMC 4028GR。

    DGX-1的高性能部分归功于互联在8台Tesla P100 GPU之间的NVLink混合立方体网格,但还并不止这些。DGX-1的许多性能优势源自其是一个集成系统,具有针对深度学习的完整软件平台。这包括深度学习框架优化,例如NVIDIA Caffe、cuBLAS、cuDNN和其他GPU加速库中的优化,以及通过NCCL进行的NVLink协调集体通信。该集成软件平台与Tesla P100和NVLink完美结合,确保DGX-1远远优于同类现有系统。


    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    使用道具 举报 回复 支持 反对
    发新帖
    您需要登录后才可以回帖 登录 | 立即注册

    zzczczxczxczx