删除或更新信息,请邮件至freekaoyan#163.com(#换成@)

Google揭露自家TPU技术细节 效能远胜CPU/GPU_上海微系统与信息技术研究所

上海微系统与信息技术研究所 免费考研网/2018-05-05

Google为了进一步强化机器学习能力,已私下研发专用的张量处理器(TensorProcessingUnit,TPU)数年,并在2016年首度亮相,但当时并未透露太多细节。近期Google终于再提供更深入的信息,公布一份长达17页的测试报告,指出自家研发的TPU效能已达到绘图处理器(GPU)及中央处理器(CPU)的15及30倍,在机器学习测试中更优于英特尔(Interl)的Xeon处理器以及NVIDIA的GPU。
Google表示,此款TPU采用28奈米制程,工作频率为700MHz。原先设计目的在于加速自家的TensorFlow算法,主要的逻辑单元内含65,536组八位的乘积累加(Multiply-accumulate)单元以及一组24MByte的快取,每秒可进行92兆次运算(Tera-operations/second)。
GoogleTPU的负载以高级TensorFlow框架编写,可支持多层感知(MultilayerPerceptron,MLP)、卷积神经网络(ConvolutionalNeuralNetwork,CNN)和长短期记忆(Long-ShortTermMemory,LSTM)等人工智能技术,这些技术占数据中心95%的神经网络推理计算需求。

平均而言,相较于使用IntelHaswellCPU与NVIDIAK80GPU的系统,Google的TPU大约快上15~30倍,每瓦效能比(Performance/watt)更可达到30~80倍以上。此外,如果在TPU中使用GPU的GDDR5内存,处理速度还能再翻三倍,速度/功率比(TOPS/Watt)能达到GPU的70倍以及CPU的200倍。
数据缓冲区(DataBuffer)占了此款TPU的37%,而媒体访问控制(MediaAccessControl,MAC)则占了其中的30%。相较于NVIDIA的GPU,GoogleTPU的尺寸较小,却多出25倍的MAC,芯片内建的内存也比K80多出3.5倍。
GoogleTPU使用PCIeGen3x16总线,以及256Bytes内部数据路径。主CPU将加速器作为浮点处理器(FloatingPointProcessor),透过PCIe总线下达指令。此款TPU也运用和GPU加速器相同的Tensorflow软件。研发人员固定一组核心驱动程序,并依照需求调整用户空间(UserSpace)驱动程序,以容纳不断变化的应用程序。
GoogleTPU目标不在于更高吞吐量(Throughput),因而舍弃传统多功能处理器的许多元素,聚焦于将延迟时间压低在7毫秒之下。不过,Google自行研发的TPU也不是毫无缺点,其运算效能虽然优于英特尔和NVIDIA的处理器,但在轻载时的省电性能却不太理想。举例来说,同样在10%的负载条件之下,NVIDIAK80GPU的功耗是其最大功耗的66%,英特尔的Haswell处理器则是56%,但GoogleTPU却仍高达88%。Google也响应,由于只有短短15个月的设计时程,因此并未能将低功耗纳入此芯片设计的重点。

此次公布的报告指出,此款TPU所带来的数量级效能突破相当罕见,可望成为特定领域架构的原型,为未来新研发的处理器树立更高标准。但目前该TPU只使用于Google的数据中心,尚未进一步公布未来运用细节或是改善方向。
附件下载:
相关话题/设计 技术 数据 逻辑 工作