Slurm¶
这包含可用于运行 TorchX 的 TorchX Slurm 调度程序 组件。
- torchx.schedulers.slurm_scheduler 类。SlurmScheduler(session_name: str)[来源]¶
SlurmScheduler 是 slurm 的 TorchX 调度接口。TorchX 期望 slurm CLI 工具在本地安装并启用作业核算。
每个应用程序 def 都是通过 sbatch 使用异构作业调度的。 每个角色的每个副本都有一个唯一的 shell 脚本,该脚本使用其 resource allocations 和 args,然后使用 sbatch 来启动所有这些 一起。
日志将写入默认的 slurm 日志文件。
传递给它的任何调度程序选项都将作为 SBATCH 参数添加到每个 复制品。有关信息,请参阅 https://slurm.schedmd.com/sbatch.html#SECTION_OPTIONS 在参数上。
有关详细信息,请参阅:
$ torchx run --scheduler slurm utils.echo --msg hello slurm://torchx_user/1234 $ torchx status slurm://torchx_user/1234 $ less slurm-1234.out ...
特征
计划程序支持
获取日志
日志可以通过默认的 slurm 日志文件访问,但不能通过 编程 API。
分布式作业
✔️
取消作业
✔️
描述任务
部分支持。SlurmScheduler 将返回作业和副本 状态,但不提供完整的原始 AppSpec。
- describe(app_id: str) → 可选[torchx.schedulers.api.DescribeAppResponse][来源]¶
描述指定的应用程序。
- 返回
AppDef 描述,或者应用程序不存在。
None
- run_opts() → torchx.specs.api.runopts[来源]¶
返回计划程序所需的运行配置选项。 基本上是 API 的。
--help
run