常见问题解答 - Cloud TPU

本文档包含有关 Cloud TPU 的常见问题解答列表。它分为以下几个部分:

  1. 与框架无关的常见问题解答 - 无论您使用的是哪种机器学习框架,都可以提出有关使用 Cloud TPU 的问题。
  2. JAX 常见问题解答 - 有关将 Cloud TPU 与 JAX 搭配使用的问题。
  3. PyTorch 常见问题解答 - 有关将 Cloud TPU 与 PyTorch 搭配使用的问题。

与框架无关的常见问题解答

如何检查 Cloud TPU 虚拟机上的哪个进程正在使用 TPU?

在 Cloud TPU 虚拟机上运行 tpu-info,以输出使用 TPU 的进程的进程 ID 和其他信息。如需了解指标及其对应的定义,请参阅支持的指标

   tpu-info

tpu-info 的输出类似于以下内容:

   TPU Chips
   ┏━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━┓
    Chip         Type         Devices  PID       ┡━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━┩
    /dev/accel0  TPU v4 chip  1        130007     /dev/accel1  TPU v4 chip  1        130007     /dev/accel2  TPU v4 chip  1        130007     /dev/accel3  TPU v4 chip  1        130007    └─────────────┴─────────────┴─────────┴────────┘

   TPU Runtime Utilization
   ┏━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
    Device  Memory usage          Duty cycle    ┡━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━┩
    0       0.00 GiB / 31.75 GiB       0.00%     1       0.00 GiB / 31.75 GiB       0.00%     2       0.00 GiB / 31.75 GiB       0.00%     3       0.00 GiB / 31.75 GiB       0.00%    └────────┴──────────────────────┴────────────┘

   TensorCore Utilization
   ┏━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
    Chip ID  TensorCore Utilization    ┡━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
    0                         0.00%     1                         0.00%     3                         0.00%     2                         0.00% |
   └─────────┴────────────────────────┘

   Buffer Transfer Latency
   ┏━━━━━━━━━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━━┓
    Buffer Size  P50  P90  P95  P999    ┡━━━━━━━━━━━━━╇━━━━━╇━━━━━╇━━━━━╇━━━━━━┩
          8MB+  | 0us  0us  0us   0us |
   └─────────────┴─────┴─────┴─────┴──────┘

如何将永久性磁盘卷添加到 Cloud TPU 虚拟机?

如需了解详情,请参阅将永久性磁盘添加到 TPU 虚拟机

如需了解详情,请参阅 Cloud TPU 存储选项

JAX 常见问题解答

如何知道我的程序是否在使用 TPU?

您可以通过以下几种方式仔细检查 JAX 是否在使用 TPU:

  1. 使用 jax.devices() 函数。例如:

    assert jax.devices()[0].platform == 'tpu'
    
  2. 对程序进行性能分析,并验证性能分析是否包含 TPU 操作。如需了解详情,请参阅对 JAX 程序进行性能分析

如需了解详情,请参阅 JAX 常见问题解答

PyTorch 常见问题解答

如何知道我的程序是否在使用 TPU?

您可以运行以下 Python 命令:

>>> import torch_xla.core.xla_model as xm
>>> xm.get_xla_supported_devices(devkind="TPU")

并验证您是否可以看到任何 TPU 设备。