HCCL_OP_EXPANSION_MODE

功能描述

该环境变量用于配置通信算法的编排展开位置,支持如下取值:
  • AI_CPU:代表通信算法的编排展开位置在Device侧的AI CPU计算单元。
  • AIV:代表通信算法的编排展开位置在Device侧的AI Vector Core计算单元。
  • HOST:代表通信算法的编排展开位置为Host侧CPU。

下表所示为不同产品支持的配置以及相关场景说明,此表中未列出的产品不支持此环境变量设置,若设置了不支持的环境变量,会使用默认值

表1 HCCL_OP_EXPANSION_MODE环境变量支持范围表

产品型号

支持的配置

约束说明

默认值

Atlas 300I Duo 推理卡

AI_CPU

  • 仅支持单机单通信域场景。
  • 仅支持AllReduce算子,AllReduce算子支持的数据类型可参见集合通信接口参考
  • 配置为“AI_CPU”后,通信算子不再支持profiling性能数据采集与分析功能。
  • 对于静态shape图,不支持此配置项,即不支持指定通信算法编排展开位置为AI CPU。

HOST

HOST

Atlas A2 训练系列产品 中的以下产品型号:

Atlas 800T A2 训练服务器

Atlas 900 A2 PoD 集群基础单元

Atlas 200T A2 Box16异构子框

AIV

该配置项仅支持这些产品的推理特性。

该配置项当前仅支持AllReduce、AlltoAll、AlltoAllV、AlltoAllVC、AllGather、ReduceScatter、AllGatherV、ReduceScatterV算子。

  • 针对AllReduce算子,数据类型支持int8、int16、int32、float16、float32、bfp16,reduce的操作类型仅支持sum、max、min。
  • 针对AlltoAll、AlltoAllV、AlltoAllVC算子,数据类型支持int8、uint8、int16、uint16、int32、uint32、float16、float32、bfp16。针对AlltoAllV、AlltoAllVC算子,仅支持单机场景;针对AlltoAll算子的图模式运行方式,仅支持单机场景
  • 针对AllGather算子,数据类型支持int8、uint8、int16、uint16、int32、uint32、float16、float32、bfp16。针对该算子的图模式运行方式,仅支持单机场景
  • 针对ReduceScatter算子,数据类型支持int8、int16、int32、float16、float32、bfp16,reduce的操作类型仅支持sum、max、min。针对该算子的图模式运行方式,仅支持单机场景
  • 针对AllGatherV算子,数据类型支持int8、uint8、int16、uint16、int32、uint32、int64、uint64、float16、float32、float64、bfp16,仅支持单机场景的单算子模式,仅支持Atlas 800T A2 训练服务器Atlas 900 A2 PoD 集群基础单元
  • 针对ReduceScatterV算子,数据类型支持int8、int16、int32、float16、float32、bfp16,仅支持单机场景的单算子模式,仅支持Atlas 800T A2 训练服务器Atlas 900 A2 PoD 集群基础单元

注意:

  • HCCL_DETERMINISTIC环境变量配置为“true”,则此配置项不再生效,以确定性计算为准。
  • 对于Atlas 200T A2 Box16异构子框,不支持跨框通信场景。

HOST

HOST

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

AI_CPU

在超节点内与超节点间支持全量通信算子。

针对Reduce、ReduceScatter、AllReduce算子,数据类型仅支持int8、int16、int32、float16、float32、bfp16,且reduce的操作类型仅支持sum、max、min。其他通信算子支持的数据类型可参见集合通信接口参考

AI_CPU

AIV

  • 该配置项仅支持 Atlas A3 训练系列产品/Atlas A3 推理系列产品 的推理特性。
  • 该配置项当前仅支持AllReduce、ReduceScatter、AllGather、AlltoAll、AlltoAllV、AlltoAllVC算子。
    • 针对AllReduce、ReduceScatter算子,数据类型支持int8、int16、int32、float16、float32、bfp16,reduce的操作类型仅支持sum、max、min,仅支持单机场景。
    • 针对AllGather算子,数据类型支持int8、uint8、int16、uint16、int32、uint32、float16、float32、bfp16,仅支持单机场景。
    • 针对AlltoAll、AlltoAllV、AlltoAllVC算子,数据类型支持int8、uint8、int16、uint16、int32、uint32、float16、float32、bfp16,仅支持超节点内的单机/多机通信,不支持跨超节点间通信。

HOST

不建议配置为“HOST”,配置为“HOST”存在不可预期行为。

配置示例

export HCCL_OP_EXPANSION_MODE="HOST"

使用约束

针对Atlas 800T A2 训练服务器/Atlas 900 A2 PoD 集群基础单元/Atlas 200T A2 Box16异构子框这些产品的推理特性: