昇腾社区首页
中文
注册
开发者
下载

HCCL_DFS_CONFIG

功能描述

HCCL提供了多种故障检测功能的开关设置,包括建链故障探测时间配置、集群心跳监测开关以及进程卡死检测开关等。这些检测功能开启后,能够在业务出现异常时快速定位并显示故障信息,有助于问题及时排查处理。

该环境变量支持以下配置项:

  • connection_fault_detection_time:建链故障探测时间。

    HCCL会在建链超时时启动建链失败根节点定位能力,并将失败根节点信息传播。整个过程耗时为:“connection_fault_detection_time”参数取值 + 10s的根节点信息传播时间。

    “connection_fault_detection_time”参数支持的取值:0,[20, 7200]。单位s,默认为20。

    该参数配置为“0”时,代表关闭建链故障探测功能,即建链失败时无额外等待时间,建链进程立即退出。

  • cluster_heartbeat:集群心跳监测开关,用于通信操作执行超时的情况下,扩散故障信息,并在运行日志中记录故障根节点信息。

    该参数支持两种取值:on(开启心跳监测功能)、off(关闭心跳监测功能),默认值为on。

    说明:关闭集群心跳监测开关后,通信操作执行超时的异常情况无法探测,集群故障扩散能力丢失,且根节点故障信息不会记录到运行日志中。

  • stuck_detection:进程卡死检测开关。

    该参数支持两种取值:on(开启进程卡死检测能力)、off(关闭进程卡死检测能力),默认值为on。

    对于通信性能非常敏感的场景,可通过此参数关闭进程卡死检测能力,但需要注意,关闭进程卡死检测能力后,不会再主动探测上报业务异常卡死故障。

  • inconsistent_check:算子下发不一致检测开关。

    该参数支持两种取值:on(开启进程算子下发不一致检测能力)、off(关闭进程算子下发不一致检测能力),默认值为off。

    通过此参数可以开启进程算子下发不一致检测能力,但会产生一定的性能劣化。需要注意的是,默认情况下,关闭此开关后,不再主动检测并记录算子下发不一致的问题。

    说明:此功能不支持检测HcclBatchSendRecv算子和图模式场景,且开启后会生成数据缓存,占用HOST侧内存。

  • task_monitor_interval:算法编排展开位置为AI CPU的场景下,开启算子task执行耗时时间监控。
    “task_monitor_interval”参数的取值范围为:[0, 7200000],单位ms,默认为0。
    • 取值为“0”时:关闭算子task执行耗时监控能力。
    • 取值大于“0”时:开启算子task执行耗时监控能力。当单个task执行耗时大于配置值时,则会打印该task信息,打印位置为“$HOME/ascend/log/run/device-*/”,日志关键词为“StreamTaskMonitor”。打印后会重新进行计时,即若单个task执行耗时为配置值的多倍,则会有多轮次打印信息。

    说明

    1. 该功能当前仅支持Atlas A3 训练系列产品/Atlas A3 推理系列产品,仅在算法编排展开位置为AI CPU时生效。
    2. 该功能为异常时维测功能,开启后会对业务执行性能产生影响,因此不建议业务正常运行时开启。
    3. 当该配置取值小于100ms时,无法保证功能的完备性,同时可能对业务执行性能、功能造成较大影响,甚至可能导致业务执行失败。
    4. 该配置取值较小时,存在“$HOME/ascend/log/run/device-*/”目录下日志刷屏的风险。
    5. 该功能可作为task exception的辅助维测补充,在此场景下,建议配置数值略小于“1/2 * HCCL_EXEC_TIMEOUT环境变量取值”。

本环境变量提供的检测功能仅用于辅助定位集群故障点位置,在某些复杂场景下可能不是集群业务失败的根因位置。请基于探测事件的生成时间、被检测节点的具体报错进一步确认故障根节点位置。

配置示例

export HCCL_DFS_CONFIG="connection_fault_detection_time:30,cluster_heartbeat:on,stuck_detection:on,inconsistent_check:off,task_monitor_interval:0"

使用约束

支持的型号

Atlas A3 训练系列产品/Atlas A3 推理系列产品

Atlas A2 训练系列产品/Atlas A2 推理系列产品针对Atlas A2 训练系列产品/Atlas A2 推理系列产品,仅支持Atlas 800T A2 训练服务器、Atlas 900 A2 PoD 集群基础单元、Atlas 200T A2 Box16 异构子框。