Yu (Emma) Wang Gu-Yeon Wei David Brooks作家Nurhachu Null 张倩编译

TPU、GPU、CPU深度进修平台哪家强?有人做了一个基准测试研讨

GPU、TPU、CPU 都可以用于深度进修模子的教练,那么这几个平台各适用于哪种模子,又各有哪些瓶颈?本文中,来自哈佛的研讨者计划了一个用于深度进修的参数化基准测试套件——ParaDnn,旨系统地对这些深度进修平台举行基准测试。

ParaDnn 可认为全连接(FC)、卷积(CNN)和轮回(RNN) 神经收集生成端到端的模子。研讨者运用 6 个实行模子对谷歌的云 TPU v2/v3、英伟达的 V100 GPU、以及 英特尔的 Skylake CPU 平台举行了 基准测试。他们深化研讨了 TPU 的架构,揭示了它的瓶颈,并要点先容了可以用于未来专业系统计划的珍贵体验。他们还供应了平台的厉密临比,发明每个平台对某些类型的模子都有本人奇特的优势。着末,他们量化了专用的软件堆栈对 TPU 和 GPU 平台供应的疾速功用改良。

  • 论文:Benchmarking TPU, GPU, and CPU Platforms for Deep Learning

  • 论文链接:https://arxiv.org/pdf/1907.10701.pdf

常用硬件及基准都有啥

TPU v2 发布于 2017 年 5 月,它是一款定制的专用集成电道(ASIC)。每个 TPU v2 配备可以单板上供应 180 TFLOPS 的峰值算力。一年之后 TPU v3 发布,它将峰值功用进步到了 420 TFLOPS。云 TPU 于 2018 年 2 月开端供应学术拜访权限。这篇论文中运用的便是云 TPU。

英伟达的 Tesla V100 Tensor Core 是一块具有 Volta 架构的 GPU,于 2017 年发布。

CPU 曾经被标明某些特定的用例中会更加适合教练,于是它也是一个主要的平台,应当被包罗比较实质中。

这项研讨外明,没有一个平台所有的场景中是最佳的。基于它们各自的特性,差别的平台可认为差别的模子供应优势。另外,因为深度进修模子的疾速改良和改造, 基准测试也必需继续更新并常常举行。

近来的 基准测试仿佛都范围于恣意的几个 DNN 模子。只盯着出名的 ResNet50 和 Transformer 等模子可以会取得误导性的结论。比如,Transformer 是一个大型的全连接模子,它 TPU 上的斗嗽糍度比 GPU 上速了 3.5 倍;可是,体恤这一个模子并不行揭示 TPU 超越 4000 个节点的全连接收集上呈现的告急的内存带宽瓶颈。这凸显了为某些模子去过分优化硬件和(或)编译器的损害。

新一代硬件基准测试

为了对最先辈的深度进修平台举行 基准测试,这篇论文提出了一个用于教练的深度进修模子汇合。为了支撑广泛和厉密的 基准测试研讨,研讨者引入了 ParaDnn 这一参数化的深度进修 基准测试组件。ParaDnn 可以无缝地生成数千个参数化的众层模子,这些模子由全连接(FC)模子、卷积 神经收集(CNN)以及轮回 神经收集(RNN)构成。ParaDnn 容许对参数范围近乎 6 个数目级的模子上举行系统 基准测试,这曾经超越了现有的 基准测试的范围。

研讨者将这些参数化模子与 6 个实行模子联合起来,举措广泛模子范围内的奇特性,以供应对硬件平台的厉密 基准测试。外 1 总结了本文中描画的十 14 个察看结果和睹地,这些察看和睹地可认为未来的特定范畴架构、系统和软件计划供应启示新闻。

外 1:本文部分分组的主要察看和睹地总结

研讨者特别标记了通过 ParaDnn 取得的睹地。他们从论文第 4 部分开端对 TPU v2 和 v3 的架构举行深化议论,揭示了算力中的架构瓶颈、内存带宽、众片负载以及配备-主机均衡(第 1 到 5 个察看)。论文第五部分供应了 TPU 和 GPU 功用的厉密比较,特出了这两个平台的主要区别(第 6 到第 11 个察看)。着末的 3 个察看论文第六部分有精细描画,议论了专用软件堆栈和量化数据类型带来的功用改良。

