关于人工智能:从MLPerf谈起如何引领AI加速器的下一波浪潮

7次阅读

共计 6143 个字符,预计需要花费 16 分钟才能阅读完成。

作者|Adi Fuchs
翻译|程浩源、沈佳丽

在深度学习史上,专用化硬件至多在 AlexNet 和 Transformers 这两个革命性时刻施展了关键作用,介绍这两种架构的论文都在其摘要中强调了 GPU 的作用,并具体阐明了它们如何将底层计算并行化到多个 GPU 中,以放慢计算速度。

之所以要强调这一点,是因为早在 AlexNet 论文发表的 20 年前,利用于计算机视觉的深度卷积神经网络就曾经诞生了;同样,早在 Transformers 论文发表前,利用于自然语言解决的 LSTMs、RNNs 和自注意力机制(self-attention mechanism)也已存在,这阐明许多算法根底早就曾经有了。

然而,通过展现如何以正当的老本进行大规模计算,论文作者们在上述畛域获得了进一步冲破。究其原因,是他们把握了 AI 减速的革命性实质: 扩大到日用品(Scale-to-Commodity)。


25 年来,路由器、有线和无线的网络速率增长了 1000 倍

尽管进步单位成本的性能始终是计算机科学家和工程师们的长期指标,但在某些状况下,收益会扭转游戏规则,一些过来认为不可能成为日用品的货色会变成日用品。

当芯片性能进步 100 倍,意味着你在两个小时内就能够运行一个简单的模型,而过来你却得消耗一周工夫,甚至可能须要 100 个基于 CPU 的工作站(假如你可能把握所有这些并行化并领取低廉的电费)。

过来 20 年,因为互联网带宽减少了 1000 多倍,咱们的生存也产生了天翻地覆的变动。你能设想,以前人们须要期待好几个小时能力下载完本人喜爱的电视剧吗?几乎太煎熬了。

为了放弃 AI 的革命性实质,咱们须要思考哪些模型能够日用品化以及如何将它们日用品化。

1

AI 基准测试的缺点

近年来,咱们见证了 MLPerf 的衰亡,这是一个旨在对 AI 硬件和零碎供应商报告的性能数据进行标准化的基准测试组件。它由来自 70 多家头部科技公司(英伟达、谷歌、AMD 和英特尔)、多家初创公司(SambaNova、Cerebras 和 Graphcore)以及各大学术机构(斯坦福、哈佛和伯克利)等泛滥行业领导者独特发动。

MLPerf 基准测试包含 ResNet50 和 BERT 等多个 AI 利用,并就不同版块进行评估,包含数据中心训练、数据中心推理和挪动设施推理等等。每隔几个月,MLPerf 就会收到各大公司和机构提交的测试后果(次要波及利用运行工夫),而后他们会把后果推送给相应的畛域。这样,提交者们就能够依据 MLPerf 比赛评估各自的体现,一些潜在客户也能挑选出更合乎本身需要的 AI 零碎。

MLPerf 有一项雄心勃勃的使命宣言:基于实在的模型、公开的数据集和易于了解的指标,为用户提供标准化和无偏见的性能推理方法,从而推动 AI 的利用。

随着 AI 硬件更加遍及,咱们迫切需要更多的行业标准和指标去理解 AI 硬件的性能。尽管 MLPerf 在性能评估方面曾经做得不错了,但我还想提三项可扩充其影响力的改良措施。

(1)规范化

AI 加速器形形色色,不同用户(业余爱好者、研究生、大型企业等)和零碎(挪动设施、工作站、主动驾驶汽车、HPC/ 云等)的需要也有很大差别。

此外,构建加速器的办法多种多样,给出一个计算域,你就能够纵情施展本人的想象力和创造力来协同设计硬件和软件(当然,你还得思考市场需求和老本)。因为 AI 加速器和零碎多种多样,单是比拟不同的减速技术就曾经相当不易,更不用说定义一种偏心、无偏见的加速器比照规范了。

