昇腾社区首页
中文
注册

功能特点

断点续训特性在Kubernetes(以下简称K8s)集群中训练任务出现故障时,使系统能够感知故障,将故障资源进行处理或隔离,并根据训练任务需要重新分配资源,通过之前保存的周期性的ckpt重新拉起训练任务继续训练,缩短损失时间。

断点续训主要分为故障发现、故障处理和训练重启三个阶段,每个阶段的说明如下。

  • 故障发现:通过MindCluster Ascend Device PluginMindCluster VolcanoMindCluster NodeD三个组件提供的能力检查节点、芯片、参数面网络或业务面的健康状态和故障类型。
  • 故障处理:故障发生后,根据上报的故障信息进行故障处理。分为以下两种模式。
    • 重调度模式:在该模式下存在以下两种重调度策略。
      • 直接重调度:训练过程中发生确定的故障,系统将故障节点或芯片进行隔离,直接对任务进行重调度。
      • 无条件重试:训练过程中发生未确定故障,导致任务容器异常退出,系统无条件对任务进行重调度。
    • 优雅容错模式:当训练时芯片设备出现故障后,系统将尝试对故障芯片进行自动恢复,如果可以恢复则将任务原地拉起继续训练,不能恢复则回退至重调度模式。如果用户训练时没有备用资源或者期望设备自动恢复,推荐选择优雅容错模式

      若设备之间采用网线直连的方式进行组网,芯片故障发生后,优雅容错会重置设备导致网络故障。该故障会触发重调度模式,任务Pod将会被重调度。

  • 训练重启:在任务重新调度之后,训练任务会使用故障前自动保存的ckpt,重新拉起训练任务继续训练,缩短训练损失时间。