参数说明
不同的故障处理模式需要配置的参数各不相同,如表1所示,每个参数所表示的含义及填写说明详见表2。
-  | 
hotReset  | 
fault-scheduling  | 
pod-rescheduling  | 
process-recover-enable  | 
recover-strategy  | 
PROCESS_RECOVER  | 
ELASTIC_PROCESS_RECOVER_ENABLE 
 
  | 
--enable-high-availability (MindIO侧参数)  | 
--enable-hbmfault-repair (MindIO侧参数)  | 
--enable-worker-reboot(MindIO侧参数)  | 
max_restarts  | 
monitor_interval  | 
|---|---|---|---|---|---|---|---|---|---|---|---|---|
Job级别重调度  | 
-  | 
√  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
Pod级别重调度  | 
-  | 
√  | 
√  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
√  | 
√  | 
进程级别重调度  | 
-  | 
√  | 
-  | 
√  | 
√  | 
√  | 
√  | 
√  | 
-  | 
√  | 
√  | 
√  | 
进程级在线恢复  | 
-  | 
√  | 
-  | 
√  | 
√  | 
√  | 
√  | 
√  | 
√  | 
-  | 
√  | 
√  | 
优雅容错  | 
√  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
-  | 
参数名称  | 
参数位置  | 
参数说明  | 
|---|---|---|
hotReset  | 
Ascend Device Plugin组件的启动YAML  | 
优雅容错功能开关。 取值为1:使用断点续训时,可以在Job级或Pod级重调度的基础上,开启热复位功能,使用优雅容错模式; 取值为2:使用进程级恢复时,请将hotReset参数值设置为2,开启离线恢复模式。  | 
pod-rescheduling  | 
训练任务YAML的metadata.labels  | 
  | 
fault-scheduling  | 
训练任务YAML的metadata.labels  | 
重调度开关。  | 
process-recover-enable  | 
训练任务YAML的metadata.labels  | 
  | 
recover-strategy  | 
训练任务YAML的metadata.annotations  | 
任务可用恢复策略。 
  | 
PROCESS_RECOVER  | 
训练任务YAML的spec.replicaSpecs.{ Master|Scheduler| Worker}.template.spec.containers.env  | 
进程级别重调度及进程级在线恢复Elastic Agent侧总开关。 
  | 
ELASTIC_PROCESS_RECOVER_ENABLE  | 
启动训练YAML的 spec.replicaSpecs.{ Master|Scheduler| Worker}. template.spec.containers.args  | 
Elastic Agent侧进程级别重调度、进程级在线恢复、临终CheckPoint恢复功能开关。  | 
--enable-high-availability  | 
训练脚本pretrain_gpt.py的启动参数  | 
故障快速恢复特性开关,默认关闭,配置后即开启临终遗言功能。  | 
--enable-hbmfault-repair  | 
训练脚本pretrain_gpt.py的启动参数  | 
进程级在线恢复功能开关,默认关闭,配置后对片上内存进行故障检测,并完成在线修复。需同时开启enable-high-availability。  | 
--enable-worker-reboot  | 
训练脚本pretrain_gpt.py的启动参数  | 
进程级别重调度功能开关,默认关闭。配置后在发生一般性故障时,进行进程级别重调度。需同时开启enable-high-availability。  | 
max_restarts  | 
启动训练的shell脚本(例如train_start.sh)中  | 
配置容器内最大允许触发的故障次数,取值为整数。超出次数后PyTorch训练进程会直接退出训练,不配置该参数时默认为32767次。  | 
monitor_interval  | 
启动训练的shell脚本(例如train_start.sh)中  | 
配置监测训练进程状态的时间间隔,单位为秒,取值为整数。不配置该参数时默认为5秒。  |