下载
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
昇腾小AI

Init

功能说明

Hccl客户端初始化接口。该接口默认在所有核上工作,用户也可以在调用前通过GetBlockIdx指定其在某一个核上运行。

函数原型

1
__aicore__ inline void Init(GM_ADDR context)

参数说明

表1 接口参数说明

参数名

输入/输出

描述

context

输入

通信上下文,对应数据结构HcclCombineOpParam,包含rankDim,rankID等信息,具体参数请参考表2

返回值

支持的型号

Atlas A2训练系列产品/Atlas 800I A2推理产品

注意事项

该接口推荐在AI Cube核或者AI Vector核两者之一上调用

调用示例

  • 示例1,默认在所有核上创建Hccl对象并调用Init接口初始化。
    1
    2
    3
    Hccl hccl;
    GM_ADDR contextGM1 = GetHcclContext<HCCL_GROUP_ID_0>();  // AscendC自定义算子kernel中,通过此方式获取Hccl context
    hccl.Init(contextGM1);
    
  • 示例2,只在Vector核上创建Hccl对象并调用Init接口初始化,后续只能在Vector核上调用Hccl其他接口。
    1
    2
    3
    4
    5
    6
    if ASCEND_IS_AIV { 
      Hccl hccl;
      GM_ADDR contextGM1 = GetHcclContext<HCCL_GROUP_ID_0>();  // AscendC自定义算子kernel中,通过此方式获取Hccl context
      hccl.Init(contextGM1);
      // 调用Hccl的Prepare、Commit、Wait、Finalize接口
    }
    
  • 示例3,只在Vector的0核上创建Hccl对象并调用Init接口初始化,后续只能在Vector的0核上调用其他接口。
    1
    2
    3
    4
    5
    6
    7
    8
    if ASCEND_IS_AIV { 
      if (GetBlockIdx()==0) {
        Hccl hccl;
        GM_ADDR contextGM1 = GetHcclContext<HCCL_GROUP_ID_0>();  // AscendC自定义算子kernel中,通过此方式获取Hccl context
        hccl.Init(contextGM1);
        // 调用Hccl的Prepare、Commit、Wait、Finalize接口
      }
    }
    
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词