人机大战柯洁原来输给了它!

原创内容,转载请注明:  [http://www.ssdfans.com]  谢谢!

 

柯洁和阿法狗首轮大战,柯洁落败。之后Google工程师说他们使用的秘密武器是自己研发的深度学习专用芯片——TPU。不管是之前击败李世石,还是这次击败柯洁,TPU都立下了汗马功劳。阿呆就来给你揭开TPU的神秘面纱。

 

 

Google I/O大会上介绍了他们的第二代深度学习处理器TPU 2.0,相比第一代,几乎完全不同了,从架构到性能都是质的飞跃。对于真正核心的技术,Google是不会开源的,所以外界也买不到TPU芯片。但是,Google提供了一个TRC计划,选择极少数研究人员的极少数项目,可以申请某些适合TPU的代码来跑一跑。其实也是为了帮他们找到TPU的更多使用场景。

 

Google自己用TPU跑很多深度学习应用,比如搜索、地图、语音识别,以及自动驾驶。作为外人,我们对TPU只可远观,不能亵玩,只能期盼有朝一日Google搞个云服务,把TPU的接口放在云上让大家付费使用。

 

阿呆之前写过一篇文章,大意是本轮人工智能热的推动力是硬件架构革命,正是GPU、FPGA和专用人工智能处理器的发展推动了依赖暴力计算的新型人工智能算法——深度学习一炮走红。在强大的计算能力面前,精巧的算法设计却败在了傻大黑粗的暴力计算面前。今天,柯洁围棋输给了阿法狗,人类积累了上千年的围棋经验,找到了无数精巧的下棋思路,但是,在机器的暴力计算面前,却一败涂地。

 

 

 

如下图,Google去年发布的第一代机器学习处理器TPU 1.0是比较简单的,主要用在深度学习的预测和分类方面,而任务繁重的训练则事先由GPU搞定。TPU 1.0是个PCIe板卡,通过PCIe 3.0×8连到主板上,所以不能独立使用,双向带宽是16GB/s,功耗40瓦。8位整数运算能力92 TOPS,16位整数运算是23 TOPS。而TPU2的16位浮点计算能力是45 TOPS,相比之下,NVIDIA最新的GPU P40的8位整数运算能力是47 TOPS,只有TPU1的一半,功耗达到250瓦,是TPU1的6倍。所以,我们可以看出Google搞TPU的目的还是为了替换GPU,一个是提升计算能力,另一个是省电。

 

 

TPU1作为PCIe板卡,必须要连接到主板上,受到CPU性能的影响,同时由于PCIe槽位的限制,数量又上不去。所以,TPU2就来了。如下图,4个机柜的TPU2主板组成了一个TPU2集群。机柜A,D是CPU主板,B和C是TPU2主板。红框里面是电源,蓝框里面是UPS备用电源,虚线里面是交换机。

 

 

再来两张美图,花花绿绿的,加上最后的妹子,挺好看。估计是营销的人摆拍的。不过看得出来,机房里的线缆是从天上走的。

 

 

看完森林,再来看看树木。下图是一张TPU主板的前景图,一个板子上有4个TPU2芯片,看起来相互独立,很对称。估计只是共享网络出口。A就是盖着散热片的TPU2芯片,B是25GB/s的BlueLink线缆。C是Intel发布的取代Infiniband的超算互联网络Omni-Path Architecture,OPA线缆。D是电源接口,E有点像网络交换芯片。不过阿呆注意到每个TPU2芯片旁边都有2个小散热片,不知道是什么芯片,如果是RAM不应该盖散热片。另外,E的上下又是什么,还配了那么多电容?

 

再来聊聊BlueLink,这个是IBM的东东,16个Lane的带宽是200Gb/s,相当于25GB/s。Google是OpenCAPI的成员,也是OpenPower基金会的创始成员,所以可以理解他们用BlueLink的原因。如果不知道OpenCAPI可以回过头看ssdfans上唐杰的Chip2chip大决战一文。但是,不管是OPA还是BlueLink,线缆都不能长过3米,所以要组建大规模集群需要级联,而且不能连错,如下图,黄线下面有个黄色的标记。

 

 

 

我们来看看两个CPU机柜A和D,看得出来,几乎完全对称,两个TPU机柜B和C也几乎完全对称。

 

 

CPU服务器估计是Intel Xeon 双节点的NUMA主板,同时CPU配备了OPA接口。每个CPU主板连接到一个TPU主板,通过25GB/s的OPA通信。每个CPU主板有2个CPU,每个TPU2主板有4个TPU2,所以CPU和TPU2数量比是1:2.要知道一般GPU服务器中,CPU和GPU比例是1:4甚至1:6,TPU相比没那么多。这是因为Google的设计思路:TPU更多的是CPU的浮点运算协处理器。

 

每个机柜有32个主板,所以整个集群有64个CPU主板,64个TPU2主板,所以也就有128个CPU芯片,256个TPU2芯片。每个TPU2芯片计算能力是16位浮点运算45 TFLOPS,那么整个集群是11.5 PFLOPS!如果是32位浮点运算,就是2.9 PFLOPS。

 

为什么TPU2主板上没多少存储空间?是因为数据来自于CPU主板,如下图,连接存储网络的FC线缆连到CPU机柜上,TPU2机柜没有。原始数据通过FC和CPU主板交互。每个CPU主板最大有256GB内存,所以集群有16TB内存。通过OPA高速网络,形成一个16TB的共享内存池。而TPU2通过OPA网络,以RDMA的形式获得数据。

 

 

TPU2相当耗电。我们从高耸的散热片就能看出来。如下图,A是TPU2的散热片,B和C是IBM的两款Power CPU散热片,D是Intel Xeon CPU散热片,E是NVIDIA P100 GPU散热片。

 

 

总结一下,随着2012年以来,人工智能在GPU的帮助下开始火热,机器学习芯片战场硝烟弥漫。FPGA巨头不断优化OpenCL的支持,方便软件开发者使用。专用深度学习芯片也层出不穷,比如国产的中科院计算所DaDianNao,ssdfans异构计算群里常出现的华夏芯,Google的TPU。GPU也不甘落后,不断升级换代。他们各有什么优劣?阿呆来捋一捋:

 

优点

缺点

GPU

通用架构,使用简单,工具成熟

功耗高,太通用化

FPGA

方便定制算法

开发周期长

TPU等专用芯片

对于专门领域性能强,功耗低

不通用,开发工具缺乏,使用不便

分类目录 人工智能, 其他, 技术文章.
扫一扫二维码或者微信搜索公众号ssdfans关注(添加朋友->点最下面的公众号->搜索ssdfans),可以经常看到SSD技术和产业的文章(SSD Fans只推送干货)。
ssdfans微信群介绍
技术讨论群 覆盖2000多位中国和世界华人圈SSD以及存储技术精英
固件、软件、测试群 固件、软件和测试技术讨论
异构计算群 讨论人工智能和GPU、FPGA、CPU异构计算
ASIC-FPGA群 芯片和FPGA硬件技术讨论群
闪存器件群 NAND、3D XPoint等固态存储介质技术讨论
企业级 企业级SSD、企业级存储
销售群 全国SSD供应商都在这里,砍砍价,会比某东便宜20%
工作求职群 存储行业换工作,发招聘,要关注各大公司招聘信息,赶快来
高管群 各大SSD相关存储公司高管和创始人、投资人

想加入这些群,请微信扫描下面二维码,或搜索nanoarchplus,加阿呆为微信好友,介绍你的昵称-单位-职务,注明群名,拉你进群。SSD业界需要什么帮助,也可以找阿呆聊。