特性场景
重执行
为避免执行通信任务的环境中硬件闪断导致发生通信中断,通算融合算子可通过配置编译宏与环境变量,开启重执行能力。通算融合算子开启重执行后,AI CPU在检测到环境异常时,通过下图示意的机制,通知AI Core重新下发通信任务,避免由于硬件闪断造成的通信中断,提升通信稳定性。
当前,该能力的支持情况如下:
图1 通信任务重执行机制

开启重执行的条件如下:
- 通算融合算子的输出内存地址和输入内存地址不相同。
- 算子编译时,配置编译宏AICORE_EXCEPTION_RESTART,如下所示。具体的编译宏配置阶段和方式请参考支持自定义编译选项。
1
add_ops_compile_options(ALL OPTIONS -DAICORE_EXCEPTION_RESTART)
- 配置HCCL重执行环境变量HCCL_OP_RETRY_ENABLE,开启重执行的检测和上报能力,该环境变量的说明请参考《环境变量参考》“集合通信 > HCCL_OP_RETRY_ENABLE”。请在算子执行前设置该环境变量,具体配置如下:
1 2
# server内L0和server间L1均需配置为1, 不支持跨超节点,L2配置为0。 export HCCL_OP_RETRY_ENABLE="L0:1, L1:1, L2:0"
注意,开启重执行后,若AI Core第一次下发通信任务后通信中断,默认只重执行一次。若需修改重执行次数或重传间隔时间,请参考《环境变量参考》“集合通信 > HCCL_OP_RETRY_PARAMS”。
父主题: 通算融合