简介
技术背景与价值
随着大语言模型逐步向万卡级集群部署演进,传统的集合通信库面临以下挑战:
- 内置通信算法难以在多样化场景中持续保持较优性能。
- 通算融合趋势下,用户对灵活通信算子编程语义的需求日益凸显。
传统集合通信库封闭的黑盒设计限制了研究者探索新型通信原语,因此,HCCL开放了底层通信能力,提供轻量级通信算子开发接口,实现通信算子全栈可编程性,利于研究者开展通信方案创新。
HCCL通信算子开发接口具备以下关键特性:
- 支持昇腾设备上的多种通信引擎,充分发挥硬件能力。
- 支持多种通信协议,包括:PCIe、HCCS、RoCE、UB。
- 通信平台能力与通信算子开发解耦,支持通信算子独立开发。
软件架构
HCCL是CANN的核心组件,为NPU集群提供高性能、高可靠性的通信方案。HCCL向上支持多种AI框架,向下实现多款昇腾AI处理器之间的高效互联,其架构如下图所示。
图1 集合通信库软件架构图


HCCL包含HCCL集合通信库与HCOMM(Huawei Communication)通信基础库:
- HCCL集合通信库:包含内置通信算子和扩展通信算子,提供对外的通信算子接口。
- 内置通信算子:HCCL提供的基础通信算子,包含集合通信算子和点对点通信算子。
- 扩展通信算子:用户可以使用HCOMM通信基础库提供的接口自定义扩展通信算子。
- HCOMM通信基础库:采用分层解耦的设计思路,将通信能力划分为控制面和数据面两部分。
- 控制面:提供拓扑信息查询与通信资源管理功能。
- 数据面:提供本地操作、算子间同步、通信操作等数据搬运和计算功能。
控制面提供通信资源,数据面提供操作资源的方法,提供的相关接口可以让通信算子开发人员聚焦于业务创新,而无需关注芯片底层复杂的实现细节。
支持的产品型号
通信算子自定义开发功能当前支持以下产品:
Atlas 350 加速卡