Cerebras史上最强深度学习计算机诞生始末

发布时间:2020-01-03 11:35:18   来源:IT之家   点击:
[db:简介]

人工智能初创公司Cerebras Systems去年很火,8月份,其发布了史上最大半导体芯片WSE,拥有1.2万亿晶体管,比最大的GPU大56.7倍;11月份,第一台基于该芯片的计算机CS-1发布,号称世界上最快的深度学习计算系统。

如今,时间刚过去1个多月,在洛斯阿尔托斯的Cerebras总部,一些客户已经通过光纤电缆将他们的数据输入了4台CS-1计算机进行训练,这些64厘米高的机器不停地运行着,每台机器以20千瓦的功耗将热量通过墙上的一个洞散发到硅谷的街道上。

WSE比通常用于神经网络计算的芯片要大,比如Nvidia Tesla V100 graphics processing unit或者谷歌的Tensor Processing Unit。但是,更大就意味着更好吗?

显然Cerebras自己是这么认为的,其首席执行官兼联合创始人Andrew Feldman表示,受训练速度的限制,如今的人工智能远远低于它本应达到的水平。

比如,一辆自动驾驶汽车要识别它在路上遇到的所有重要物体,首先是训练深度学习模型,这个过程必须向模型输送道路物体的大量图像,这一过程发生在一个数据中心,在那里,消耗数十甚至数百千瓦的计算机往往被用来完成一个长达数周的训练任务。假设得到的神经网络能够以所需的精度执行任务,那么定义网络连接强度的许多参数就会被下载到汽车的计算机上,由计算机执行深度学习的另一半任务,即推理。

Cerebras的客户抱怨说,在今天的计算机上运行大型神经网络的训练需要长达6周的时间。按照这个速度,他们一年只能训练6个神经网络。Feldman说:“我们想要测试更多,如果能在2-3小时内训练一个网络,就能在一年内测试数千个想法。”

Cerebras就是在这种需求下诞生的。

最强深度学习计算机系统的诞生始末

CS-1型计算机本身从外部看不到多少东西。实际上,每个机箱大约四分之三是由冷却系统占用的,最后的四分之一才是关键:一个强大的计算机几乎完全由一个芯片组成。但这种芯片的面积超过46255平方毫米,是你能买到的任何其他处理器芯片的50多倍。拥有1.2万亿个晶体管、40万个处理器核心、18千兆字节的SRAM以及每秒可移动1亿亿位数据的互连。

CS-1的纸面数据也同样令人震惊。该公司表示,一个10个机架的TPU2集群(现在是三代Google AI计算机的第二个集群)消耗的电力是它的5倍,占用的空间是它的30倍,仅能实现WSE单台计算机三分之一的性能。

CS-1的诞生可以追溯到2015年,那时候,服务器企业Sea Micro(AMD收购)的资深员工Feldman,也就是Cerebras的创始人。一开始他想要制造一台完全符合现代人工智能工作性质的计算机,这个机器需要满足:能够快速移动大量数据;更接近处理核心的内存;这些核心不需要处理其他核心正在处理的数据。

这让该公司的资深架构师和首席技术官Gary Lauterbach立即想到了几件事:

首先,他们可以使用成千上万个小型核心来进行相关的神经网络计算,而不是使用更少的通用核;其次,这些核心应该通过一个互连方案连接在一起,以低能耗快速传输数据;最后,所有需要的数据应该在处理器芯片上,而不是在单独的内存芯片上。

在很大程度上,需要在这些核心之间来回移动数据,这使得WSE具有唯一性。在两个核之间移动数据的最快、最低能耗的方法是将它们放在相同的硅基板上。当数据必须从一个芯片传送到另一个芯片时,速度和功率的代价是巨大的,因为距离更长,而传送信号的“电线”必须更宽,密度也必须更小。

将所有通信都保持在硅上的驱动力,再加上对小型核心和本地存储器的渴望,都指向了制造尽可能大的芯片,也许是整个硅晶圆那么大的芯片。Feldman说:“很显然,我们做不到这一点,但这样做有很大的好处。”

但是Lauterbach看到了一种架构解决方案:因为他们所针对的工作负载倾向于有成千上万个小的、相同的内核,所以有可能放入足够多的冗余内核来解决其中1%的缺陷导致的故障,并且仍然有一个非常强大的大芯片。

当然,Cerebras仍然需要解决大量的制造问题来构建它容错的巨量芯片。例如,光刻工具被设计成将它们的特征定义模式投射到相对较小的矩形上,并一遍又一遍地这样做。由于在晶片的不同位置上浇铸不同图案的成本和困难,仅凭此限制将使很多系统无法在单个晶片上构建。

▲Cerebras内部:冷却系统占据了CS-1的大部分,WSE芯片位于左后角

不过WSE并不需要这样做,它看上去像是利用相同的圆晶制造出的芯片,和普通的没什么差别。最大的挑战是找到一种将这些伪芯片连接在一起的方法。芯片制造商会在每一块芯片上都留下被称为划线(scribe lines)的空白窄边,晶圆通常沿着这些线被切成小块。Cerebras与台湾半导体制造公司(TSMC)合作,开发出了一种跨越划线的互连方式,使得每个芯片中的核心可以通信。

