从TPU看tensorflow的布局

转载 2017年04月07日 09:31:09
感想|东南大学崇志宏

今天一早满眼看到的是谷歌的一篇TPU的文章,立马让我想起谷歌的深度学习框架tensorflow:深度学习的框架的三个基本要素,tensor,tensor操作和流程,因此tensor操作成为计算的基本形式。从CPU、GPU到TPU反映了当前计算任务的转移,也反映了深度神经网络学习的突出地位。


第二个感悟,谷歌在争取深度学习的标准,借机拓展它的云计算、芯片,必然在多个市场上挑起更为残酷的竞争!!!


重磅|Google最新AI芯片TPU比最先进的FPGA/GPU快15-30倍!每年可省100亿美元!

文章来源:wired、google   翻译:黄玮博士 东南大学崇志宏转



装有TPUsGOOGLE的Google服务器机架


据wired报道:目前,Google在运行世界范围内最大的计算机网络,此计算机网络系统包括了定制化的数据仓库,所储藏的数据覆盖了4大洲的15个地区的数据。在6年前,Google在安卓Android手机上实现了声音识别,然而公司的工程师却担忧网络的容量不够承载。工程师们担心,如果世界上的安卓用户某天使用3分钟的手机声音搜索功能,Google公司就需要修建2倍的数据中心来储存这些数据。

 

在那时,Google只是在深度神经网络领域的声音识别上刚刚起步,深度神经网络的复杂数学算法系统只能在海量的数据上特殊的分析任务。近年来,由于这种机器学习的形式获得了飞速的发展,其应用超过了声音识别的范畴,覆盖到包括图像识别、机器翻译、网络搜索在内的更丰富功能,并层出不穷。在深度学习的帮助下,Google降低了25%的错误率。

 

Google没有从加倍修建数据中心的方向来改善自己的数据存储能力,而是开发了专门用来进行深度神经网络的计算机芯片,名叫TensorProcessing Unit, 缩写是TPU。“这样的解决方案更加有效率,”从事此项芯片开发的70个工程之的代表Norm Jouppi说道,实际上,TPU在TOPS/Watt测度上是标准处理器的30到80倍,使处理速度更加有效。


TensorProcessing Unit地址: https://www.wired.com/2016/05/googles-making-chips-now-time-intel-freak/



一个神经网络的利基市场——芯片市场格局的转变


Google在去年5月公开了其定制化的处理器,但是只透露了有限的细节。现在,Jouppi和其他团队成员发表了一篇讲述此项目细节的论文,论文题目:数据中心的 TPU 性能分析(In-DatacenterPerformance Analysis of a Tensor Processing Unit),该论文解释了芯片如何工作和解决特定问题。Google目前只使用该芯片来执行神经网络的工作,例如用户对安卓手机输入命令的行为,该芯片没有用于训练神经网络。但Jouppi解释说尽管这样,芯片还是提高了公司存储数据的效率,使得公司不必再修建15个新的数据中心。


此项芯片的问世也大大改变了世界计算机处理器市场的格局,Google、Facebook、Microsoft和其他互联网巨头近年来纷纷进行深度神经网络的开发。中国的互联网巨头百度也在使用特定的芯片运行它的模型。不同的是,Google自己搭建了自己的数据构架,从服务器到网络,如今又向个人处理器推进一步。例如Amazon、Facebook、Microsoft,这些最大的芯片购买客户都会成为潜在客户,而芯片的巨型生产商Intel也将向这个方向迈进。


聚焦同时更多样化


Jouppi的团队从2013年就开始从事这项TPU的工作,他提到公司正在考虑向FPGA,一种Microsoft使用的编程芯片进发。最终,团队决定开发ASIC,一种执行特殊任务的芯片,Jouppi透露说此项芯片会被Google用于特定的神经网络工作,它会比同类厂商生产的芯片快15-30倍。据说此芯片兼容于神经网络的很多工作,包括卷积神经网络、图像识别、声音识别等多种多样。这也是聚焦但是多样化的体现。


