张量处理单元

张量处理单元（英文：，简称：），也称张量处理器，是 Google 开发的专用集成电路（ASIC），专门用于加速机器学习。自 2015 年起，谷歌就已经开始在内部使用 TPU，并于 2018 年将 TPU 提供给第三方使用，既将部分 TPU 作为其云基础架构的一部分，也将部分小型版本的 TPU 用于销售。

总览 
2016 年 5 月，Google 在 Google I/O 上宣布了张量处理单元，并表示 TPU 已经在其数据中心内部使用了超过一年。该芯片是专门为 Google 的 TensorFlow 框架（一个符号数学库，用于机器学习应用程序，如神经网络）设计的。不过，截至 2017 年，Google 也将 CPU 和 GPU 用于其他类型的机器学习。其他供应商也设计了自己的 AI 加速器，并针对嵌入式和机器人市场。

Google 的 TPU 是专有的，一些 TPU 的型号已经上市。在 2018 年 2 月 12 日，纽约时报报道称 Google 将“允许其他公司通过其云计算服务购买对这些芯片的访问权”。Google 曾称，它们已用于 AlphaGo 与李世乭的人机围棋对战以及 AlphaZero 系统中。Google还使用 TPU 进行 Google 街景中的文本处理，并且能够在不到五天的时间内找到 Google 街景数据库中的所有文本。在 Google 相册中，单个 TPU 每天可以处理超过1亿张照片。TPU 也被用在 Google 用来提供搜索结果的  中。

与图形处理单元（GPU）相比，TPU 被设计用于进行大量的低精度计算（如 8 位的低精度），每焦耳功耗下的输入/输出操作更多，但缺少用于光栅化/纹理映射的硬件。

根据  的说法，TPU 可以安装在散热器组件中，从而可以安装在数据中心机架上的硬盘驱动器插槽中。

产品

第一代 TPU 
第一代TPU是一个 8 位矩阵乘法的引擎，使用复杂指令集，并由主机通过 PCIe 3.0 总线驱动。它采用28 nm工艺制造，裸晶尺寸小于 331 mm2，时钟速度为 700 MHz，热设计功耗为 28–40 W。它有28 MiB 的片上存储和 4 MiB 的 32位累加器，取 8 位乘法器的 256×256 脉动阵列的计算结果。TPU 还封装了 8 GiB 的双通道 2133 MHz DDR3 SDRAM，带宽达到 34 GB/s。TPU 的指令向主机进行数据的收发，执行矩阵乘法和卷积运算，并应用激活函数。

第二代 TPU 
第二代 TPU 于 2017 年 5 月发布。Google 表示，第一代 TPU 的设计受到了内存带宽的限制，因此在第二代设计中使用 16 GB 的高带宽内存，可将带宽提升到 600 GB/s，性能从而可达到 45 TFLOPS。TPU 芯片随后被排列成性能为 180 TFLOPS 的四芯片模块，并将其中的 64 个这样的模块组装成 256 芯片的 Pod，性能达到 11.5 PFLOPS。值得注意的是，第一代 TPU 只能进行整数运算，但第二代 TPU 还可以进行浮点运算。这使得第二代 TPU 对于机器学习模型的训练和推理都非常有用。谷歌表示，这些第二代TPU将可在 Google 计算引擎上使用，以用于 TensorFlow 应用程序中。

第三代 TPU 
第三代 TPU 于 2018 年 5 月 8 日发布。谷歌宣布第三代 TPU 的性能是第二代的两倍，并将部署在芯片数量是上一代的四倍的 Pod 中。与部署的第二代 TPU 相比，这使每个 Pod 的性能提高了 8 倍（每个 Pod 中最多装有 1,024 个芯片）。

第四代 TPU 
第四代 TPU 于 2021 年 5 月 19 日发布。谷歌宣布第四代 TPU 的性能是第三代的2.7倍，并将部署在芯片数量是上一代的两倍的 Pod 中。与部署的第三代 TPU 相比，这使每个 Pod 的性能提高了 5.4 倍（每个 Pod 中最多装有 4,096 个芯片）。

参见 
 视觉处理单元，一种专门用于视觉处理的小型设备
 TrueNorth，一种用于模拟脉冲神经网络，而非计算低精度张量的小型设备
 神经处理单元
 
 ，英伟达公司提出的类似的架构

参考文献

外部链接 
 Cloud Tensor Processing Units (TPUs)  (Google Cloud 上的文档)
 Photo of Google's TPU chip and board 
 Photo of Google's TPU v2 board 
 Photo of Google's TPU v3 board 
 Photo of Google's TPU v2 pod 

人工智慧加速器
Google硬體