明晰本研讨的范围性十分主要。这篇论文着重研讨了目前的架构和系统计划中可以优化的可以性,因为它们为未来的计划供应了珍贵的体验。优化的细节不属于本文的研讨范围。比如,本文的剖析只聚焦于教练而不是推理。作家没有研讨众 GPU 平台或 256 节点 TPU 系统的功用,二者可以会导致差别的结论。

深度进修基准测试

深度进修(DL)近来的成功驱动了关于 基准测试组件的研讨。现有的组件主要有两品种型:一是像 MLPerf,、Fathom、BenchNN、以及 BenchIP 这种实行的 基准测试;二是 DeepBench、BenchIP 这类微 基准测试,可是它们都有必定的范围。

这些组件仅包罗本日已有的深度进修模子,跟着深度进修模子的疾速开展,这些模子可以会过时。而且,它们没有揭示深度进修模子属性和硬件平台功用之间的深化睹地,因为 基准测试只是庞大的深度进修空间中的希罕点罢了。

ParaDnn 对这项研讨现有的 基准测试组件做出了增补,它具有以上这些方法的优点,目标是供应「端到端」的、可以涵盖现有以及未来运用的模子,而且将模子参数化,以探究一个更大的深度 神经收集属性的计划空间。

 图 1:这篇作品中所有负载的可教练参数的数目。ParaDnn 中的模子参数范围 1 万到接近十亿之间,如图所示,它要比实行模子的参数范围更大,如图中的点所示。

硬件平台

作家对硬件平台的挑选反又厮论文提交时,云平台上广泛可用的最新配备。模子的精细目标外 3 中。

外 3:举措研讨对象的硬件平台

实行图外

图 2(a)–(c) 外明,这三种方法的 FLOPS 应用率是跟着 batch size 的增大而增大的。除此除外,全连接收集的 FLOPS 应用率跟着每层节点数的添加而增大(图 2(a));卷积 神经收集的 FLOPS 应用率跟着滤波器的添加而增大,轮回 神经收集的 FLOPS 应用率跟着嵌入尺寸的增大而增大。图 2(a)–(c) 中的 x 轴和 y 轴是图 2(d)–(f) 中具有最大绝对值的超参数。

图 2:FLOPS 的应用率及其与超参数的相关性。(a)–(c) 外示参数化模子的 FLOPS 应用率。(d)–(f) 运用线性回归权重量化了模子超参数对 FLOPS 应用率的影响

图 3:全连接收集和卷积神经收集 TPU 上的 Roofline。矩阵相乘(MatMul)运算的负载是盘算鳞集型的。即使是 Transformer 和 ResNet-50 如许的盘算鳞集型模子也具有 10% 以上的内存限制运算。(a) 和 (c) 展现了参数化模子和实行模子的 roofline。(b) 和 (d) 展现了运算的剖析。

图 4:众片系统中的通信开销是不行疏忽的,可是它会跟着 batch size 的增大而减小。

图 5:FLOPS 应用率(顶部)和运用 float32 和 bfloat16 的实行模子具有以及没稀有据准备状况下的喂料时间(配备等候数据的时间)(底部)。具有较大喂料时间百分比的模子(比如 RetinaNet 和 SqueezeNet)会受到数据喂入的限制。

 图 6:(a) 是 TPU v3 运转端到端模子时与 v2 比较的加速比。(b) 和 (c) 是全连接和卷积神经收集的加速比。TPU v3 更大的内存支撑两倍的 batch size,以是假如它们具有更大的 batch size,内存受限的运算会具取得三倍加速,假如没有更大的 batch size,则是 1.5 倍的加速。 v3 上盘算受限的运算具有 2.3 倍的加速。血色的线 (75 Ops/Byte) 是 TPU v2 的 roofline 的拐点。

 

图 7:具有固定层(64)的全连接模子的 Examples/second(样本/秒)。Examples/second 跟着节点的添加而减小,跟着 batch size 的增大而增大。白色方块外示模子碰到了内存缺乏的题目。CPU 平台运转最大的模子,因为它具有最大的内存。

 图 8:具有大 batch size 的小型全连接模子更偏好 TPU,具有小 batch size 的大型模子更加偏好 GPU,这意味着紧缩阵列对大型矩阵更好, GPU 上对小型矩阵做变换更加灵敏。

图 9:比较于 CPU,具有大 batch size 的大型全连接模子更适合 GPU,因为 CPU 的架贡ボ够更好地应用分外的并行。

 

