翻译自——nextplatform,Nicole Hemsoth
Carey Kloss在过去几年密切参与了人工智能硬件的崛起,其中最引人注目的是他构建了第一台Nervana计算引擎。英特尔(Intel)利用这台引擎将其开发成两种独立的产品:一种用于训练,另一种用于推理。
他告诉nextplatform,真正的诀窍是跟上具有平衡架构的培训模型的规模和复杂性不断增长的步伐。考虑到培训所需的计算几乎每季度翻一番,从性能、效率和可伸缩性的角度来看,这比以往任何时候都更重要。
Kloss和英特尔认为,他们终于用Spring Crest深度学习加速器(或者更简单地说,英特尔Nervana NNP-T)找到了平衡的法则。这个名字可能不像“Volta”这样富有诗意,但我们从它目前的状态来看,它很有竞争力,并且在性能/效率和数据移动潜力方面填补了一些空白。
英特尔/Nervana的硬件团队已经采取了一种切实可行的方法,与一些超大规模的公司合作构建一种平衡的芯片,考虑到Facebook是其中的佼佼者,这家社交巨头计划让英伟达的GPU在培训方面拥有更强的竞争力,假设这是一个推论。在我们今年5月举行的下一次人工智能平台活动上,Facebook基础设施主管Vijay Rao指出,他们期待着尝试任何能够在培训和推理方面具备规模优势的架构。
最后,在Hot Chips上,我们看到了更多的关于这个架构的信息,包括一些关于自定义网络Kloss的深入了解,Kloss在收购前帮助最初的Nervana计算引擎构建了这个网络。这个架构给我们留下深刻印象的是,它是为可伸缩性而设计的。虽然确实可以对GPU进行伸缩,但对于大型培训集群来说,按比例移动数据一直是一个棘手的问题。
Nervana/Intel的优势在于,就是从最开始设计培训架构时就只考虑到工作量,尤其是在大多数培训模式不再适合最大芯片的情况下。这意味着专注于向外扩展是有道理的,除了强大的数学单元之外,还需要一些创造性的内存、SerDes和其他HBM技巧。
对于几乎所有的模型,大多数时间都花在乘法/累加(矩阵数学或卷积)上,这意味着需要大量的计算(GPU擅长的东西),但是大量的读取意味着可以反复使用一块数据,理想情况下从HBM读取一次并使用并行乘法器多次。这是一个很标准的思考训练问题的方法。Kloss说,当他们深入研究工作负载时,乘数、SRAM和最快的HBM是关键,但是平衡起来要困难得多。“需要有足够的SRAM来满足乘数、足够的高速SerDes芯片和HBM,每个都有相同的限制,给定相同的HBM规格。因此,这就是平衡内存、启动内存和关闭内存、网络和计算的诀窍。”
这个平面图,显示了4 HBM2和64通道SerDes与中心计算(24张量处理器/TPCs)、SRAM、PCIe Gen 4 x 16EP和控制块之间的平衡。芯片上共有60mb的分布式内存,全部采用2.5D封装。
其中一个很酷的功能,也是大多数地方都没有注意到的创新,是基于台积电晶圆片上基板(CoWoS)技术。这是一个相当大的die,但考虑到人工智能的工作负载,尺寸为680mm。但是,这与中介层(interposer)没有逻辑关系,它是被动的,在给定设计目标的情况下,这是一个明智的权衡。
下面是我们对TPC[1]的一个真实理解。我们的设计目标是尽可能减少模具面积,包括控制路径逻辑,以及OCP/OAM规格尺寸是固定的。“我们不想把模具区浪费在我们不需要的东西上,”Kloss解释说。我们的指令集很简单;矩阵乘法,线性代数,卷积。我们没有寄存器,一切都是2D、3D或4D的张量。软件中定义了很多东西,包括在打开或关闭die模型时编写相同程序的能力。你可以把它想象成一个等级层次;可以使用相同的指令集在一个组中的两个集群之间移动数据,或者在组之间移动数据,甚至在网络中的晶圆。最终的目的是我们想让软件管理通信变得更简单。”
这将消耗150-200瓦的电量,但这是一个基于ResNet 50部分的推测结果,正如我们所知,这在现实世界中并不具有代表性。我们要到明年才能看到英特尔MLperf的结果,但是Kloss说到那时他们会有几个基准测试,包括自然语言处理和其他工作负载。
红色块是复合数学管道,在这里,矩阵乘法的前运算和后运算可以用乘数数组中的部分乘积来完成,而不需要另一个内存端口来将部分乘积输入红色区域。这样就可以在任何周期上获得输出(预激活和后激活),并且它与保存在张量中的两个输出张量完全管道化。
到目前为止,我们所看到的一切都回避了一个重要的问题。除了在硅上的一些明显差异外,它的数学单元与Nvidia Volta GPU或TPU 3的张量有什么不同呢?毕竟,乘数不就是乘数吗?
答案可能比看上去要微妙一些。这涉及到权衡取舍、die area和数据移动。
“像这样的乘法器阵列或其他竞争对手,你可以用乘法器得到更密集的数据。一旦你有了密集的乘法器阵列,你就可以用更少的模具面积来做这些乘法器,你可以用你的模具面积来做更多的信息分配或其他事情,”Kloss说。下一个决定是量化(矩阵本身的量化相乘,而不是权重或数据)。英特尔选择32×32,是因为当他们观察通过神经网络运行的尺寸时,它似乎不那么浪费,尤其是在边界条件下。
“如果你想在一个32×32的数组上做一个33×33的乘法,你将会浪费大量的时间在无意义的乘法上,”Kloss解释道。“所以,如果你有一个更大的乘法器阵列(如TPU中的128×128或256×256),它会通过巨大的矩阵乘法进行运算,但每次遇到边界条件,它就会浪费一些乘数——它们不会被使用。”他的团队分析了更大的死区权衡 (64 64×128×128)但因为有特定数量的TPC和定义内存,使得他们无法得到另一个行或列的TPC面积密度的储蓄。
“节省下来的钱不足以让我们再建一排或一列,而且我们受到模具尺寸的限制——这是回到了Lake Crest第一代神经网络。供应商能构建的量是我们的上限。所以32×32的消元过程是正确的权衡。今天来看,这似乎是一个很好的权衡,一方面不浪费很多乘法器,另一方面拥有足够密集的乘法器阵列。
请记住,在开始使用TPU时,谷歌团队严格使用256×256,但是在第二个版本中,随着工作负载的变化和更多实际模式的出现,谷歌团队减少到128×128。每个芯片上有两个这样的数组v2和v3,每个芯片上有四个这样的数组。另一边的Volta GPU采用了不同的路径,使用4x4x4矩阵(3D而不是2D)。在这一点上进行比较仍然困难,这意味着2020年MLperf的培训结果将更加有趣。
为了在更小的进程节点上获得类似的性能,而SRAM要少得多,它们就必须有更大的die区域。我们可以增加更多的SRAM和更快的网络,因为我们正在用一个更简单的指令集。在这一点上,更有效地利用模具面积将提供直接的动力和性能效益。”
顺便提一下,关于英特尔如何谈论事物的一个快速澄清点:一切都是一个张量。他们不讨论权重,那些只是被认为是另一个“张量”,但是,正如Kloss解释的那样,“我们确实在SRAM中保留了权重,如果它们足够小的话。”我们可以完全控制软件。如果足够小,它们可以存储在本地内存中,但是如果它们更大,我们可以将它们从HBM双缓存到蓝色区域,然后再返回。乘法器阵列只需要从内存库中获取任何权重或非权重的数据,然后读入、乘法器阵列,然后再把它们吐出来。”
我们期望Nervana和Intel能够提供一些定制的功能,其中包括一个复杂的微控制器,它允许定制指令处理工作,而不会使宝贵的模具区域复杂化。可以从HBM中提取几个子例程来运行集群上的任何东西,生成驱动SRAM和乘数的底层指令。这对于像ROI这样的事情很方便。在这种情况下,不需要特殊的逻辑,只需要一个子例程就可以创建一条新的指令。这也有助于许多批次的动态形状和大小的可用性。
NNP-T同时存在于PCIe和夹层因子中。“我们喜欢OAM规范;因为它更容易冷却和逃离这么多高速SerDes的载体,”Kloss说到。
“你可以看到PCIe卡和两个白色的连接器,然后是芯片背面的四个QQSFP连接器:我们必须做所有这些来避开PCIe卡上的所有SerDes,但是对于夹层卡,它都在那里,可以安装在任何OCP或OAM夹层底盘上。这将打开一个完全连接的载波卡或混合网格立方体载波卡的组合(我们更喜欢这样做,因为这意味着在机箱内部少了一个链接)。他说,英特尔不只是想在一个机箱中扩展这些,而是从一个机箱到另一个机箱,从一个机箱到另一个机箱,因此更多的SerDes从机箱的后部出来是很重要的。此外,我们的专有链接速度非常快,延迟也很低,所以在机箱外添加额外的跳转不会影响性能。在其他人可能更喜欢完全连接的地方,我们认为最好让更多的SerDes从盒子里出来,使用混合网格立方体。”
延伸阅读
一款基准测量工具的雏形——MLPerf
由各大领先的科技公司和大学组成的团队发布了一款基准测量工具的雏形——MLPerf,其目的是测量各种AI框架和芯片中不同机器学习任务的训练速度和推理时间。
MLPerf的诞生是小部分公司自我组织进行产品对比的结果。在很长一段时间内,人们都在讨论是否有必要设立一个有意义的AI基准。支持者认为,标准的缺失限制了AI的应用。
MLPerf声明它的基础目标是:
用公平、有帮助的测量方法加速机器学习的发展
对各竞争系统进行公平对比,以鼓励机器学习的发展
保证让所有人都能参与基准评比
既服务于商业群体,也服务于研究领域
基准要可复制,确保结果的可靠
英特尔收购Nervana后的第一张王牌Lake Crest,号称比GPU速度快10倍,年底测试
人工智能硬件平台争夺的序幕才刚刚拉开。随着时间的推移,人们很快发现相比GPU和CPU,FPGA具有的低能耗、高性能以及可编程等特性,十分适合感知计算,而且可以做到快速部署。2015年,英特尔便动用167亿美元收购了当时全球第二大FPGA厂商Altera,也是有史以来最大的一笔收购案。
也是在那一年,凭借拥有号称最快的深度学习框架 neon和首个结合机器智能软硬件云服务的Nervana Cloud,深度学习初创公司 Nervana 被 VentureBeat 评为值得关注的五家深度学习初创公司,次年8月,暗中观察许久的英特尔豪掷4亿美元将仅有48名员工的Nervana收入了囊中。
在整合了 Nervana 的技术之后,英特尔AIPG 计划推出 Crest 家族系列产品线。首先亮相的是一款叫做 Lake Crest 的芯片,它是专为训练DNN而深度定制的ASIC解决方案,预计今年下半年测试,2018年上市。据 Naveen Rao 曾经对媒体介绍,相对于目前最快的GPU, Lake Crest的加速性能是它的10倍。
[1] 在半导体研究和制程上,包括质量判定时,TPC是 Thermo Pressure Cook 中文简称高温高压测试,是半导体质量关键点。
上一篇:凌华科技嵌入式显卡助力提升嵌入式应用的性能
下一篇:中国首款车规级AI芯片,地平线“征程二代”正式量产
推荐阅读最新更新时间:2024-11-05 08:07
- CRD-02AD09N,2.2 KW,高效(80+ 钛)无桥图腾柱 PFC 板,带 SIC MOSFET
- sdvx pcb
- LT1634CCZ-5 单节锂离子电池监控电路的典型应用 (IQ = 20uA)
- NCV33072DR2G 高顺从电压至灌电流转换器的典型应用
- 使用 NXP Semiconductors 的 XC68HC705X4 的参考设计
- 120灯-WS2812-20cm拼接灯盘
- STM32G484E-EVAL,带有 STM32G484QE MCU 的评估板
- 使用 Analog Devices 的 ADP3050ARZ 的参考设计
- DER-709 - 适用于使用 InnoSwitch3-TN 的设备的 10 W 单输出开放式电源
- sounder