IEEE spectrum 曾公布了一篇名为《AI 训练正在超过摩尔定律》的文章(https://spectrum.ieee.org/ai-…),该观点基于 MLPerf 颁布的测试后果。摩尔定律认为,晶体管密度每隔 18 个月就会减少约 2.2 倍,但 MLPerf 颁布的数据却显示,AI 训练的后果在 18 个月内晋升了 16-27 倍。

于是,马上就有人说,“如果咱们比摩尔定律快这么多,那么大部分的性能晋升必定都不是因为咱们应用了更好的半导体技术,而是因为采纳了更好的减速办法和软件技术。”然而,他们的论断并不牢靠。因为他们没有规范化的规范来掂量性能,所以才漠视了硬件对性能优化所做的奉献。


ResNet50 训练后果的逐渐规范化

让咱们深刻解读一下这些数字。以 ResNet50 的数据中心训练为例,2018 年,MLPerf 基线后果是应用 640 个 NVIDIA V100 GPU 达到的 6.2 分钟,而在 2021 年,工夫缩小到了 0.23 分钟。单从数字来看,速度确实是快了约 27 倍,但这是因为应用了 3456 个 TPU v4 加速器,这意味着加速器的数量减少了 5.4 倍。因而,如果咱们将这一规范使用到每一个芯片上,理论性能仍会进步 5 倍,这十分了不起。

另外,一个 V100 GPU 芯片上有 211 亿个晶体管,尽管谷歌在 TPU 规格方面并没有走漏太多,但其与 TPUv4 竞争的训练芯片(NVIDIA A100、SambaNova SN10、Graphcore mk2 IPU 等)的晶体管数量在 400-600 亿个左右。

因而,咱们能够正当地假如 TPUv4 也领有这么多晶体管,它能够提供每秒 275 万亿浮点运算的峰值性能,所以激进预计 TPUv4 有 400 亿个晶体管,于是咱们会推出来每一个晶体管性能晋升了 2.6 倍左右。

最初,V100 是应用 12 纳米 CMOS 技术制作,而 TPUv4 很可能是应用 7 纳米 CMOS 技术制作的(如 TPUv4i)。ITRS 和其余学术研究认为,7 纳米的电路应该比 12 纳米的电路快 1.5 倍。因而,思考到所有这些因素,包含更多的估算,更快和更优的硬件能力,架构帮忙性能晋升大概只有 1.7 倍左右。

显然,这是一个一阶近似值(first-order approximation),理论性能是由计算半导体技术以外的许多因素决定的,比方内存带宽、缓存、通信带宽和拓扑构造等。更简单的零碎的确须要由更精密和更成熟的软件堆栈来治理,减少芯片或晶体管的数量并不能保障性能有等同倍数的晋升。咱们必须有这样的思维,能力更好地了解规范化,以及通过晶体管实现性能优化。

为什么靠标准晶体管优化性能如此迫切?起因次要以下四点:

1、 这就是加速器存在的意义 。如果有一天,晶体管技术真的会像随摩尔定律所说的那样进行倒退,将来咱们就只有基于硅基技术陷入停滞的前提下实现性能优化;

2、 如果短少偏心的比拟办法,问题就只是数字而已 ,就像一个骑自行车的人和一个开兰博基尼的人之间的较量毫无意义;

3、 芯片的性能不可能无限度地晋升 ,当加速器供应商开发出系列加速器时,他们须要评估每一代加速器的硬件、软件堆栈,从而找出更新换代可能为性能优化所做的实在奉献。同时,还须要晓得,有时他们将不再为同一问题提出更好的解决方案,并且会遇到芯片专用化回报的递加以及撞上“加速器墙”;

4、试图在一个问题上投入大量资金从而进步性能的做法不可取,MLPerf 只有保持本人的减速愿景,并推动 AI 振兴进入第一阶段—— 扩大到日用品,能力持续保护本人的价值

AlexNet 和 Transformers 为应用繁多零碎训练简单模型关上了大门,并引领了新一轮冲破。咱们须要更加器重规范化的性能指标,比方单位功率性能或单晶体管性能。咱们曾经在单位功率性能方面做了些许尝试,然而这样的工作仿佛不太有吸引力。功率测量比拟麻烦,而且在这方面获得冲破也不会像创下新的训练工夫纪录那样引起轰动。

最初,尽管晓得相对性能数字是件坏事,但一般数据科学家真的关怀如何在千万亿级零碎(领有他们累赘不起的数千处理器)上进步执行工夫吗?这引出了咱们后续的探讨。

(2)大众化

MLPerf 基准测试波及的利用,次要是 2012 至 2018 年间发表的学术研究论文中提到的模型,而 GPU 作为过后深度学习惟一可行的抉择,那些论文中的数据都是模型在 GPU 上运行的性能后果。

而且,论文波及的底层架构特色、超参数和架构规模都会依据 GPU 来配置,模型的长处会与 GPU 的架构长处相结合,当然,最终的测试后果也会受 GPU 的毛病所限度。

如此一来,MLPerf 比赛实质上其实更相似于“GPU 比赛”,也让 GPU 从此成为了 AI 硬件的代名词。

不要误会我的意思——咱们都应该器重 GPU,因为它是古代 AI 的开路先锋。如果没有 GPU 成熟的硬件 / 软件堆栈,也就基本不会见证 AI 利用的崛起。但除了 GPU,咱们当初还有其余的解决方案,咱们也应该摸索在其余类型的架构上开发的原生模型的属性,它们能够开拓出一些新畛域。

此外,咱们可能也不心愿只有繁多的软件实施方案,或繁多类型的架构,这决定了整个 AI 应用领域的成绩和局限性。能够假如,如果在 2010 年就曾经存在 TPU 和 TensorFlow 生态系统,那 MLPerf 的利用范畴也会有不同。

(3)泛化

“When a measure becomes a target, it ceases to be a good measure(当一项指标变成指标,它将不再是一个好的指标。)”-Charles Goodhart

MLPerf 须要克服的最初一个挑战是不足利用泛化。大概一年前,我调研了一家业内当先的 AI 硬件供应商的性能评估。教训通知我,要想达到预期性能并非易事。

过后的状况是,即便在一个新的 Docker 镜像上装置了所有最新的库,重现加入过 MLPerf 的模型的跑分也没能靠近他们颁布的分数。只有应用供应商从专门的库中提供的模型版本,并且手动配置文件笼罩掉编译器对模型的决策后,才有可能达到他们颁布的分数。

最初,当我用了另一款模型替换了供应商提供的模型(两款模型的层数和大小简直完全相同),并且进行了雷同的配置后,却发现性能降落了 50% 左右。我据说,其余敌人在应用别的供应商提供的一些模型时也有过相似经验。

应用基准问题测试“慢动指标”(slow-moving targets)会呈现上述不现实的后果,这并不奇怪。

目前,MLPerf 基准测试曾经间断三年应用同一组利用,因而供应商只须要在测试时给这些利用展现一些不符合实际的“一次性”性能,就能跑出不错的问题;大多数的数据科学家也并非真的理解底层硬件、编译器和软件库,所以他们不会破费数周进行性能调优,更不用说创立笼罩编译器决策的手动配置文件了。

AI 面临的次要挑战之一是实现“用户到硬件的表白(user-to-hardware-expressiveness)”。AI 畛域倒退飞速,每天都有数百篇新钻研论文发表,所以咱们须要对堆栈进行泛化,从而保障它们可能“开箱即用”地运行更多性能良好的用例,而不是仍旧专一于十年前的利用。

MLPerf 应该更加器重,数据科学家们须要的是弱小的减速堆栈(acceleration stack),这些减速堆栈能够利用底层硬件来解决空前宏大的工作量。

目前,大多数 AI 硬件供应商都是优先思考客户模型和需要,而非 MLPerf 利用。如果 MLPerf 再不采取更广泛、更大众化的形式,势必会遇到更多竞争对手,并且人们最终也将不再违心将其视为行业级基准。

2

从新思考硬件加速

硬件加速始终是推动 AI 畛域倒退的关键因素之一,因而理解硬件加速的根本假如、现有概念局限性以及新倒退方向,对于推动 AI 畛域进一步倒退至关重要。

逾越翻新鸿沟

AI 畛域是钻研驱动型的,因而工业界和学术界之间有着严密的共生关系。生产零碎中所应用的最前沿的 AI 模型及其实践都出自发表在 NeurIPS、ICML、CVPR 和 ICLR 等顶级学术会议上的论文,包含 AlexNet、ResNet、YOLO、Transformers、BERT、GPT-3、GANs 和 Vision Transformers。此外,其中不少论文都是由学术机构与谷歌、脸书、英伟达和微软等公司的钻研实验室单干的成绩。

与 AI 应用领域相比,工业界在 AI 加速器畛域始终落后于学术界。尽管 ISCA、MICRO、HPCA 和 ASPLOS 等计算机体系结构顶级会议每年都会登载数十篇对于加速器的新论文,但生产中部署的加速器的外围架构思维几十年前就诞生了,包含内存解决、数据流计算、脉动阵列、VLIW 等等。

咱们须要积攒更多的想法和翻新,并将其具体化为新的产品。新想法的驳回总是很迟缓,这是因为制作芯片须要数年之久,而且 AI 硬件畛域竞争强烈,驳回新想法意味着可能须要消耗微小老本扭转现有的一些性能,这样做危险很大。

然而,当初的 AI 加速器畛域曾经趋于成熟,一些必须的根底曾经奠定,咱们也晓得怎么做才无效。因而,供应商们是时候尝试一些新想法了,通过新的发现来推动 AI 加速器畛域倒退。要置信,AI 加速器畛域仍有翻新空间!

让 AI 减速真正作用于 AI

古代 AI 曾经激发了咱们的趣味,它让咱们思考将来有限的可能性,并提出了一些对于哲学、社会学和伦理学的问题,这些畛域的大牛们也在强烈探讨:AI 能够做什么?AI 将来的倒退方向是什么?然而,在咱们开展设想之前,必须留神 AI 的“鸡和蛋”问题:硬件作为模型的根底,咱们很难设想新模型部署在性能较差的硬件上,也就是说,新模型须要新的硬件。

因为制作新硬件的老本很高,所以须要有正当的理由能力拿到资金开始钻研新硬件。但如果你没有在正当工夫内运行这些新模型的硬件,也就无奈证实这些新模型的价值。接着,因为没能展现新模型的理论性能,AI 翻新就会受到现有硬件解决方案的解放。


从 AI 到深度学习:咱们在减速什么?

值得一提的是,尽管咱们将以后硬件所做的称为“AI 减速”,但其实是在言过其实。事实上,它更靠近于“深度学习减速”,或者是联合了基于张量的深度学习和机器学习算法的产物,能够在矩阵乘法引擎上运行良好。

有人可能会说,“好吧,咱们简直都据说过深度学习,它是当今最具价值的‘杀手级利用’”,但这正是关键所在———咱们次要钻研深度学习,因为算法库和硬件都是为深度学习量身定制的,因而深度学习是咱们目前可能摸索的畛域,这是开发减速硬件时须要留神的。

咱们通过协同设计算法和硬件,曾经从构建通用处理器倒退到搭建各种体系结构;然而,咱们将数据门路长度优化为固定大小的变量,因为有固定大小的算法引擎和固定字大小的内存和连贯,并且咱们尽量应用矩阵乘法,因为它领有简略且可预测的控制流。咱们不心愿适度优化硬件导致其性能大幅降落,这会障碍摸索新性能,从而妨碍算法提高。

尽管我不是神经科学家,但我晓得大脑领有许多简单的构造,这些构造以不规则的形式进行通信,所以咱们可能无奈应用矩阵乘法、固定宽度数据门路和非线性函数来模仿它们。

因而,咱们须要思考,这种硬件进化是否让利用硬件协同设计空间中收敛到部分最优? 兴许,如果脱离张量密集型模型就能实现“AI 减速 2.0”,迎来 AI 硬件的下一波浪潮

那时,“AI 减速 2.0”不须要将矩阵相乘,但反对不规则的计算模式,并领有灵便的表征和任意并行化的计算引擎。具备这些个性的加速器(或此类加速器的异构集成)将领有更宽泛的利用范畴,也更靠近真正的 AI。

总而言之,咱们须要思考:注意力机制是咱们所需的全副吗?卷积神经网络(CNN)是最终的答案吗?不论答案是什么,卷积神经网络的确凝集了咱们大部分的研究成果,但兴许 AI 还有更多能够扩大到日用品的货色。

(本文经受权后公布,原文:https://medium.com/@adi.fu7/u…)

欢送下载体验 OneFlow v0.7.0 最新版本:https://github.com/Oneflow-In…

正文完
 0