Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
返回 Ultralytics 术语表

TPU (Tensor Processing Unit)

张量处理单元(TPU)是 Google 为神经网络运算定制的芯片。了解其脉动阵列的工作原理、它与 GPU 的比较,以及 Edge TPU。

张量处理单元 (TPU) 是 Google 设计的一种专用集成电路 (ASIC),用于加速神经网络的训练和推理。TPU 以大型矩阵乘法单元为核心构建,因为矩阵乘法占据了深度学习的大部分计算量。自 2015 年以来,Google 一直在其数据中心运行 TPU,并使用 TPU 训练 Gemini 模型,还通过 Cloud TPU向其他公司出租 TPU。2026 年 4 月公布的第八代产品分为两款芯片:用于训练的 TPU 8t 和用于推理的 TPU 8i。

TPU 的工作原理#

每个 TPU 的核心是矩阵乘法单元(MXU),它以脉动阵列形式排列,由相互传递数据的乘加单元构成。权重加载到单元中一次后,输入每个时钟周期在网格中前进一格,部分和则沿列向下传递,因此从内存中读取的每个值都能被多个单元重复使用。读取内存所需的时间和能量远高于执行算术运算,这正是该设计高效的原因。在 Cloud TPU v2 和 v3 中,每个 MXU 都是 128×128 阵列,使用 bfloat16执行乘法,并以 FP32累加。下面用一个简短模拟展示 4×4 网格上的数据流:

import numpy as np

rng = np.random.default_rng(0)
W = rng.integers(-5, 5, (4, 4))  # weights, preloaded one per cell of a 4x4 grid
X = rng.integers(-5, 5, (6, 4))  # six input rows stream through the grid
Y = np.zeros((6, 4), dtype=int)

# Cell (k, j) holds W[k, j]. Input X[i, k] enters row k from the left and reaches
# cell (k, j) at cycle i + k + j, where it is multiplied by the stored weight and
# added to the partial sum for Y[i, j] passing down column j
cycles = 6 + 4 + 4 - 2
for t in range(cycles):
    for k in range(4):
        for j in range(4):
            i = t - k - j
            if 0 <= i < 6:
                Y[i, j] += X[i, k] * W[k, j]

print(f"{X.size * 4} multiply-adds in {cycles} cycles, equal to X @ W: {np.array_equal(Y, X @ W)}")

它会打印 96 multiply-adds in 12 cycles, equal to X @ W: True:16 个单元会计算出精确的矩阵乘积,每个权重只从内存中读取一次,随后供全部六行输入重复使用。第一代 TPU在 256×256 的 8 位单元网格上执行这种计算模式,每个周期可完成 65,536 次乘加运算,峰值性能为每秒 92 万亿次运算。其简单、确定性的执行方式符合 Google 的目标,即满足推理任务第 99 百分位数的响应时间目标。

TPU 运行由 XLA编译的代码。XLA 会获取来自 JAX、TensorFlow或 PyTorch的整个计算图,并将其映射到矩阵单元上。芯片通过专用互连组成包含数千个芯片的 Pod,这使得最大的基础模型能够同时在多个 TPU 上训练。

TPU、GPU 与 CPU 的比较#

  • CPU:由少量强大的核心构成,擅长处理分支和通用代码;在大多数训练流水线中,CPU 负责数据加载和预处理。
  • GPU:拥有数千个可编程核心,以及用于矩阵运算的 Tensor Core。GPU 能够运行几乎任何模型和框架,并由许多供应商和云服务商销售。
  • TPU:牺牲灵活性,换取大型稠密矩阵运算的效率。静态张量形状的工作负载效果最好,因为形状变化会导致 XLA 重新编译;自定义运算、大量分支或高精度算术则不太适合 TPU。
  • NPU:手机、笔记本电脑和边缘芯片中神经网络加速器的统称,Edge TPU 也属于这一类别。

Edge TPU#

Edge TPU是一款仅用于推理的小型 TPU,也是 Google Coral USB 加速器、M.2 和 PCIe 模块以及开发板中的芯片。它以 2 瓦功耗每秒执行 4 万亿次运算,并且只运行 8 位整数运算,因此网络必须通过模型量化完全转换为 INT8,然后使用 Google 的 Edge TPU Compiler 编译;编译器会将受支持的运算放到芯片上执行,其余运算则留给主机 CPU。Ultralytics YOLO 通过 format="edgetpu"自动完成这两个步骤:该参数会启用 INT8 量化,并在 x86-64 Linux 计算机上运行编译器,生成可在配备 Coral USB 加速器的 Raspberry Pi等开发板上运行的模型:

from ultralytics import YOLO

# Load the smallest YOLO26 detection model
model = YOLO("yolo26n.pt")

# Quantize to INT8 and compile for the Edge TPU (x86-64 Linux only)
path = model.export(format="edgetpu")
print(f"Edge TPU model: {path}")

Google 的 Coral 平台目前以 Coral NPU为核心。这是一种于 2025 年 10 月发布、面向可穿戴设备的开源 RISC-V 加速器设计,目标是在数毫瓦功耗下实现每秒 5120 亿次运算。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来