SuperAPI AI 工具集

hccl-test

测试与质量

查看项目

更新于 10-15 23:45

技能介绍

用途:测试华为集合通信库(HCCL)在多卡/多机环境下的集合通信正确性与性能,服务于分布式训练场景的通信带宽评估。源码位于 ${INSTALL_DIR}/tools/hccl_test,支持 CANN 8.3.RC1、8.5、25.RC。

主要能力:覆盖核心算子,可执行文件包括 all_reduce_test、all_gather_test、broadcast_test、alltoall_test 等;输出 data_size、avg_time(us)、alg_bandwidth(GB/s)、check_result 等字段;提供前置检查、快速验证、多机测试与结果解析脚本。支持的 Rank 上限:Atlas 训练系列 4096,Atlas A2/A3 系列 32K(A3 的 AlltoAll/AlltoAllV 最大 8K)。

使用方式:依赖 MPI(默认 MPICH)拉起进程。先做多机前置检查 ./scripts/pre-test-check.sh <ip1> <ip2>,并在 ${INSTALL_DIR}/tools/hccl_test 下编译:make MPI_HOME=/usr/local/mpich ASCEND_DIR=${INSTALL_DIR}。单机快速连通性:mpirun -n 8 ./bin/all_reduce_test -p 8 -b 8K -e 64M -f 2 -d fp32 -o sum;多机完整性能测试:mpirun -f hostfile -n 16 ./bin/all_reduce_test -p 8 -b 8K -e 1G -f 2 -d fp32 -o sum。常用参数含 -p NPU 数、-b 起始数据量、-e 结束数据量、-f 乘法因子、-d 数据类型、-o 操作类型、-n 迭代次数、-c 结果校验。

适用场景:分布式训练的梯度聚合、参数同步与通信带宽验证,多机测试需同一超节点内配置 hostfile(节点IP:卡数)。

限制:多机测试要求节点间 SSH 免密登录、CANN 版本一致、NPU 健康状态正常;Docker 需使用 host 网络模式;AllGatherV、ReduceScatterV 存在变长参数问题(retcode: 5),资料中实测通过率 8/10;部分参数与故障排查细节需参考对应文档,此处未完整列出。