如何有效地将 TFRC 程序与 GCP AI 平台一起使用
How to effectively use the TFRC program with the GCP AI platform Jobs
我正在尝试 运行 将超参数调优作业添加到 GCP 的 AI 平台作业服务中,Tensorflow Research Cloud 程序已批准我
- us-central1-f 区中有 100 个可抢占式 Cloud TPU v2-8 设备
- us-central1-f 区域中的 20 个按需 Cloud TPU v2-8 设备
- europe-west4-a 区域中的 5 个按需 Cloud TPU v3-8 设备
我已经在 Tensorflow 2 上构建了一个自定义模型,我想 运行 作业指定确切的区域以利用 TFRC 程序和 AI 平台作业服务;现在我有一个 YAML 配置文件,如下所示:
trainingInput:
scaleTier: basic-tpu
region: us-central1
hyperparameters:
goal: MAXIMIZE
hyperparameterMetricTag: val_accuracy
maxTrials: 100
maxParallelTrials: 16
maxFailedTrials: 30
enableTrialEarlyStopping: True
理论上,如果我 运行 16 个并行作业,每个作业都在一个单独的 TPU 实例中应该可以工作,但是 return 由于请求超过 TPU_V2 的配额而导致的错误
ERROR: (gcloud.ai-platform.jobs.submit.training) RESOURCE_EXHAUSTED: Quota failure for project ###################. The request for 128 TPU_V2 accelerators for 16 parallel runs exceeds the allowed maximum of 0 A100, 0 TPU_V2_POD, 0 TPU_V3_POD, 16 TPU_V2, 16 TPU_V3, 2 P4, 2 V100, 30 K80, 30 P100, 6 T4 accelerators.
然后我将 maxParallelTrials 减少到只有 2 并且工作,这证实了上面的错误消息配额是由 TPU 芯片计算的,而不是 TPU 实例。
因此我想,也许我完全误解了 TFRC 程序的批准配额然后我继续检查作业是否正在使用 us-central1-f 区域但结果是使用了不需要的区域:
-tpu_node={"project": "p091c8a0a31894754-tp", "zone": "us-central1-c", "tpu_node_name": "cmle-training-1597710560117985038-tpu"}"
这种行为不允许我有效地使用已批准的免费配额,如果我理解正确的话,us-central1-c 中的工作 运行ning 正在占用我的帐户,但不会使用免费资源。因此我想知道是否有一些方法可以在 AI 平台作业中设置区域,并且可以传递一些标志以使用可抢占的 TPU。
我正在尝试 运行 将超参数调优作业添加到 GCP 的 AI 平台作业服务中,Tensorflow Research Cloud 程序已批准我
- us-central1-f 区中有 100 个可抢占式 Cloud TPU v2-8 设备
- us-central1-f 区域中的 20 个按需 Cloud TPU v2-8 设备
- europe-west4-a 区域中的 5 个按需 Cloud TPU v3-8 设备
我已经在 Tensorflow 2 上构建了一个自定义模型,我想 运行 作业指定确切的区域以利用 TFRC 程序和 AI 平台作业服务;现在我有一个 YAML 配置文件,如下所示:
trainingInput:
scaleTier: basic-tpu
region: us-central1
hyperparameters:
goal: MAXIMIZE
hyperparameterMetricTag: val_accuracy
maxTrials: 100
maxParallelTrials: 16
maxFailedTrials: 30
enableTrialEarlyStopping: True
理论上,如果我 运行 16 个并行作业,每个作业都在一个单独的 TPU 实例中应该可以工作,但是 return 由于请求超过 TPU_V2 的配额而导致的错误
ERROR: (gcloud.ai-platform.jobs.submit.training) RESOURCE_EXHAUSTED: Quota failure for project ###################. The request for 128 TPU_V2 accelerators for 16 parallel runs exceeds the allowed maximum of 0 A100, 0 TPU_V2_POD, 0 TPU_V3_POD, 16 TPU_V2, 16 TPU_V3, 2 P4, 2 V100, 30 K80, 30 P100, 6 T4 accelerators.
然后我将 maxParallelTrials 减少到只有 2 并且工作,这证实了上面的错误消息配额是由 TPU 芯片计算的,而不是 TPU 实例。
因此我想,也许我完全误解了 TFRC 程序的批准配额然后我继续检查作业是否正在使用 us-central1-f 区域但结果是使用了不需要的区域:
-tpu_node={"project": "p091c8a0a31894754-tp", "zone": "us-central1-c", "tpu_node_name": "cmle-training-1597710560117985038-tpu"}"
这种行为不允许我有效地使用已批准的免费配额,如果我理解正确的话,us-central1-c 中的工作 运行ning 正在占用我的帐户,但不会使用免费资源。因此我想知道是否有一些方法可以在 AI 平台作业中设置区域,并且可以传递一些标志以使用可抢占的 TPU。