去年,谷歌 I/0 公布了 TPU 2.0,且开放给了谷歌云客户。昨日(5月9日),皮查伊正式宣布 TPU 3.0 版本。
TPU也就是TensorProcessorUnit,Google为机器学习定制的专用芯片(ASIC),专为Google的深度学习框架TensorFlow而设计。TPU3.0采用8位低精度计算以节省晶体管,速度能加快最高100PFlops(每秒1000万亿次浮点计算)。
皮查伊介绍,除了显而易见的外形变化之外,TPU 3.0比去年的TPU 2.0强大八倍——强大到Google需要第一次在自己的数据中心引入液冷技术。新版TPU 3.0可以支持更好、更大、更精准的AI模型,更高效地服务数据中心,便于定制硬件方案。
据了解,TPU 3.0将帮助谷歌改进使用AI的应用程序,包括在音频记录中识别正在说话的人的身份、在照片和视频中发现对象以及在文本中识别潜在情绪等。因此,这款芯片完全可以称为英伟达图形处理单元(GPU)的替代品。
此外,如果新版本TPU与它的前身类似,也将通过谷歌的公共云服务向第三方开发者开放,这将帮助谷歌与亚马逊和微软竞争。本周早些时候,微软发布了可用于其Azure云平台的特殊芯片。
新发布的TPU3.0使用8位低精度计算以节省晶体管,对精度影响很小但可以大幅节约功耗、加快速度,同时还有脉动阵列设计,优化矩阵乘法与卷积运算,并使用更大的偏上内存,减少对系统内存的依赖。
皮查伊表示,当人们大规模使用第三代TPU时,可享受更强大计算能力的支持。他说:“现在,每个芯片的性能都是去年的8倍,远远超过了100Petaflops(Petaflops:每秒一千兆/一千万亿(10^15)次的浮点运算)。”而目前,容纳16个英伟达最新GPU的盒子仅能提供2Petaflops的计算能力。
TPU2的一个pod包括4个rack,两个CPU rack(左右两边),两个TPU rack(中间两个)。每个rack有32个computing unit (板卡),每个TPU板卡有4颗TPU芯片。因此一个pod总共有64 x 4颗TPU2芯片。每颗TPU2芯片的处理能力是45TFLOPS,因此一个pod总的处理能力是45 x 4 x 64 = 11.5 PFLOPS.
对比来看,TPU3的板卡仍然包括4颗芯片。但目测TPU3 pod的rack数量和板卡的密度(这个看的不是很清楚)和TPU2相比都增加了一倍。因此,一个pod中的TPU3芯片的数量应该是之前4倍。如果pod的总处理能力是TPU2的8倍,那么TPU3单芯片的处理能力则为TPU2的2倍。
根据Google的说法,这次他们第一次在Data center采用水冷的散热方式,这可能和芯片功耗以及板卡密度增加有关系。
Google also said this is the first time the company has had to include liquid cooling in its data centers, CEO Sundar Pichai said.
总得来说,如上图所描述(来自Google I/O大会的talk:Effective Machine Learning with Google TPU,可以在YouTube上搜索Google io 18 stage 8观看),TPU3实现的超过100 PFLOPS的处理能力是来自“新的芯片架构和大规模系统”。
众所周知,除了谷歌,其他科技巨头也在自主研发AI芯片,虽然从公开信息中我们可以了解到Facebook和亚马逊自主研发芯片还处于早期阶段,自主研发定制AI芯片的目的也还不够清楚,但可以看到的是当数据量越来越大。
此外,不仅科技巨头的入局,AI芯片的创业公司也开始涌现并获得资本青睐,像Cerebras Systems、SambaNova Systems和Mythic等初创公司大多数已经筹集了超过3000万美元,它们希望在具体的应用中通过其研发的AI芯片完成机器学习的任务,并且性价比能超越Nvidia。
不过,与谷歌的其他竞争对手也押注定制芯片(ASIC)不同,微软认为FPGA比ASIC更灵活,并且标准Intel Stratix FPGA的性能至少可以与定制芯片相媲美。因此微软选择押宝FPGA,雷锋网消息在5月7日开幕的微软Build2018大会上,微软CEO Satya Nadella发布了Project Brainwave预览版,并称延迟比TPU低5倍。
微软还称利用Project Brainwave平台的客户可以使用标准的图像识别模型处理100万张图片,单个图像在1.8毫秒内就能处理,比现在的任何竞争对手的云服务都要好。
此外,随着Facebook越来越希望用像PyTorch这样的框架来挑战TensorFlow,谷歌想保持领先变得困难。在今年F8开发者大会的第二天,Facebook宣布PyTorch 1.0beta版将在今年夏天和用户见面,并提前展示了这款新框架的特性。
据Facebook介绍,PyTorch 1.0结合了Caffe2和ONNX模块化、面向生产的特性,也结合了PyTorch灵活、面向研究的特性,为广泛的AI项目提供从科研原型到生产部署的快速、无缝途径,让用户可以快速实验,通过能在强制执行模式和声明执行模式之间无缝切花的混合前端优化性能。
需要了解的是,ONNX(开放神经网络交换)是Facebook去年联合多家软硬件公司发布的神经网络模型转换协议,现在新增了对苹果的Core ML、百度PaddlePaddle、高通SNPE的支持,再加上原本支持的MXNet、Caffe2、PyTorch、TensorFlow、CNTK等框架,实现了神经网络模型在各种主流框架之间的转换。
因此,TPU3.0只是谷歌服务其生态保持领其先地位的第一步,硬件之上的TensorFlow同样重要。微软基于FPGA的Brainwave平台以及Facebook的PyTorch 1.0软件和硬件都与谷歌形成了竞争关系,未来谷歌能否保持领先地位还需要看其是否能做出快速的回应。
(综合整理自唐杉原创、凤凰科技、搜狐科技、科技魔方、雷锋网)