3月23日起,智东西联合NVIDIA推出「实战营」第一季,共计四期。第三期于4月13日晚8点在智东西「智能安防」系列社群开讲,由西安交通大学人工智能与机器人研究所博士陶小语、NVIDIA高级系统架构师易成二位讲师先后主讲,主题分别为《智能监控场景下的大规模并行化视频分析方法》和《NVIDIADGX-2驱动智能监控革命》。
NVIDIA在GTC大会上发布了新一代超级计算机DGX-2,在两块独立的GPU板卡上配备了16块TeslaVGPU,每块V拥有32GBHBM2显存(共GB),并且采用12个NVSwitch将16块GPU采用全线速互联的方式连接,使得任意两块GPU之间P2P总带宽都是GB,处理器采用了两颗英特尔至强PlatinumCPU,而存储方面则配置了1.5TB的标准内存,采用30TB的NVMeSSD,提供了更大的缓存空间,能够实现每秒2千万亿次浮点运算(2PFLOPS),性能比去年9月推出的DGX-1性能提高了10倍。
本文为NVIDIA高级系统架构师易成的主讲实录,共计字,预计7分钟读完。在浏览主讲正文之前,先了解下本次讲解的提纲:
-NVIDIADGX服务器的特点和在深度学习方面的优势
-NVIDIAP和V的深度学习计算性能对比分析
-VGPU的新特性及加速库的应用
智东西「实战营」第一季第一期由图玛深维首席科学家陈韵强和NVIDIA高级系统架构师付庆平,分别就《深度学习如何改变医疗影像分析》、《DGX超算平台-驱动人工智能革命》两个主题在智东西旗下「智能医疗」社群进行了系统讲解。第二期由NVIDIA深度学习学院认证讲师侯宇涛主讲,主题为《手把手教你使用开源软件DIGITS实现目标检测》。第四期是在智东西旗下「高性能计算」社群开讲,主题为《GPU加速的实时空间天气预报》,主讲老师为清华大学计算机系副教授都志辉、NVIDIA高级系统架构师易成。
主讲环节
易成:大家晚上好,我是NVIDIA的系统架构师易成,今天讲解的主题是《NVIDIADGX-2驱动智能监控革命》,前面陶老师的介绍非常精彩,我给大家讲解下GPU和DGX相关的技术,做深度学习和智能安防相关的同僚,可以多留意一下。
首先NVIDIA的产品主要运用在这三个领域:
1、GPU计算卡,主要做深度学习和高性能计算等,属于Tesla系列,是专业级的产品;
2、图形显卡,用于做电脑的图形显示、图形渲染等,属于GeForce、Titan系列,是消费级的产品;
3、Tegra系列,用于智能终端机器人,自动驾驶领域,是嵌入式的产品。
自从NVIDIA年发布CUDA以来,GPU计算已经走过了十年的历程,从早期的HPC计算到现在广泛应用的人工智能深度学习领域,GPU的性能越来越高,功能也越来越丰富,使用的领域也越来越广。
GPU计算在视频编解码、图像识别、智能视频监控、语音识别、自然语言处理等领域都有广泛的应用,陶老师前面已经做了非常详细的介绍,这方面我就不多说了。
GPU的计算能力已经很强了,但是要解决现实中的问题,一块GPU或者一台八卡的GPU服务器是远远不够的,很多人工智能的应用都需要大规模的GPU集群进行计算,比如百度的语音识别系统,其网络模型的参数达到3亿个,需要20亿亿次计算量,谷歌的自然语言翻译系统有87亿个参数,大约需要亿亿次的计算量,这些都需要大规模的GPU集群。
刚才陶老师介绍了P做视频监控的应用,现在我们看一下P和V的性能比较。从理论峰值来看,V的混合精度性能可以达到TFLOPS,比P提升了十倍多,这是因为V里面增加了新的计算核心Tensorcode,而P是没有的。Tensorcode可以支持FP16和FP32的混合乘加计算,适合做深度学习的Training(训练)和Inference(推理)。
这张图展示了V和P做深度学习Training和Inference的性能对比,加速效果还是非常明显的,V相对PTraining速度提升了2.4倍,Inference速度提升了3.7倍。
这张图展示的是在DGX-1平台上V和P在不同的深度学习框架上做Training(训练)的性能对比,最少的是PyTorch,提升了2.4倍,最多的是MXNet,提升了3.1倍。
V是去年发布的,只有16GB的显存。今年3月份NVIDIA发布了新的V,显存提升了一倍,增加到了32GB。虽然其他性能参数没有变化,但是显存增加一倍,也能给深度学习计算带来显著的性能提升。数据从主机内存加载到GPU显存一直是GPU计算性能提升的一个瓶颈,现在32GB的显存可以加载更多数据,降低了数据I/O(输入输出)的开销。
这张图上就是最新的VGPU,显存是32GB,其他参数现在没有什么变化。
32GB的V也有NVLink和PCIE两种版本,除了显存提升到32GB之外,其他参数和原来的V相比也没有什么变化。
前面我们介绍了GPU和32GB的VGPU。下面我们来看一下DGX服务器,首先我们看一下DGX-1,一台DGX-1包含8块NVLinkVGPU,两颗Xeon处理器,GB内存,4个GBInfiniBandEDR网口,8TBSSD本地存储空间,一共有4个W电源,系统功耗是W,8个NVLinkGPU采用立方体结构的互联方式,这种方式并不能保证任意两块GPU之间的速率都是相同的,且任意两块GPU之间P2P带宽小于GB/s。
由于DGX-1GPU互联采用立方体的架构,GPU之间的P2P带宽并不能达到GB的理想速度,因此今年NVIDIA发布了新产品DGX-2,它的超强性能将不负众望。这款产品今年第三季度可以供货,DGX-2是一款标准机架式服务器,功耗10千瓦,因此对机柜的供电和散热会有一定的要求。
这是DGX-2的内部架构,和DGX-1相比,配置大幅度提升,首先是16块32GB的VGPU,12个NVSwitch,16块GPU采用全线速互联的方式,任意两块GPU之间P2P总带宽都是GB。CPU采用Intel最新的铂金版CPU,配置1.5TB主机内存,比DGX-1提升3倍,8个GBIB网卡,30TBNVMESSD提供了更大的缓存空间。
上图展示的是18端口的NVSWITCH交换机,每个端口是50GB的双向总带宽,NVSWITCH包含20亿个晶体管,是目前速度最快的交换机。
这是DGX-2内部GPU互联的架构图,DGX-2有12个NVSWITCH,每个GPU主板上有6个NVSWITCH,将16个GPU全部互联起来,我们知道每个GPU上有6个NVLink通道,每个通道连接一个NVSWITCH,所以每个GPU会和主板上的6个NVSWITCH互联,每个GPU主板上有8个GPU,所以每个NVSWITCH会有8个NVLink通道进来,也有8个NVLink通道出去,连接到NVBridge的背板上,也就是图中的中间桥梁部分,每个GPU主板的NVSWITCH共有48个NVLink接到背板上,因此背板的总带宽是2.4T每秒。
这里我们要了解两个概念,一个是NVSWITCH,一个是NVBridge,GPU和NVSWITCH相连,NVSWITCH和NVBridge相连。
这是一台DGX-2和两台DGX-1的性能比较。一台DGX-2和两台DGX-1的GPU数量是相等的,但是两台DGX-1的CPU资源比一台DGX-2的资源多一倍,我们发现运行物理学、气象、深度学习的应用时,DGX-2最少可以实现两倍的加速。
现在我们小结一下NVIDIA的产品线,现在NVIDIA有DGX的服务器,DGX工作站DGXStation,DGXStation是水冷散热,静音效果非常好。服务器和工作站都可以支持32GBV,还有用于做Inference的P4GPU,P4可以支持Int8数据类型。除此之外,我们还有用于自动驾驶的DrivePX2和嵌入式产品JetsonTX1。
如果是做GPU计算的朋友,可能对这个GPU计算平台的架构比较熟悉了,我们现在已经建立起了比较完善的GPU计算生态系统,可以用的工具非常多,有大量的GPU计算APP,如果我们要做开发的话,可以得到非常多的GPU加速计算工具和相关的资料,程序移植也比较方便,也有很多封装好的支持GPU的框架平台可以使用。
这里我想给大家介绍的是容器工具,DGX服务器中已经集成了容器平台NVIDIA-Docker和主流的深度学习框架。NVIDIA-Docker容器引擎是开源的软件,大家都可以下载使用。NVIDIA-Docker原生的Docker相比可以更好地调用GPU,也更稳定。和直接在物理机上运行软件相比,使用容器省去了软件安装、编译和部署的过程,避免软件依赖和兼容性的问题,节省了大量的时间,性能损失也非常小,一般容器的运行只有3%左右的损失。
下面给大家介绍一下NVIDIA的NGC平台,这是一个可以免费注册的平台,在NGC平台,大家可以下载各个版本的DeepLearning深度学习框架的容器镜像、开源的HPC应用软件容器镜像以及可视化软件的容器镜像,即使你不想使用容器,这个平台也是非常有用的,你可以将容器中编译安装好的软件拷贝到物理机上运行,可以省去你软件安装、编译和部署的时间。
最后介绍一下Inference(推理)软件TensorRT4.0,这是今年新发布的一个版本,和3.0版本相比,增加了RNN、MLP层的支持,也可以支持ONNX格式文件等功能。现在已经可以点击图上链接下载,欢迎大家使用。
我的演讲到这里就结束了,谢谢大家。
QA环节
问题一
雷晨雨-平安科技-深度学习算法工程师
有没有在imagenet数据集上做过完整的训练性能比对,比8卡titanXP快多少,或者其他的性能比较?
易成:很多用户都关心这个问题,经常会问我们P、V和Titan的性能比较怎么样,由于P和V是我们Tesla系列的产品,属于专业级别的GPU卡,TITAN和GeForce都属于消费级的产品,有些消费级的GPU,还有非公版的产品,有些GPU甚至会牺牲寿命来将主频调高,所以我们不会和这两类产品做对比,但是二者的功能和性能区别还是挺多的,大家可以对比一下,我这里找到了一个网上的文章,可以分享给大家看看NVIDIAGPU—Tesla和GeForce的比较: