作者:诗颖

摘要:日前,英伟达 Developer Blog 上一篇博文详细陈述了英伟达 Volta Tensor Core GPU 在深度学习社群取得的巨大突破,以及种种突破背后的技术细节。

2017 年 5 月,在 GTC 2017 上,英伟达 CEO 黄仁勋发布 Volta 架构 Tesla V100,它被称为史上最快 GPU 加速器。2018 年 3 月,同样也是在 GTC 上,黄仁勋发布「全球最大的 GPU」——DGX-2,搭载 16 块 V100 GPU,速度达到 2 petaflops。

近年来,英伟达在高速计算之路上越走越快。日前,英伟达 Developer Blog 上一篇博文详细陈述了英伟达 Volta Tensor Core GPU 在深度学习社群取得的巨大突破,以及种种突破背后的技术细节。

正文如下:

由深度学习驱动的人工智能现在解决了曾一度被认为不可能的挑战,比如让计算机理解自然语言、进行对话以及自动驾驶。既然深度学习能如此有效地解决一系列挑战,随着算法复杂度呈现指数级增长,我们是否能将计算变得更快呢?基于此,英伟达设计了 Volta Tensor Core 架构。

为了更快地计算,英伟达与许多公司以及研究人员一样,一直在开发计算的软件和硬件平台。Google 是个典型的例子——他们的研究团队创建了 TPU(张量处理单元)加速器,当利用 TPU 进行加速时,在训练神经网络时可以达到优异的性能。

这篇文章中,我们分享了英伟达实现 GPU 巨大的性能提升后,在 AI 社群中取得的一些进步:我们已经在单芯片和单服务器上创造了 ResNet-50 的训练速度记录。最近,fast.ai 也宣布了他们利用英伟达 Volta Tensor Core GPU 在单个云实例上的创纪录表现 。

以下是我们的结果:

  • 在训练 ResNet-50 时,一个 V100 Tensor Core GPU 的处理速度能达到 1075 张图像/秒,与上一代 Pascal GPU 相比,它的性能提高了 4 倍。

  • 一个由 8 个 Tensor Core V100 驱动的 DGX-1 服务器的处理速度能达到 7850 张图像/秒,几乎是去年在同一系统上处理速度(4200 张图像/秒)的两倍。

  • 一个由 8 个 Tensor Core V100 驱动的 AWS P3 云实例可以在不到 3 小时内完成

    ResNet-50 的训练,比 TPU 实例快 3 倍。

图 1:Volta Tensor Core GPU 在训练 ResNet-50 时所取得的速度突破

英伟达 GPU 在对算法进行大规模并行处理时效果极好,因此它极其适合用于深度学习。我们一直都没有停止探索的脚步,Tensor Core GPU 是我们利用多年的经验和与世界各地的人工智能研究人员的密切合作,为深度学习模型创造的一种新的架构。

结合高速 NVLink 互连以及在当前所有框架内的深度优化,我们获得了最先进的性能。英伟达 CUDA GPU 的可编程性在这里也非常重要。

V100 Tensor Core 打破了单处理器的最快处理速度记录

英伟达 Volta GPU 中引入了 Tensor Core GPU 架构,这是英伟达深度学习平台的巨大进步。这种新硬件能加速矩阵乘法和卷积计算,这些计算在训练神经网络时占总计算的很大一部分。

英伟达 Tensor Core GPU 架构能够提供比功能单一的 ASIC 更高的性能,在不同工作负载下仍然具备可编程性。例如,每一个 Tesla V100 Tensor Core GPU 用于深度学习可以达到 125 teraflop 的运算速度,而 Google TPU 芯片只能达到 45 teraflop。包含 4 个 TPU 芯片的「Cloud TPU」可以达到 125 teraflop,相比之下,4 个 V100 芯片可以达到 500 teraflop。

我们的 CUDA 平台使每一个深度学习框架都能充分利用 Tensor Core GPU 的全部能力,加速诸如 CNN、RNN、GAN、RL 等各类神经网络,以及基于这些网络每年出现的成千上万个变种。

接下来是对 Tensor Core 架构的更深入讲解,大家可以在这里看到它独特的功能。图 2 显示了 Tensor Core 计算张量的过程,虽然存储是在低精度的 FP16 中,但是用精度更高的 FP32 来进行计算,可以在维持精度时最大化吞吐量。

图 2:Volta Tensor Core 矩阵乘法计算

随着最近的软件改进,目前在单个 V100 上训练 ResNet-50 的速度达到了 1360 张图像/秒。我们现在正努力将这一训练软件集成到流行的框架中,详情如下。

为了让性能最佳,基于 Tensor Core 进行张量操作的存储器布局应该为 channel-interleaved 型数据布局(Number-Height-Width-Channel,常被称为 NHWC),但往往默认是 channel-major 型数据布局(Number-Channel-Width-Height,通常称为 NCHW)。因此,cuDNN 库会在 NCHW 和 NHWC 之间执行张量转置操作,如图 3 所示。正如前面所提到的,由于卷积运算现在的速度非常快,所以这些转置操作占了总运行时间中相当大的一部分。

为了消除这些转置操作,我们直接用 NHWC 格式表示 RN-50 模型图中的每个张量,MXNet 框架支持这一功能。此外,对所有其他非卷积层,我们还将优化的 NHWC 实现添加到 MXNet 和 cuDNN 中,从而消除了训练过程中对张量转置的需求。

图 3:优化 NHWC 格式,以消除张量转置

另一个优化是基于阿尔达姆定律(并行计算中的加速比是用并行前的执行速度和并行后的执行速度之比来表示的,它表示了在并行化之后的效率提升情况),这一法则能预测并行处理的理论加速。由于 Tensor Core 显著地加速了矩阵乘法和卷积层的计算,因此在训练时对其他层的计算占据了总运行时间很大的一部分。我们可以确定这些新的性能瓶颈并进行优化。

如图 4 所示,数据会移动到 DRAM 或从 DRAM 中移出,因此许多非卷积层的性能会受到限制。可以利用片上存储器将连续的层融合在一起,避免 DRAM traffic。例如,我们在 MXNet 中创建一个图优化传递功能,以检测连续的 ADD 和 ReLu 层,只要有可能就将这些层替换成融合层。在 MXNet 中可以非常简单地使用 NNVM(神经网络虚拟机,Neural Network Virtual Machine)来实现这些类型的优化。

图 4 : 进行层融合操作,消除反复数据读/写

最后,我们继续为常见的各类卷积创建额外的专用 kernel,以进行优化。

我们目前正在将许多这种优化应用于多个深度学习框架之中,包括 TensorFlow、PyTorch 和 MXNet 。我们利用单个 Tensor Core V100 GPU 进行标准的 90-epoch 训练,基于在 MXNet 上做的改进,处理速度达到 1075 张图像/秒,与此同时,我们的训练与单精度训练一样达到了相同的 Top-1 分类精度(超过 75%)。我们在单机测试中的处理速度可以达到 1360 张图像/秒,这意味着性能还有很大的提升空间。可以在 NGC(NVIDIA GPU CLOUD)上利用 NVIDIA-optimized deep learning framework containers 实现性能的提升。

创纪录的最高单节点速度

多个 GPU 可以作为单节点运行,以实现更高的吞吐量。然而,在将多个 GPU 缩到单服务节点中工作时,需要 GPU 之间存在高带宽/低延迟通信路径。英伟达 NVLink 高速互连结构允许我们将 8 个 GPU 作为单服务器运行,实现性能扩展。这些大规模的加速服务器可以让深度学习的计算达到 petaflop 量级的速度,并且在云端和本地部署中都可以被广泛使用。

然而,虽然将 GPU 扩展到 8 个可以显著提高训练性能,但在这种框架下,主 CPU 执行其他工作时性能会受到限制。而且,在这种框架下,对连接 GPU 的数据管道性能要求极高。

数据管道从磁盘中读取编码的 JPEG 样例,然后再执行解码、调整图像大小、图像增强(如图 5 所示)操作。这些操作提高了神经网络的学习能力,从而提高了训练模型的预测准确性。而因为在训练时,有 8 个 GPU 在进行运算操作,这会限制框架的整体性能。

图 5:图像解码和增强数据管道

为了解决这个问题,我们开发了 DALI(Data Augmentation Library,数据扩充库),这是一个与框架无关的库,可以将计算从 CPU 转移到 GPU 上。如图 6 所示,DALI 将 JPEG 解码的一部分、调整图像大小以及其他所有增强操作移动到 GPU 上。这些操作在 GPU 上的执行速度要比在 CPU 上快得多,这缓解了 CPU 的负荷。DALI 使得 CUDA 的并行处理能力更加突出。消除 CPU 瓶颈之后,在单节点上的计算速度可以达到 7850 张图像/秒。

图 6:利用 DALI 优化工作负荷

英伟达正在帮助将 DALI 融入到所有主流人工智能框架中。这一解决方案有助于提升具备 8 个以上 GPU 的系统的性能,比如英伟达最近发布的带有 16 个 Tesla V100 GPU 的 DGX-2。

创纪录的单个云实例处理速度

我们使用单 GPU 和单节点运行来训练 ResNet-50(90 epoch),使预测准确率超过 75%。通过算法的创新和超参数调节,可以进一步减少训练时间,在更少的 epoch 下达到更高精度。GPU 具备可编程的特性,并支持所有深度学习框架,这使得 AI 研究者能够探索新的算法,并利用现有的算法进行研究。

fast.ai 团队最近分享了基于英伟达硬件的优秀成果,他们使用 PyTorch 在远小于 90 epoch 的训练下达到了很高的精确度。Jeremy Howard 和 fast.ai 的研究人员利用 8 个 V100 Tensor Core GPU,在一个 AWS P3 实例上用 ImageNet 训练 ResNet-50。他们对算法进行创新,调节了一系列超参数,不到 3 个小时就将模型训练好了,这比基于云实例的 TPU 计算(需要将近 9 个小时来训练 ResNet-50)快三倍。

我们进一步期望这一博客中描述的提高吞吐量的方法同样也适用于其他训练,例如前面提到的 fast.ai 的例子。

效果呈现指数级增长

自从 Alex Krizhevsky 利用两块 GTX 580 GPU 赢得了 ImageNet 比赛,我们在深度学习加速方面所取得的进步令人难以置信。Krizhevsky 当时花了 6 天时间来训练他的神经网络——AlexNet,这一网络在当时的表现优于所有其他的图像识别方法,引发了一场深度学习革命。我们最近发布的 DGX-2 可以在 18 分钟内训练好 AlexNet。从图 7 可以看到,在这 5 年多的时间里,随着硬件性能的提升,处理速度加快了 500 倍。

图 7:在  ImageNet 上训练 AlexNet 所需要的时间

Facebook 人工智能研究院(FAIR)开源了他们的语言翻译模型 Fairseq,在不到一年的时间里,我们基于 DGX-2 和软件栈的改进(见图 8),在训练 Fairseq 时实现了 10 倍的加速。

图 8:训练 Fairseq 所需要的时间

图像识别和语言翻译仅仅是研究人员用 AI 力量解决无数难题的用例之一。Github 上共有超过 6 万个使用 GPU 加速框架的神经网络项目,GPU 的可编程性为 AI 社群正在构建的所有类型的神经网络提供加速。我们的快速改进使得 AI 研究人员能够想象出更复杂的神经网络,以解决更困难的挑战。

这些长久的进步得益于我们对 GPU 加速计算的全堆栈优化算法。从构建最先进的深度学习加速器到复杂的系统(HBM、COWOS、SXM、NVSwitch、DGX),从先进的数字计算库和深度软件栈(cuDNN,NCCL,NGC) 到加速所有的 DL 框架,英伟达对 AI 的承诺为 AI 开发者提供了无与伦比的灵活性。

我们将继续优化整个堆栈,并持续实现性能的指数级提升,为 AI 社群提供推动深度学习创新研究的有力工具。

总结

AI 继续改变着各行各业,驱动出无数用例。理想的 AI 计算平台需要提供出色的性能,能支持庞大且不断增长的模型,并具备可编程性,以应对模型的多样性需求。

英伟达的 Volta Tensor Core GPU 是世界上最快的 AI 处理器,只用一块芯片就能让深度学习的训练速度达到 125 teraflop。我们很快会将 16 块 Tesla V100 整合到一个单服务器节点中,以创建世界上最快的计算服务器,提供 2 petaflops 的计算性能。

除了在加速上的优异性能,GPU 的可编程性以及它在云、服务器制造商和整个 AI 社群中的广泛使用,将带来下一场 AI 变革。

无论你选择什么深度学习框架(Caffe2, Chainer, Cognitive Toolkit, Kaldi, Keras, Matlab, MXNET, PaddlePaddle, Pytorch,TensorFlow),都可以用英伟达硬件进行加速。此外,英伟达 GPU 还用于训练 CNN、RNN、GAN、RL、混合网络架构以及每年基于这些网络的成千上万个变体。AI 社群中目前存在很多惊人的应用,我们期待着为 AI 的下一步发展提供动力。

未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能,互联网和脑科学交叉研究机构。

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

