0

我最近提交了一个训练作业,其命令如下:

gcloud ai-platform jobs submit training foo --region us-west2 --master-image-uri us.gcr.io/bar:latest -- baz qux

(有关此命令如何工作的更多信息:https ://cloud.google.com/ml-engine/docs/training-jobs )

我的代码中有一个错误导致作业继续运行,而不是终止。两周和 61 美元后,我发现了自己的错误并取消了工作。我想确保我不会再犯这种错误。

我正在考虑使用timeout训练容器中的命令来杀死进程,如果它需要太长时间(典型的运行时间大约是 2 或 3 小时),但我不相信容器会杀死自己,我更愿意配置 GCP 来杀死它外部。

有没有办法做到这一点?

4

2 回答 2

1

作为一种解决方法,您可以编写一个小脚本来运行您的命令,然后休眠您想要的时间,直到运行取消作业命令

由于 AI Platform 训练服务中没有超时定义,我冒昧地打开了一个带有 Feature Request 的 Public Issue 来记录该命令的缺失。您可以在此处跟踪 PI 进度。

于 2020-01-02T14:01:37.597 回答
0

除了上面提到的脚本,你还可以尝试:

  • TimeOut Keras 回调,或 timeout= Optuna 参数(取决于您实际使用的库)
  • Cron 触发的 Lambda(云函数)
于 2021-06-27T06:51:48.903 回答