我正在训练一个模型,当我在 Google Cloud Platform 控制台中打开 TPU 时,它会显示 CPU 利用率(我想是在 TPU 上)。它真的非常低(比如 0.07%),所以可能是 VM CPU?我想知道培训是否真的合适,或者 TPU 是否真的那么强大。
有没有其他方法可以检查 TPU 的使用情况?也许有一个ctpu
命令?
我正在训练一个模型,当我在 Google Cloud Platform 控制台中打开 TPU 时,它会显示 CPU 利用率(我想是在 TPU 上)。它真的非常低(比如 0.07%),所以可能是 VM CPU?我想知道培训是否真的合适,或者 TPU 是否真的那么强大。
有没有其他方法可以检查 TPU 的使用情况?也许有一个ctpu
命令?
我建议使用插入到 TensorBoard 中的 TPU 分析工具。可以在此处找到安装和使用这些工具的好教程。
您将在 TPU 训练时运行分析器。它将为您的 TensorBoard 添加一个额外的选项卡,其中包含特定于 TPU 的分析信息。其中最有用的:
基于这些指标,分析器将建议开始优化模型以在 TPU 上进行良好训练的方法。您还可以深入了解更复杂的分析工具,例如跟踪查看器或最昂贵的图形操作列表。
有关性能调整的一些指南(除了那些已经链接的 ch_mike),您可以查看TPU 性能指南。
如果您正在查看 GCP -> Compute Engine -> TPU,那么您正在查看正确的位置。如果您看到关联的 Compute Engine 实例的监控图表,您会看到 CPU 图表有所不同。
目前,似乎没有其他方法可以查找该信息,因为这些选项都没有提供它:
gcloud compute tpus describe <tpu-name> --zone=<zone>
ctpu status --details
TPU API也没有
(vm)$ capture_tpu_profile --tpu=$TPU_NAME --monitoring_level=2
设置 monitoring_level=2 显示更详细的信息:
TPU type: TPU v2 Number of TPU Cores: 8 TPU idle time (lower is better): 0.091% Utilization of TPU Matrix Units is (higher is better): 10.7% Step time: 1.95 kms (avg), 1.90kms (minute), 2.00 kms (max) Infeed percentage: 87.5% (avg). 87.2% (min), 87.8 (max)
参考:https ://cloud.google.com/tpu/docs/cloud-tpu-tools#monitor_job