5 年提速 500 倍,英伟达 GPU 创纪录突破与技术有哪些?相关推荐

  1. 本周AI热点回顾:百度推出全球首个mRNA疫苗不稳定性解决方案、性能提升20倍:英伟达GPU旗舰A100

    01 百度推出全球首个mRNA疫苗不稳定性解决方案LinearDesign 新冠疫情爆发后,RNA设计领域世界知名专家.斯坦福大学生物化学系Rhiju Das教授关注到疫苗研发存在的一个非常棘手的问题 ...

  2. 本周AI热点回顾:十四五规划“人工智能第一!”;深度学习漫画第一卷现已开源;英伟达GPU“屠榜”MLPerf

    点击左上方蓝字关注我们 01 人工智能第一!十四五规划建议正式发布 近日,中国共产党第十九届中央委员会第五次全体会议深入分析国际国内形势后,就制定国民经济和社会发展「十四五」规划和2035年远景目标提 ...

  3. AMD与Intel,挑战英伟达GPU

    AMD与Intel,挑战英伟达GPU 作为CPU界的霸主,英特尔对高性能GPU市场一直没有死心.从1998年和Real3D合作推出的i740独显,到2009年无故流产的Larrabee独显,再到去年公 ...

  4. 薅资本主义羊毛新姿势,英伟达GPU免费用

    作者 | 阿司匹林 出品 | 人工智能头条(公众号ID:AI_Thinker) 在到处都是开源工具和学习资料的今天,深度学习的门槛已经大大降低.然而,学习的门槛降低并不意味着学习的成本降低了,比如说动 ...

  5. 英伟达GPU“屠榜”,谷歌TPU“退赛”,MLPerf最新推理榜单出炉

    晓查 发自 凹非寺  量子位 报道 | 公众号 QbitAI MLPerf推理基准测试第二版(v0.7)近日发布. 在数据中心分类下,英伟达2年前的推理卡T4依然能"大杀特杀",7 ...

  6. 系统英伟达gpu驱动卸载_绕过CPU,英伟达让GPU直连存储设备

    英伟达最近发布了一个新的GPUDirect Storage,暂且叫做GPU直连存储,让GPU直接连到NVMe存储设备上.这一方案用到了RDMA设备来把数据从闪存存储转移到GPU本地的内存里,无需经过C ...

  7. 玩深度学习选哪块英伟达 GPU?有性价比排名还不够!

    本文來源地址:https://www.leiphone.com/news/201705/uo3MgYrFxgdyTRGR.html 与"传统" AI 算法相比,深度学习(DL)的计 ...

  8. 英伟达速力NVIDIA SLI技术联姻Intel Sandy Bridge, 顶级游戏PC呼之欲出

    Intel.华硕.技嘉.微星以及EVGA等厂商将推出Sandy Bridge/P67主板,这些主板完全支持英伟达™速力™(NVIDIA® SLI®)多GPU技术 全新华擎P67/Sandy Bridg ...

  9. 谷歌TPU2代有望取代英伟达GPU?测评结果显示…

    原作:Elmar Haußmann 安妮 Root 编译自 RiseML Blog 量子位 出品 | 公众号 QbitAI 去年5月,谷歌推出了第二代TPU芯片,这是一个自定义开发的深度学习加速芯片, ...

最新文章

  1. python中np.multiply()、np.dot()和星号(*)三种乘法运算的区别
  2. 欧文分校计算机新sat多少分录取,加州大学欧文分校SAT成绩要求是多少?
  3. 5.2 TensorFlow:模型的加载,存储,实例
  4. 物料价格分析取未分摊和未分配价格差异
  5. 爱晚红枫的博客配色----绿野仙踪
  6. 打破信息孤岛完成EAI
  7. c语言链表编程作业,C语言编程入门——链表
  8. 面试官:Java中线程是按什么顺序执行的?
  9. Android 系统(113)----单机高概率问题处理方法
  10. 判别模型和生成模型(Discriminative Model Generative Model)【转】
  11. 编译OpenJDK8:Target CPU mismatch. We are building for x86_64 but CL is for ; expected x64
  12. wordpress中文主题problog1.0发布,主打简洁,商务
  13. UTM坐标系与GPS坐标系转换笔记
  14. 拼音搜索函数(C# and java)
  15. 对有序表进行折半查找的非递归算法
  16. 网页加载速度优化分析
  17. 数据库SQLite之嵌入式Linux实际网关项目使用初步
  18. Android 9,安卓开发项目实战
  19. 229. Majority Element II**
  20. 计算机网络安装维护经验,宽带维护经验和安装技巧

热门文章

  1. 独家 | 构建端到端数据科学项目,从我的Data Scientist Ideal Profiles项目中学习(附链接)...
  2. 手把手教你在Python中实现文本分类(附代码、数据集)
  3. 腾讯年终奖刷屏了...
  4. 7714天,王小川正式卸任搜狗CEO!用一瞬间定格永恒
  5. 登上更高峰!颜水成、程明明团队开源ViP,引入三维信息编码机制,无需卷积与注意力...
  6. Dropout也能自动化了,谷歌大神Quoc Le等人利用强化学习自动找寻模型专用Dropout...
  7. 图像也能做情感迁移?罗切斯特大学团队提出计算机视觉新任务
  8. 谷歌CEO皮查伊「美国版后浪演讲」:You Will Prevail,你们终将胜利
  9. 哈佛大学(2020)《CS50 Python人工智能入门》课程资料下载
  10. SAP QM初阶之事务代码QS28