Google目前已经成功运行TPU两年了,TPU被广泛用于机器翻译以及去年大火的AlphGo等工作。


论文和技术实现


数据中心的 TPU 性能分析(In-Datacenter Performance Analysis of a Tensor Processing Unit)


摘要

论文评估了一款自 2015 年以来就被应用于数据中心的定制化 ASIC,亦即张量处理器(TPU),这款产品可用来加速神经网络(NN)的推理阶段。TPU 的中心是一个 65,536 的 8 位 MAC 矩阵乘法单元,可提供 92 万亿次运算/秒(TOPS)的速度和一个大的(28 MiB)的可用软件管理的片上内存。相对于 CPU 和 GPU 的随时间变化的优化方法(高速缓存、无序执行、多线程、多处理、预取……),这种 TPU 的确定性的执行模型(deterministic execution model)能更好地匹配我们的神经网络应用的 99% 的响应时间需求,因为 CPU 和 GPU 更多的是帮助对吞吐量(throughout)进行平均,而非确保延迟性能。这些特性的缺失有助于解释为什么尽管 TPU 有极大的 MAC 和大内存,但却相对小和低功耗。我们将 TPU 和服务器级的英特尔 Haswell CPU 与现在同样也会在数据中心使用的英伟达 K80 GPU 进行了比较。我们的负载是用高级的 TensorFlow 框架编写的,并是用了生产级的神经网络应用(多层感知器、卷积神经网络和 LSTM),这些应用占到了我们的数据中心的神经网络推理计算需求的 95%。TPU 大约 15-30 倍快于当前的 GPU 或者 CPU,速度/功率比(TOPS/Watt)大约高 30-80 倍。此外,如果在 TPU 中使用 GPU 的 GDDR5 内存,那么速度(TOPS)还会翻三倍,速度/功率比(TOPS/Watt)能达到 GPU 的 70 倍以及 CPU 的 200 倍。


6 种神经网络应用(每种神经网络类型各 2 种)占据了 TPU 负载的 95%。表中的列依次是各种神经网络、代码的行数、神经网络中层的类型和数量(FC 是全连接层、Conv 是卷积层,Vector 是向量层,Pool 是池化层)以及 TPU 在 2016 年 7 月的应用普及程度。RankBrain [Cla15] 使用了 DNN,谷歌神经机器翻译 [Wu16] 中用到了 LSTM,Inception 用到了 CNN,DeepMind AlphaGo [Sil16][Jou15] 也用到了 CNN。

TPU 各模块的框图。主要计算部分是右上方的黄色矩阵乘法单元。其输入是蓝色的「权重 FIFO」和蓝色的统一缓存(Unified Buffer(UB));输出是蓝色的累加器(Accumulators(Acc))。黄色的激活(Activation)单元在Acc中执行流向UB的非线性函数。


TPU 芯片布局图。阴影同上图。蓝色的数据缓存占芯片的 37%。黄色的计算是 30%。绿色的I/O 是 10%。红色的控制只有 2%。CPU 或 GPU 中的控制部分则要大很多(并且非常难以设计)。


矩阵乘法单元的 systolic 数据流。软件具有每次读取 256B 输入的错觉,同时它们会立即更新 256 个累加器 RAM 中其中每一个的某个位置。

谷歌 TPU 与英特尔 Haswell E5-2699 v3、英伟达Tesla K80 的性能对比。E5 有 18 个核,K80 有 13 个 SMX 处理器。目前已经测量了功率。低功率 TPU 比高功率 GPU 能够更好地匹配机架(rack)级密度。每个 TPU 的 8 GiB DRAM 是权重内存(Weight Memory)。这里没有使用 GPU Boost 模式。SECDEC 和非 Boost 模式把  K80 带宽从 240 降至 160。非 Boost 模式和单裸片 vs 双裸片性能把 K80 峰值 TOPS 从 8.7 降至 2.8(*TPU 压模小于等于半个 Haswell 压模大小)。


Tensorflow简介(摘自维基百科)

TensorFlow是一个开源软件库,用于各种感知和语言理解任务的机器学习。[3]目前被50个团队[3]:min 0:15/2:17用于研究和生产许多Google商业产品[4]:p.2,如语音识别...
  • The_star_is_at
  • The_star_is_at
  • 2018年01月20日 20:30
  • 64

李飞飞:我的2017

本文经AI新媒体量子位(公众号 ID: QbitAI)授权转载,转载请联系出处李飞飞今天连发了八条Twitter~在这八条推文中,李飞飞总结了即将过去的一年。对于这位女神级的AI科学家来说,2017年...
  • zw0Pi8G5C1x
  • zw0Pi8G5C1x
  • 2017年12月27日 00:00
  • 92

Google Brain去年干了太多事,Jeff Dean一篇长文都没回顾完

编译 | AI科技大本营(rgznai100) 参与 | Reason_W 从AutoML、机器学习新算法、底层计算、对抗性攻击、模型应用与底层理解,到开源数据集、...
  • dQCFKyQDXYm3F8rB0
  • dQCFKyQDXYm3F8rB0
  • 2018年01月12日 21:52
  • 3551

【深度学习】老师木讲架构:深度学习平台技术演进

新智元推荐  来源:OneFlow【新智元导读】近日,袁进辉(老师木)代表OneFlow团队在全球互联网架构大会上海站做了《深度学习平台技术演进》的报告。报告包括深度学习的计算力问题、硬件基础、软件挑...
  • np4rHI455vg29y2
  • np4rHI455vg29y2
  • 2018年01月03日 00:00
  • 426

2018 年,关于深度学习的 10 个预测

我有一种预感:2018年,所有的事情都会发生巨变。我们在2017年看到的深度学习取得的惊人突破将会以一种强大的方式延续到2018年。2017年在深度学习领域的研究成果将会应用于日常的软件应用中。下面是...
  • R1uNW1W
  • R1uNW1W
  • 2018年01月11日 00:00
  • 318

从TPU看tensorflow的布局

感想|东南大学崇志宏 今天一早满眼看到的是谷歌的一篇TPU的文章,立马让我想起谷歌的深度学习框架tensorflow:深度学习的框架的三个基本要素,tensor,tensor操作和流程,因此tens...
  • chognzhihong_seu
  • chognzhihong_seu
  • 2017年04月07日 09:31
  • 900

TensorFlow和Caffe、MXNet、Keras等其他深度学习框架的对比

[转] http://www.leiphone.com/news/201702/T5e31Y2ZpeG1ZtaN.html 雷锋网按:本文作者黄文坚,PPmoney 大数据算法总监,《 Te...
  • xiangz_csdn
  • xiangz_csdn
  • 2017年02月25日 09:15
  • 10382

Google深度揭秘TPU:一文看懂内部原理,以及为何碾压GPU

搜索、街景、照片、翻译,这些Google提供的服务,都使用了Google的TPU(张量处理器)来加速背后的神经网络计算。 △ 在PCB板上的Google首款TPU和部署了TPU的数据中心 去年...
  • chenhaifeng2016
  • chenhaifeng2016
  • 2017年05月14日 11:12
  • 1139

TPU是什么材料,tpu材料属于塑料吗?

TPU是什么材料,tpu材料属于塑料吗?  有时候我们出去买日用品,如手机套的时候,会看到包装袋上面会说生产材质是TPU,我们拿在手里时候自我感觉这就是塑料,这就延伸出来一个问题,TPU是什么材料,...
  • lvshengtpu
  • lvshengtpu
  • 2016年03月30日 11:45
  • 871

TensorFlow学习笔记:编程模型

1 计算图在TensorFlow中,算法都被表示成计算图(computational graphs)。计算图也叫数据流图,可以把计算图看做是一种有向图,图中的节点表示操作,图中的边代表在不同操作之间的...
  • tinyzhao
  • tinyzhao
  • 2016年10月08日 12:49
  • 5962
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:从TPU看tensorflow的布局
举报原因:
原因补充:

(最多只允许输入30个字)