现在,所有通信和内存都在一块硅片上,数据可以畅通无阻地被压缩,产生每秒1000千兆位的核心到核心带宽和每秒9千兆位的SRAM到核心带宽。Feldman说:“这是一星半点,这是增强了四个数量级的带宽速度。”

划线交叉互连(Scribe-line-crossing interconnects)并不是唯一被攻克的难题,芯片制造硬件必须进行相应的修改。即使是用于电子设计自动化的软件也只有被定制后,才能在如此大的芯片上工作。

Feldman说:“每一条规则、每一种工具和每一种制造设备都是为挑选一块普通大小的巧克力饼干而设计的,而且我们提供的是一块整个饼干。每一步,都要创新。”

他还说道,晶圆规模的集成“在过去40年里一直被忽视”。如今Cerebras已经进行了初步尝试,会有更多的公司加入进来,大门也自然会对其他人敞开。“应该会有不少人想要寻求与我们的合作,以解决人工智能以外的问题。”

需要解决的不仅是冷却系统,还有供电

事实上,伊利诺伊大学和加州大学洛杉矶分校的工程师们认为,使用一种叫做硅互连结构(silicon interconnect fabric)的技术,Cerebras的芯片可以促进他们的晶圆级计算工作(wafer-scale computing efforts)。伊利诺伊大学的Rakesh Kumar说:“这在很大程度上验证了我们目前的研究。”

诚然,CS-1体现的不仅是WSE芯片,但它也与WSE芯片相差不多,这既是出于设计需求,也是出于必要,因为横穿主板的是一个位于芯片上方的电力输送系统和一个位于芯片下方的冷板。而令人惊讶的是,在计算机的发展中,最大的挑战来自于电力传输系统。

WSE的1.2万亿晶体管的设计工作电压约为0.8伏,这是处理器的标准配置。不过,由于数量太多,总共需要20000安培的电流。Lauterbach说:“在没有明显电压降的情况下,将20000安培电流注入晶圆,这是一项相当艰巨的工程挑战,比冷却晶圆或解决产量问题还要困难得多。”

并且,电源不能从WSE边缘进行传输,因为互连中的电阻会在电压到达芯片之前将其消耗至零。正确答案是从上面进行垂直传送,Cerebras设计了一块玻璃纤维电路板,里面装有数百个用于控制功率的专用芯片,一百万根铜柱将大约一毫米的距离从玻璃纤维板连接到WSE的各个点。

以这种方式传送能量看上去在很大程度上解决了问题,而且也很简单,但事实证明并非如此。在实际操作中,芯片、电路板和冷板会预热到相同的温度,但它们会膨胀不同的量级,铜膨胀最大,硅膨胀最小,玻璃纤维介于两者之间。像这样的不匹配在正常尺寸的芯片中是一个令人头疼的问题,因为这种变化足以切断与印刷电路板的连接,或者产生足够的应力破坏芯片。对于WSE大小的芯片,即使是很小的尺寸变化也会转化为毫米级。

Lauterbach就此说道:“与主板的热膨胀系数不匹配是一个残酷的问题。”Cerebras在寻找一种具有合适的热膨胀中间系数的材料,其应介于硅和玻璃纤维之间,只有这样才能保证百万个电力输送站的正常连接。

但是,最终,工程师们不得不自己造一个,这项工作就花了一年半的时间。

节能虽好,但对客户或许没有太大吸引力

2018年,谷歌和一些顶级学术团体开始联合研究基准(benchmarks),以便进行系统之间的比较。5月份,他们发布了MLPerf。

根据MLPerf,神经网络的训练在过去几年取得了巨大的进步。在ResNet-50图像分类问题上,Nvidia DGX在80秒内就完成了。这在以前,如果使用的是英伟达的DGX-1需要约8小时,如果使用的是K80则需要25天。

Cerebras还没有发布MLPerf结果或任何其他可独立验证的比较。相反,该公司更愿意让客户使用自己的神经网络和数据来试用CS-1。

据分析人士称,这种做法并不罕见。Moor Insights的人工智能分析师Karl Freund表示:“每个人都有为自己业务开发的模型。对买家来说,这才是唯一重要的。”

早期客户例如阿贡国家实验室(Argonne National Labs),他们会提出一些相当强烈的需求。在训练神经网络实时识别不同类型的引力波事件(gravitational-wave events)时,科学家们最近使用了阿贡耗电四分之一兆瓦的Theta超级计算机的资源,世界上28个最强大的系统之一。

把功耗降低到千瓦似乎被证明是超级计算的一个关键好处。但不幸的是,Lauterbach对此表示怀疑,他担心这项功能是否会成为数据中心的一大卖点。他说道:“虽然很多数据中心都在谈论节约能源,但归根结底,他们并不在乎,他们更想要性能。”

------分隔线----------------------------

浏览排行

周排行
月排行