CTCCL-Slowdetect简介
更新时间 2025-10-21 14:14:03
最近更新时间: 2025-10-21 14:14:03
CTCCL-Slowdetect是天翼云自研的用于大模型训练中慢节点检测的工具套件,需配合CTCCL-0.4.0及以上使用。
功能介绍
CTCCL-Slowdetect-1.0.0工具套件架构如图所示,包括三个模块。
· ctccm:跨节点的集中式慢节点诊断工具。部署在和所有训练任务节点网络互通的节点上,每个大模型训练任务只需部署一个ctccm服务。负责收集汇总和集中发现与定位慢节点问题。
· ctccl-profiler-comm:通信域级别集合通信信息统计工具。在每个训练任务所在的节点/容器内安装ctccl-profiler-comm插件,在训练任务的脚本中import相关库并调用API接口使用,负责获得训练任务的通信域任务拓扑,以及收集通信域级别的超时集合通信操作事件,提供给ctccm进行慢节点分析诊断。
· ctccl-profiler-net:机间通信边缘诊断工具。在每个训练任务所在的节点/容器内部署ctccl-profiler-net服务,每个训练任务节点都需要部署1个独享的ctccl-profiler-net服务。负责在边缘处理与初步诊断机间通信数据。
在大模型训练任务中使用CTCCL-Slowdetect-1.0.0工具套件,能够实现大模型训练过程中通信原因与非通信原因的慢节点检测。在发现集群中慢节点存在时,自动化开启全量集合通信操作事件监控,进一步分析定位慢节点。
参数设置
使用CTCCL-Slowdetect工具套件时,支持配置的参数如下:
服务 | 参数命令 | 描述 |
---|---|---|
CTCCL | *CTCCL_QPTIME_REPORT | 默认为0。要使用慢节点检测工具套件时,请配置为1,打开CTCCL机件通信信息统计功能。 |
ctccl-profiler-comm | *CTCCL_SLOWDETECT_SERVERADDR | ctccm的ip地址。示例:http://192.168.0.1:8000。其中端口需和ctccm的监听端口配置相同。 |
CTCCL_PROFILER_TIMEOUT_RATE | 默认为20。表示当一次集合通信操作超过一个迭代时间的20%时,判断该次集合通信为异常事件。由于每次迭代的总通信占比约为20%,故推荐设置为20,可根据集群与模型规模自行调整。 | |
ctccl-profiler-net | *CTCCL_SLOWDETECT_SERVERADDR | 同ctccl-profiler-comm |
*CTCCL_PROFILER_NETADDR | 监听训练任务信息入口。 默认为http://127.0.0.1:8001。 | |
--log-level | 日志级别。info(默认)、debug、warning、critical、error | |
ctccm | *--port | 服务使用的监听端口 |
--debug | 是否开启debug日志 | |
*--nodes | 训练任务的节点数。默认为1。 |
* 推荐自行配置。
诊断结果样例
计算慢:
通信慢: