这篇论文将第一代的 TPU 与部署在 Google 的相同数据中心的服务器级 Intel Haswell CPU 和 Nvidia K80 GPU 进行了性能对比。由于 TPU 是专为推理投产一个定制的ASIC芯片(并购买市售的GPU用于训练),因此论文中的性能比较也仅限于推理操作。 关于“推理”和“训练”两者之间的关联,我们可以看论文里的解释: 神经网络的两个主要阶段是训练(Training或者学习Learning)和推理(inference或者预测Prediction),也可以对应于开发和产品阶段。开发人员选择网络的层数和神经网络类型,并且通过训练来确定权重。实际上,当前的训练几乎都是基于浮点运行,这也是GPU为何如此流行的原因之一。一个称为量化(quantization)的步骤,将浮点数转换为很窄仅使用 8 个数据位的整数,对推理过程通常是足够了。8 位的整数乘法比IEEE 754标准下16位浮点乘法降低 6 倍的能耗,占用的硅片面积也少 6 倍;而整数加法的收益是13倍的能耗与38倍的面积。
TPU(蓝线)、GPU(红线)和 CPU(金线)的性能功耗比。 论文在速度和效率两方面进行了比较。速度以存储带宽函数每秒执行的 tera-操作测量。TPU 比 CPU 和 GPU 快 15~30 倍。效率则以每瓦特能量消耗执行的 tera-操作计算。TPU 比 CPU 和 GPU 效率高 30~80 倍。 TPU,GPU,CPU 和改进的 TPU 的性能对比。 GPU(蓝色)和TPU(红色)相对于CPU的能效比(功耗/瓦,TDP),以及 TPU 相对于GPU 的能效比。TPU’是改进的TPU。绿色代表改进的 TPU 与 CPU 对比的性能,浅紫色代表改进的 TPU与 GPU 对比性能。总和数据(Total)包含了主机服务器的功耗,增量数据(Incremental)则不包含主机服务器的功耗。GM 和 WM 是几何与加权平均数据。 对硬件研究的启示:软硬件协同开发可能进一步提升设计门槛 新智元转载了 ,文章以论文《在数据中心中对张量处理器进行性能分析》为基础,从专业的角度总结了一些启示。 现在我们引用如下: 底层硬件设计,特别是以处理器设计为代表的研发工作门槛并未降低。但由于无论专用和通用处理器都需要得到最终用户的认可,考虑软件的真实需求,软硬件协同开发可能进一步提升设计门槛。(即:硅码农还是有市场需求的) 相比于神经网络模型、软件框架和应用的当前的进化速度,传统ASIC半定制或者全定制的开发周期和速度难以加速。但仍然有可能保持专用设计一定的寿命,并通过性能模型评估确定改进方案。(即:研发还是老套路,但会更困难。要硅马跑得快又少吃草或最好不吃草的情况只会恶化) 真实应用的部署和数据收集是必需的,而且有极强的说服力,当然最终目的是获得处理器目标用户的认可。(即:总有人能做出叫好又叫座的设计,有足够资源配合可能性更高些) 。在论文发布之前,甚至在初步阅读论文时很多评论表示,TPU设计没有细节,连照片都盖着散热片。但仔细阅读论文能看到,Google在2015年就提交了相关的论文申请,在AlphaGO下棋的时候就可以通过专利局网站看到相关专利了。(即:先进商业公司和上市公司的知识产权保护,购并和调查并非是装样子的。) 专业知识,仍然是一切的基础。包括TPU计算核心:由65536个乘法器构成的256x256矩阵单元,其脉动执行 Systolic Execution 都能够追溯到1984年哈佛大学研究人员在TOC上发表的论文。在NUDT求学过的应该很容易联想起向量、行波流水等概念。(即:学习和专业知识的储备依然有价值) 专家看法:要注意谷歌 TPU 给智能领域带来的新生态 中科院计算所研究员包云岗撰文评论称: 一、计算机体系结构和算法是信息技术进步的两大引擎。过去40年处理器性能提升了1,000,000倍,单台计算机内存容量增长了1,000,000,000倍。这是什么概念,上世纪70年代语音识别算法只能放几十个单词的语音到内存中进行训练,但今天可以成千上万人的几十亿个单词的语音放到内存中进行训练。大数据需要大处理能力。 (责任编辑:本港台直播) |