在GCP-> IAM&管理员->配额页面上,us-central1的服务“ Compute Engine API NVidia V100 GPU”的显示限制为4。但是,当我使用以下命令在GCP AI平台上提交培训工作时,一个错误,指出最大允许的V100 GPU为2。
以下是命令:
gcloud beta ai-platform jobs submit training $JOB_NAME \
--staging-bucket $PACKAGE_STAGING_PATH \
--job-dir $JOB_DIR \
--package-path $TRAINER_PACKAGE_PATH \
--module-name $MAIN_TRAINER_MODULE \
--python-version 3.5 \
--region us-central1 \
--runtime-version 1.14 \
--scale-tier custom \
--master-machine-type n1-standard-8 \
--master-accelerator count=4,type=nvidia-tesla-v100 \
-- \
--data_dir=$DATA_DIR \
--initial_epoch=$INITIAL_EPOCH \
--num_epochs=$NUM_EPOCHS
这是错误消息:
ERROR: (gcloud.beta.ai-platform.jobs.submit.training) RESOURCE_EXHAUSTED: Quota failure for project [PROJECT_ID]. The request for 4 V100 accelerators exceeds the allowed m
aximum of 16 TPU_V2, 16 TPU_V3, 2 P4, 2 V100, 40 K80, 40 P100, 8 T4. To read more about Cloud ML Engine quota, see https://cloud.google.com/ml-engine/quotas.
- '@type': type.googleapis.com/google.rpc.QuotaFailure
violations:
- description: The request for 4 V100 accelerators exceeds the allowed maximum of
16 TPU_V2, 16 TPU_V3, 2 P4, 2 V100, 40 K80, 40 P100, 8 T4.
subject: [PROJECT_ID]
GPUs on Compute Engine webpage表示us-central1-a
,us-central1-b
,us-central1-c
和us-central1-f
区域中有8个NVIDIA®Tesla®V100 GPU。我的默认区域是us-central1-c
。
如何使用所有4个V100 GPU进行培训?谢谢。
更新1(1/14/2020): 在this page上,它说明了有关全局GPU配额的问题,需要增加该配额以匹配每个区域的配额。但是我在“配额”页面上找不到任何地方。
为保护Compute Engine系统和用户,新项目具有全局GPU配额,该配额限制了您可以在任何受支持区域中创建的GPU总数。请求GPU配额时,必须为要在每个区域中创建的GPU模型申请配额,并为所有区域中所有类型的GPU总数申请额外的全局配额。
更新2(1/14/2020): 我与GCP联系,以增加全球GPU配额以匹配我的区域配额。他们回答说,对于某些项目,这是必需的,但对于我的项目,则不需要这样做。
答案 0 :(得分:0)
此documentation link可能会为您的错误提供一些启示:
“用于预测的GPU不会被算作Compute Engine的GPU,并且AI Platform Training的配额也不能使您访问使用GPU的任何Compute Engine VM。如果要启动Compute Engine VM使用GPU,您必须按照Compute Engine文档中的说明请求Compute Engine GPU配额。“
答案 1 :(得分:0)
Google员工告诉我:“有V100 GPUS配额和V100 VWS GPUS配额。您项目中的VWS配额仅为1。不确定此处需要哪个配额,但这可能是根本原因。”他们调整了配额后,现在我最多可以连接8个V100 GPU来进行培训。