了解 AI Platform Training 服务

本页面介绍了训练作业的状态(通过训练作业的生命周期),以及 AI Platform Training 如何处理训练错误。您可以使用此信息来相应地调整您的训练代码。

训练作业的生命周期

本部分介绍 AI Platform Training 如何通过训练作业的生命周期处理工作器虚拟机。

并行启动工作器

训练作业开始时,AI Platform Training 会在短时间内安排尽可能多的工作器。因此,工作器可能会并行启动,而不是按顺序启动。为了缩短启动延迟时间,AI Platform Training 会在每个工作器上运行代码后立即开始运行该代码。当所有工作器都可用时,AI Platform Training 会将作业状态设置为 RUNNING

在大多数情况下,您的机器学习框架会自动处理并行启动的工作器。如果您在训练代码中使用分发策略,则可能需要手动调整策略以处理并行启动的工作器。详细了解 TensorFlowPyTorch 中的分发策略。

在训练作业期间重启工作器

在训练作业期间,AI Platform Training 可以重启具有相同主机名的主实例、工作器或参数服务器。出现此情况的原因如下:

  • 虚拟机维护:当运行工作器的虚拟机进行维护时,AI Platform Training 会在另一个虚拟机上重启该工作器。 详细了解适用于虚拟机维护的实时迁移
  • 非零退出:如果任何工作器在退出时显示非零退出代码,则 AI Platform Training 会立即在同一虚拟机中重启该工作器。

    • 如果工作器由于常见错误失败,则将其视为永久性错误,AI Platform Training 将关停整个作业。如果 AI Platform Training 在关闭整个作业之前重新启动任何容器,这些容器可能会在 Cloud Logging 中生成日志。
    • 如果工作器因非永久错误常见错误中未列出的任何错误)而失败,AI Platform Training 允许重启的工作器继续运行(每个工作器最多重启 5 次)。5 次重启后,如果工作器再次失败,AI Platform Training 最多重试整个作业 3 次,然后让整个作业失败。

要处理训练代码中的工作器重启,请在训练期间定期保存检查点,以便在工作器重启时从检查点恢复。如果您预计训练时间超过 4 小时,我们建议至少每 4 小时保存一次检查点。了解如何在 TensorFlowPyTorch 中使用训练检查点。

已成功完成作业

如果训练作业的主要副本退出并且退出代码为 0,则表示训练作业已成功完成。此时,AI Platform Training 会关停所有其他正在运行的工作器。

AI Platform Training 如何处理训练作业错误

本部分介绍 AI Platform Training 如何处理常见的训练作业错误和内部错误。

作业结束后一分钟左右,AI Platform Training 会根据退出代码在训练作业对象上设置错误代码。

处理常见错误

如果遇到以下任何问题,AI Platform Training 会关停所有工作器:

错误类型 错误消息/日志 备注
用户代码异常 副本 REPLICA_NAME 退出且非零状态 EXIT_CODE。终止原因:REASON 如果作业遇到可以瞬时退出的退出代码,AI Platform Training 会尝试重启该作业三次。提示 AI Platform Training 重试该作业的暂时性错误代码包括:
  • SIGABRT
    • ExitCode 6
    • ExitCode 134(自定义容器)
  • SIGSEGV
    • ExitCode 11
    • ExitCode 139(自定义容器)
Out-of-memory 副本 REPLICA_NAME 因内存不足而退出,其非零状态为 EXIT_CODE GKE 在 AI Platform Training 节点上预留内存。在最小的机器类型(例如 n1-standard-4)上,AI Platform Training 系统代理占总内存的 40%。对于较大的虚拟机,开销相对较小。比较适用于 n1-standard 机器类型的可分配内存
您所在区域的容量不足(Compute Engine 容量不足) 区域资源不足:REGION_NAME。请尝试其他区域或使用其他加速器。 当 Compute Engine 已在您区域中的所选 CPU 或 GPU 达到容量时,就会发生缺货。这与您的项目配额无关。发生这种情况时,AI Platform Training 会尝试重启该作业三次。

处理内部错误

如果 AI Platform Training 发生内部错误,它会尝试重启作业两次(总共尝试三次)。如果重启尝试也失败,AI Platform Training 将返回以下错误消息:Internal error occurred for the current attempt