2024-11-21 一站式 AI 平台生日大派对!2024-11-21 一站式 AI 平台生日大派对! 无问芯穹特别推出多项超值福利!立即参与
Skip to content

使用 atlctl 进行原地调试

AIStudio 任务功能提供 atlctl 命令行调试工具,您可以从 Web Terminal 登录任意的任务 Worker,执行停止任务、统一下发测试命令等调试工作。

了解调试状态

调试(Debug)状态是任务生命周期中的一个特殊状态。在任务仍在运行中时,可将任务置于 Debug(调试)状态,调试结束后,可恢复任务执行。

进入调试状态

在任务运行中,进入任务详情页。Worker 的登录入口在任务详情页 Worker 信息中。登录后可进入 Web Terminal。 atlctl 工具在 Web Terminal 中直接可用,可对所有 Worker 下发调试操作。

alt text

NOTE

仅在任务运行中时可登录 Worker。

命令

atlctl 工具提供以下命令:

  • status

    查看当前任务的生命周期的状态。仅当任务处于 debugStop 状态下才能执行其他调试命令。

  • stop

    stop 命令有两个作用:

    • 停止执行训练任务代码,将任务置于 Debug 状态,可通过 atlctl status 确认执行结果。
    • 停止执行当前的 atlctl run <command> 测试任务。
  • run "<command>"

    在任务所有 Worker 上同时下发并运行调试命令。该命令不支持连续执行,建议您使用 Shell 脚本封装复杂调试命令,或在 <command> 中拼接多个 Shell 命令。

  • recover

    调试结束后,恢复执行训练任务的用户代码。

NOTE

以上命令不会占用任务的容错次数。

常规流程

  1. 查看训练任务状态(可选): atlctl status
  2. 停止当前训练任务,将任务置于 Debug 状态:atlctl stop
  3. 执行测试任务:atlctl run "/mnt/public/debug/test-comms.sh"
  4. 调试结束,终止测试任务:atlctl stop
  5. 查看训练任务是否处于 debugStop 状态:atlctl status
  6. 如果任务状态已处于 debugStop 状态,可恢复训练任务:atlctl recover

IMPORTANT

每次执行 atlctl run "<command>" 命令后,必须执行 atlctl stop 终止调试任务,否则无法再次下发 atlctl run "<command>" 命令。