TPU v5p
本文档介绍了 Cloud TPU v5p 的架构和支持的配置。
系统架构
本节介绍特定于 v5p 版本的系统架构。每个 TensorCore 均有四个矩阵乘法单位 (MXU)、一个矢量单位和一个标量单位。
单个 v5p Pod 中有 8960 个芯片。可以安排的最大作业是 96 个立方体(6144 个芯片)作业。
下表显示了 v5p 的主要规范。
密钥规范 | v5p 值 |
---|---|
每个芯片的峰值计算 (bf16) | 459 个 TFLOP |
HBM2e 容量和带宽 | 95GB、2765 GBps |
TPU Pod 大小 | 8960 芯片 |
互连拓扑 | 3D 环 |
芯片间互连 BW | 4800 Gbps |
配置
TPU v5p Pod 由 8960 个芯片组成,通过可重新配置的高速链路互连。TPU v5p 的灵活网络使您能够以多种方式将芯片连接到相同大小的切片。使用 gcloud compute tpus tpu-vm create
命令创建 TPU 切片时,您可以使用 AcceleratorType
或 AcceleratorConfig
参数指定其类型和形状。
下表显示了 v5p 支持的最常见单切片形状,以及大多数(但不是所有)大于 1 个立方体的完整立方体形状。v5p 的最大形状为 16x16x24(6144 个芯片、96 个立方体)。
切片形状 | 虚拟机大小 | 核心数量 | 条状标签数量 | 机器数量 | 方块数量 | 是否支持 Twisted? |
2x2x1 | 完整主机 | 8 | 4 | 1 | 不适用 | 不适用 |
2x2x2 | 完整主机 | 16 | 8 | 2 | 不适用 | 不适用 |
2x4x4 | 完整主机 | 64 | 32 | 8 | 不适用 | 不适用 |
4x4x4 | 完整主机 | 128 | 64 | 16 | 1 | 不适用 |
4x4x8 | 完整主机 | 256 | 128 | 32 | 2 | 是 |
4x8x8 | 完整主机 | 512 | 256 | 64 | 4 | 是 |
8x8x8 | 完整主机 | 1024 | 512 | 128 | 8 | 不适用 |
8x8x16 | 完整主机 | 2048 年 | 1024 | 256 | 16 | 是 |
8x16x16 | 完整主机 | 4096 | 2048 年 | 512 | 32 | 是 |
16x16x16 | 完整主机 | 8192 | 4096 | 1024 | 64 | 不适用 |
16x16x24 | 完整主机 | 12288 | 6144 | 1536 | 96 | 不适用 |
最多支持 6144 个芯片进行单切片训练。它可使用 Multislice 扩展到 18,432 个芯片。如需了解多切片详细信息,请参阅 Cloud TPU 多切片概览。
使用 AcceleratorType 参数
分配 TPU 资源时,可以使用 --accelerator-type
参数指定切片中的 TensorCore 数量。--accelerator-type
是格式化的字符串“v$VERSION_NUMBER
p-$CORES_COUNT
”。例如,v5p-32
指定包含 32 个 TensorCore(16 个芯片)的 v5p TPU 切片。
如需为 v5p 训练作业预配 TPU,请在 CLI 或 TPU API 创建请求中使用以下加速器类型之一:
- v5p-8
- v5p-16
- V5p-32
- 5p-64
- v5p-128(一个完整的立方体/机架)
- v5p-256(2 个立方体)
- V5p-512
- v5p-1024 ... v5p-12288
使用 AcceleratorConfig 参数
对于 v5p 及更高版本 Cloud TPU,AcceleratorConfig 与 Cloud TPU v4 的使用方式大致相同。不同之处在于,您不用将 TPU 类型指定为 --type=v4
,而是将其指定为正在使用的 TPU 版本(例如,对于 v5p 版本,使用 --type=v5p
)。
Cloud TPU ICI 弹性
ICI 弹性有助于提高在立方体之间连接 TPU 的光链路和光学电路开关 (OCS) 的容错能力。(立方体内的 II 连接使用不受影响的铜色链接)。 ICI 弹性允许 ICI 连接围绕 OCS 和光学 ICI 故障进行路由。因此,它提高了 TPU 切片的调度可用性,但以暂时降低 ICI 性能为代价。
与 Cloud TPU v4 类似,对于是一个立方体或更大的 v5p 切片,系统会默认启用 ICI 弹性:
- 指定加速器类型时为 v5p-128
- 指定加速器配置时为 4x4x4
虚拟机、主机和切片属性
属性 | TPU 中的值 |
v5p 芯片数量 | 4 |
vCPU 的数量 | 208(如果使用 NUMA 绑定以避免跨 NUMA 性能损失,则只能使用一半) |
RAM (GB) | 448(如果使用 NUMA 绑定以避免跨 NUMA 性能损失,则只能使用一半) |
NUMA 节点数量 | 2 |
NIC 吞吐量 (Gbps) | 200 |
Pod 中 TensorCore、芯片、主机/虚拟机和立方体数量之间的关系:
核心 | 条状标签 | 主机/虚拟机 | 方块 | |
---|---|---|---|---|
主机 | 8 | 4 | 1 | |
立方体(也称为机架) | 128 | 64 | 16 | 1 |
支持的最大切片 | 12288 | 6144 | 1536 | 96 |
v5p 完整 Pod | 17920 | 8960 | 2240 | 140 个 |