TPU 软件版本

本文档介绍了如何在创建 Cloud TPU 时选择适当的 TPU 软件版本。

创建 TPU 资源时,您需要指定软件版本(也称为运行时版本),它是指在 TPU 虚拟机上预安装的软件环境。这包括 Ubuntu 操作系统、Docker 以及在 TPU 上运行代码所需的其他软件。

如果您使用的是 Google Cloud CLI,请使用 --version--runtime-version 参数指定 TPU 软件版本。如果您使用的是 Google Cloud 控制台,请从 TPU 软件版本列表中选择 TPU 软件版本。

PyTorch 和 JAX

请使用以下适用于 PyTorch 和 JAX 的常见 TPU 软件版本,然后安装您要使用的框架。

TPU 版本 TPU 软件版本
Trillium (v6e) v2-alpha-tpuv6e
v5p v2-alpha-tpuv5
v5e v2-alpha-tpuv5-lite
v4 及更低版本 tpu-ubuntu2204-base

如需详细了解安装以及如何开始使用 PyTorch 或 JAX,请参阅使用 PyTorch 在 Cloud TPU 虚拟机上运行计算以及使用 JAX 在 Cloud TPU 虚拟机上运行计算

TensorFlow

TPU 软件版本的名称由以下部分组成:

  • tpu-vm-tf
  • TensorFlow 版本
  • -pod(如果您使用的是多主机 TPU 切片)
  • -pjrt(如果您使用的是 PJRT API

如需详细了解如何指定 TPU 软件版本,请参阅以下部分。

每个 TensorFlow 版本都有特定的 TPU 软件版本。下表显示了支持的 TensorFlow 版本和关联的 libtpu 版本:

TensorFlow 版本 libtpu.so 版本
2.18.0 1.12.0
2.17.1 1.11.1
2.17.0 1.11.0
2.16.2 1.10.1
2.16.1 1.10.1
2.15.1 1.9.0
2.15.0 1.9.0
2.14.1 1.8.1
2.14.0 1.8.0
2.13.1 1.7.1
2.13.0 1.7.0
2.12.1 1.6.1
2.12.0 1.6.0
2.11.1 1.5.1
2.11.0 1.5.0
2.10.1 1.4.1
2.10.0 1.4.0
2.9.3 1.3.2
2.9.1 1.3.0
2.8.3 1.2.3
2.8.0 1.2.0
2.7.3 1.1.2

如需详细了解 TensorFlow 补丁版本,请参阅支持的 TensorFlow 补丁版本

TPU v6e、v5p 和 v5e

TPU v6e、v5e 和 v5p 支持 TensorFlow 2.15.0 及更高版本。您可以使用以下格式指定 TPU 软件版本:tpu-vm-tf-x.y.z-{pod}-pjrt,其中 x 是主要 TensorFlow 版本,y 是次要版本,z 是 TensorFlow 补丁版本。如果您使用的是多主机 TPU,请在 TensorFlow 版本后面添加 pod。例如,如果您在多主机 TPU 上使用 TensorFlow 2.16.0,请使用 tpu-vm-tf-2.16.0-pod-pjrt TPU 软件版本。对于其他版本的 TensorFlow,请将 2.16.0 替换为您使用的 TensorFlow 的主要版本和补丁版本。如果您使用的是单主机 TPU,请省略 pod

TPU v4

如果您使用的是 TPU v4 和 TensorFlow 2.10.1 或更高版本,请按照适用于 TPU v2 和 v3 的说明操作。如果您使用的是 TensorFlow 2.10.0 或更低版本,请使用 v4 特有的 TPU 软件版本:

TensorFlow 版本 TPU 软件版本
2.10.0 tpu-vm-tf-2.10.0-v4
tpu-vm-tf-2.10.0-pod-v4
2.9.3 tpu-vm-tf-2.9.3-v4
tpu-vm-tf-2.9.3-pod-v4
2.9.2 tpu-vm-tf-2.9.2-v4
tpu-vm-tf-2.9.2-pod-v4
2.9.1 tpu-vm-tf-2.9.1-v4
tpu-vm-tf-2.9.1-pod-v4

TPU v2 和 v3

如果您使用的是 TPU v2 或 v3,请使用与您所用的 TensorFlow 版本匹配的 TPU 软件版本。例如,如果您使用的是 TensorFlow 2.14.1,请使用 tpu-vm-tf-2.14.1 TPU 软件版本。对于其他版本的 TensorFlow,请将 2.14.1 替换为您使用的 TensorFlow 版本。如果您使用的是多主机 TPU,请将 Pod 附加到 TPU 软件版本的末尾,例如 tpu-vm-tf-2.14.1-pod

从 TensorFlow 2.15.0 开始,您还必须指定设备 API 作为软件版本名称的一部分。例如,如果您将 TensorFlow 2.16.1 与 PJRT API 搭配使用,请使用 TPU 软件版本 tpu-vm-tf-2.16.1-pjrt。如果您将流执行器 API 与同一 TensorFlow 版本搭配使用,请使用 tpu-vm-tf-2.16.1-se TPU 软件版本。低于 2.15.0 的 TensorFlow 版本仅支持流执行器。

TensorFlow PJRT 支持

从 TensorFlow 2.15.0 开始,您可以将 PJRT 接口用于 TPU 上的 TensorFlow。PJRT 具有自动设备内存碎片整理功能,可简化硬件与框架的集成。如需详细了解 PJRT,请参阅 PJRT:简化机器学习硬件和框架集成

加速器 功能 是否支持 PJRT 是否流执行器
TPU v2 - v4 密集计算(无 TPU 嵌入 API)
TPU v2 - v4 密集计算 API + TPU 嵌入 API
TPU v2 - v4 使用软设备布置的 tf.summary/tf.print
TPU v5e 密集计算(无 TPU 嵌入 API)
TPU v5e TPU 嵌入 API 不适用
TPU v5p 密集计算(无 TPU 嵌入 API)
TPU v5p TPU 嵌入 API

后续步骤

  • 如需详细了解 TPU 架构,请参阅 TPU 架构
  • 如需了解非常适合 Cloud TPU 的模型类型,请参阅何时使用 TPU