TPU v6e

本文档介绍了 Cloud TPU v6e (Trillium) 的架构和支持的配置。

Trillium 是 Cloud TPU 的最新一代 AI 加速器。在所有技术界面(例如 API 和日志)以及本文档中,Trillium 都将称为 v6e。

v6e 的每个 Pod 有 256 个芯片,与 v5e 有很多相似之处。此系统经过优化,成为适用于 Transformer、文本转图片和卷积神经网络 (CNN) 训练、微调和部署的高价值产品。

系统架构

每个 v6e 芯片包含一个 TensorCore。每个 TensorCore 都有 2 个矩阵乘法单元 (MXU)、一个向量单元和一个标量单元。下表展示了 TPU v6e 相较于 TPU v5e 的主要规范及其值。

规范 v5e v6e
性能/总拥有成本 (TCO)(预期) 0.65x 1
每个芯片的峰值计算能力 (bf16) 197 TFLOPs 918 TFLOPs
每个芯片的峰值计算能力 (Int8) 393 TOPS 1836 TOPs
每个芯片的 HBM 容量 16 GB 32 GB
每个芯片的 HBM 带宽 819 GBps 1640 GBps
芯片间互连 (ICI) 带宽 1600 Gbps 3584 Gbps
每个芯片的 ICI 端口数 4 4
每个主机的 DRAM 512 GiB 1536 GiB
每个主机上的芯片数 8 8
TPU Pod 大小 256 个芯片 256 个芯片
互连拓扑 2D 环面 2D 环面
每个 Pod 的 BF16 峰值计算能力 50.63 PFLOPs 234.9 PFLOPs
每个 Pod 的全归约带宽 51.2 TB/s 102.4 TB/s
每个 Pod 的对分带宽 1.6 TB/s 3.2 TB/s
按主机配置 NIC 2 x 100 Gbps 网卡 4 x 200 Gbps 网卡
每个 Pod 的数据中心网络带宽 6.4 Tbps 25.6 Tbps
特殊功能 - SparseCore

受支持的配置

下表显示了 v6e 支持的 2D 切片形状:

拓扑 TPU 芯片 主机 虚拟机 加速器类型 (TPU API) 机器类型 (GKE API) 范围
1x1 1 1/8 1 v6e-1 ct6e-standard-1t 子宿主
2x2 4 1/2 1 v6e-4 ct6e-standard-4t 子宿主
2x4 8 1 1 v6e-8 ct6e-standard-8t 单个主机
2x4 8 1 2 - ct6e-standard-4t 单个主机
4x4 16 2 4 v6e-16 ct6e-standard-4t 多主机
4x8 32 4 8 v6e-32 ct6e-standard-4t 多主机
8x8 64 8 16 v6e-64 ct6e-standard-4t 多主机
8x16 128 16 32 v6e-128 ct6e-standard-4t 多主机
16x16 256 32 64 v6e-256 ct6e-standard-4t 多主机

附加到单个虚拟机的 8 芯片切片 (v6e-8) 针对推理进行了优化,允许在单个服务工作负载中使用所有 8 个芯片。您可以使用 Cloud 上的 Pathways 执行多主机推理。如需了解详情,请参阅使用 Pathways 执行多主机推理

如需了解每种拓扑的虚拟机数量,请参阅虚拟机类型

虚拟机类型

每个 TPU v6e 虚拟机都可以包含 1 个、4 个或 8 个芯片。4 芯片及更小的切片具有相同的非统一内存访问 (NUMA) 节点。如需详细了解 NUMA 节点,请参阅维基百科上的非统一内存访问

v6e 主机示意图

v6e 切片是使用半主机虚拟机创建的,每个虚拟机有 4 个 TPU 芯片。此规则有两种例外情况:

  • v6e-1:仅包含单个芯片的虚拟机,主要用于测试
  • v6e-8:一种全主机虚拟机,已针对推理使用情形进行优化,所有 8 个芯片都连接到单个虚拟机。

下表比较了 TPU v6e 虚拟机类型:

虚拟机类型 每个虚拟机的 vCPU 数量 每个虚拟机的 RAM (GB) 每个虚拟机的 NUMA 节点数
单芯片虚拟机 44 176 1
4 芯片虚拟机 180 720 1
8 芯片虚拟机 180 1440 2

指定 v6e 配置

使用 TPU API 分配 TPU v6e 切片时,您可以使用 AcceleratorType 参数指定其大小和形状。

如果您使用的是 GKE,请使用 --machine-type 标志指定支持您要使用的 TPU 的机器类型。如需了解详情,请参阅 GKE 文档中的规划 GKE 中的 TPU

使用 AcceleratorType

分配 TPU 资源时,您可以使用 AcceleratorType 指定切片中的 TensorCore 数量。您为 AcceleratorType 指定的值是一个字符串,格式为:v$VERSION-$TENSORCORE_COUNT。例如,v6e-8 指定一个具有 8 个 TensorCore 的 v6e TPU 切片。

以下示例展示了如何使用 AcceleratorType 创建具有 32 个 TensorCore 的 TPU v6e 切片:

gcloud

    $ gcloud compute tpus tpu-vm create tpu-name \
        --zone=zone \
        --accelerator-type=v6e-32 \
        --version=v2-alpha-tpuv6e

控制台

  1. 在 Google Cloud 控制台中,前往 TPU 页面:

    前往 TPU

  2. 点击创建 TPU

  3. 名称字段中,输入 TPU 的名称。

  4. 可用区框中,选择您要在其中创建 TPU 的可用区。

  5. TPU 类型框中,选择 v6e-32

  6. TPU 软件版本框中,选择 v2-alpha-tpuv6e。创建 Cloud TPU 虚拟机时,TPU 软件版本用于指定要安装的 TPU 运行时的版本。如需了解详情,请参阅 TPU 虚拟机映像

  7. 点击启用排队切换开关。

  8. 已排队资源的名称字段中,输入已排队的资源请求的名称。

  9. 点击创建

后续步骤