图 10:(a)–(c):对大型卷积神经收集而言,TPU 是比 GPU 更好的挑选,这意味着 TPU 是对卷积神经收集做了高度优化的。(d)–(e):尽管 TPU 对 RNN 是更好的挑选,可是关于嵌入向量的盘算,它并不像 GPU 相同灵敏。

图 11:(顶部)所有的负载上 TPU 相对 GPU 的加速比。需求当心的是,实行负载 TPU 上会运用比 GPU 上更大的 batch size。ResNet-50 的英伟达 GPU 版本来自于文献 [9]。(底部)所有平台的 FLOPS 应用率比照。

图 12:(a)TPU 功用跟着 TensorFlow 版本更械愧生的改造。所有的 ParaDnn 模子都有晋升:Transformer, RetinaNet, 和 ResNet-50 晋升稳定。(b)CUDA 和 TF 的差别版本上 GPU 的加速比。CUDA 9.2 对卷积神经收集的晋升要比其他 ParaDnn 模子更众,对 ResNet-50 的晋升要比其他实行模子更众。CUDA 10 没有晋升 RNN 和 SqueezeNet。

初学深度进修智能芯片智能科研基准CPUGPUTPU
2
相关数据
英特尔机构

英特尔是盘算立异范畴的举世领先厂商,努力于拓展科技疆界,让最精美体验成为可以。英特尔创始于1968年,已具有近半个世纪产物立异和引颈墟市的体验。英特尔1971年推出了天下上第一个微处理器,厥后又增进了盘算机和互联网的革命,改动了通通天下的历程。现在,英特尔正转型成为一家数据公司,订定了分明的数据计谋,依靠云和数据中心、物联网、存储、FPGA以及5G构成的增加良性轮回,供应独到代价,驱动日益开展的智能互联天下。英特尔笃志于技能立异,同时也主动支撑中国的自助立异,与财产伙伴联袂促进智能互联的开展。基于明晰的数据计谋和智能互联全栈气力,英特尔瞄准人工智能、无人驾驶、5G、精准医疗、体育等要害范畴,与中国深度协作。面向未来,英特尔努力于做中国高代价协作伙伴,新科技、新经济、新消费三个方面,出力驱动财产协同立异,为实体经济增值,增进消费升级。

https://www.intel.com/content/www/us/en/company-overview/company-overview.html
相关技能
基准技能

一种简单的模子或启示法,用作比较模子效果时的参考点。基准有帮于模子开辟者针对特定题目量化最低预期效果。

神经收集技能

(人工)神经收集是一种根源于 20 世纪 50 年代的监视式板滞进修模子,那时分研讨者念象了「感知器(perceptron)」的念法。这一范畴的研讨者一般被称为「勾结主义者(Connectionist)」,因为这种模子模拟了人脑的功用。神经收集模子一般是通过反向传达算法运用梯度下降教练的。目前神经收集有两大主要类型,它们都是前馈神经收集:卷积神经收集(CNN)和轮回神经收集(RNN),此中 RNN 又包罗好坏期记忆(LSTM)、门控轮回单位(GRU)等等。深度进修是一种主要运用于神经收集帮帮其取得更好结果的技能。尽管神经收集主要用于监视进修,但也有少许为无监视进修计划的变体,比如主动编码器和生成对立收集(GAN)。

卷积神经收集技能

卷积神经网道(Convolutional Neural Network, CNN)是一种前馈神经收集,它的人工神经元可以呼应一部分掩盖范围内的四周单位,关于大型图像处理有精美外现。卷积神经网道由一个或众个卷积层和顶端的全连通层(对应经典的神经网道)构成,同时也包罗联系权重和池化层(pooling layer)。这一构造使得卷积神经网道可以应用输入数据的二维构造。与其他深度进修构造比较,卷积神经网道图像和语音识别方面可以给出更好的结果。这一模子也可以运用反向传达算法举行教练。比较拟其他深度、前馈神经网道,卷积神经网道需求考量的参数更少,使之成为一种颇具吸引力的深度进修构造。 卷积收集是一种特别用于处理具有已知的、网格状拓扑的数据的神经收集。比如时间序列数据,它可以被认为是以必定时间间隔采样的一维网格,又如图像数据,其可以被认为是二维像素网格。

深度神经收集技能

深度神经收集(DNN)是深度进修的一种框架,它是一种具备起码一个隐层的神经收集。与浅层神经收集相似,深度神经收集也可认为繁杂非线性系统供应修模,但众出的目标为模子供应了更高的笼统目标,因此进步了模子的才能。

引荐作品
暂无评论
暂无评论~