昇腾社区首页
中文
注册

SetSkipLocalRankCopy

功能说明

设置本卡的通信算法的计算结果是否输出到目的数据buffer地址。

函数原型

1
uint32_t SetSkipLocalRankCopy(uint8_t skipLocalRankCopy)

参数说明

表1 参数说明

参数名

输入/输出

描述

skipLocalRankCopy

输入

本卡的通信算法的计算结果是否输出到recvBuf(目的数据buffer地址)。

针对Atlas A2 训练系列产品/Atlas 800I A2 推理产品,仅AllGather算法与AlltoAll算法支持配置该参数。uint8_t类型,参数取值如下:

  • 0:不输出本卡通信算法的计算结果。在无需输出通信结果时,配置参数值为0,此时不会拷贝本卡的通信结果数据,可提升算子性能。例如,在8卡场景下,本卡只取其他卡的部分数据,这时可配置该参数为0。
  • 1:输出本卡通信算法的计算结果。

返回值

  • 0表示设置成功。
  • 非0表示设置失败。

约束说明

调用示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
const char *groupName = "testGroup";
uint32_t opType = HCCL_CMD_REDUCE_SCATTER;
std::string algConfig = "ReduceScatter=level0:fullmesh";
uint32_t reduceType = HCCL_REDUCE_SUM;
AscendC::Mc2CcTilingConfig mc2CcTilingConfig(groupName, opType, algConfig, reduceType);
mc2CcTilingConfig.GetTiling(tiling->mc2InitTiling);
mc2CcTilingConfig.GetTiling(tiling->reduceScatterTiling);

algConfig = "AllGather=level0:doublering";
mc2CcTilingConfig.SetGroupName(groupName);
mc2CcTilingConfig.SetOpType(HCCL_CMD_ALLGATHER);
mc2CcTilingConfig.SetAlgConfig(algConfig);
mc2CcTilingConfig.SetReduceType(HCCL_REDUCE_RESERVED);
mc2CcTilingConfig.SetSkipLocalRankCopy(0); // 设置本卡的通信算法的计算结果是否输出到recvBuf
mc2CcTilingConfig.SetSkipBufferWindowCopy(1);
mc2CcTilingConfig.GetTiling(tiling->allGatherTiling);