当前位置: 首页 > news >正文

CANN/HCCL Scatter算子

HcclScatter【免费下载链接】hccl集合通信库Huawei Collective Communication Library简称HCCL是基于昇腾AI处理器的高性能集合通信库为计算集群提供高性能、高可靠的通信方案项目地址: https://gitcode.com/cann/hccl产品支持情况Ascend 950PR/Ascend 950DT支持- Atlas A3 训练系列产品/Atlas A3 推理系列产品支持 - Atlas A2 训练系列产品/Atlas A2 推理系列产品支持 - Atlas 推理系列产品不支持 - Atlas 训练系列产品支持[!NOTE]说明 针对Atlas A2 训练系列产品/Atlas A2 推理系列产品仅支持Atlas 800T A2 训练服务器、Atlas 900 A2 PoD 集群基础单元、Atlas 200T A2 Box16 异构子框。功能说明集合通信算子Scatter操作接口将root节点的数据均分并散布至其他rank。函数原型HcclResult HcclScatter(void *sendBuf, void *recvBuf, uint64_t recvCount, HcclDataType dataType, uint32_t root, HcclComm comm, aclrtStream stream)参数说明参数名输入/输出描述sendBuf输入源数据buffer地址。recvBuf输出目的数据buffer地址集合通信结果输出至此buffer中。recvCount输入参与scatter操作的recvBuf的数据个数比如只有一个int32数据参与则count1。dataType输入Scatter操作的数据类型HcclDataType类型。针对Ascend 950PR/Ascend 950DT支持数据类型int8、uint8、int16、uint16、int32、uint32、int64、uint64、float8-e5m2、float8-e4m3、float8-e8m0、hifloat8、float16、float32、float64、bfp16。针对Atlas A3 训练系列产品/Atlas A3 推理系列产品支持数据类型int8、uint8、int16、uint16、int32、uint32、int64、uint64、float16、float32、float64、bfp16。针对Atlas A2 训练系列产品/Atlas A2 推理系列产品支持数据类型int8、uint8、int16、uint16、int32、uint32、int64、uint64、float16、float32、float64、bfp16。针对Atlas 训练系列产品支持数据类型int8、uint8、int16、uint16、int32、uint32、int64、uint64、float16、float32、float64。root输入作为scatter root的rank id。comm输入集合通信操作所在的通信域。stream输入本rank所使用的stream。返回值HcclResult接口成功返回HCCL_SUCCESS其他失败。约束说明所有rank的recvCount、dataType、root均应相同。全局只能有1个root节点。非root节点的sendBuf可以为空。root节点的sendBuf不能为空。调用示例void *sendBuf nullptr; void *recvBuf nullptr; uint64_t sendCount 8; uint64_t recvCount 1; size_t sendSize sendCount * sizeof(float); size_t recvSize recvCount * sizeof(float); // 申请 Device 内存用于接收 Scatter 结果 ACLCHECK(aclrtMalloc(recvBuf, recvSize, ACL_MEM_MALLOC_HUGE_ONLY)); // 在 root 节点申请 Device 内存用于存放发送数据 if (device rootRank) { ACLCHECK(aclrtMalloc(sendBuf, sendSize, ACL_MEM_MALLOC_HUGE_ONLY)); } // 初始化通信域 uint32_t rankSize 8; HcclComm hcclComm; HcclCommInitRootInfo(rankSize, rootInfo, device, hcclComm); // 创建任务流 aclrtStream stream; aclrtCreateStream(stream); // 执行 Scatter将通信域内 root 节点的数据均分并散布至其他 rank HcclScatter(sendBuf, recvBuf, recvCount, HCCL_DATA_TYPE_FP32, rootRank, hcclComm, stream); // 阻塞等待任务流中的集合通信任务执行完成 aclrtSynchronizeStream(stream); // 释放资源 aclrtFree(sendBuf); // 释放 Device 侧内存 aclrtFree(recvBuf); // 释放 Device 侧内存 aclrtDestroyStream(stream); // 销毁任务流 HcclCommDestroy(hcclComm); // 销毁通信域【免费下载链接】hccl集合通信库Huawei Collective Communication Library简称HCCL是基于昇腾AI处理器的高性能集合通信库为计算集群提供高性能、高可靠的通信方案项目地址: https://gitcode.com/cann/hccl创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
http://www.gsyq.cn/news/1331364.html

相关文章:

  • 一键获取网易云QQ音乐歌词:智能工具解决本地音乐无歌词难题
  • Layerdivider终极指南:5步实现AI智能图像分层,免费生成专业PSD文件
  • 不只是安装:用Matlab NSCT_toolbox 处理图像信号的完整工作流实战
  • taotoken如何解决claude代码用户面临的额度与封号焦虑
  • Kilim Actor模型实践:构建高并发消息传递系统的终极指南 [特殊字符]
  • CANN/hccl主机通信端口范围配置
  • 3分钟掌握Cursor Pro永久激活:免费解锁AI编程助手完整指南
  • CANN ops-blas高级特性:融合算子与激活函数后处理技术详解
  • ESP32 OLED中文显示不全?手把手教你用Platformio添加第三方u8g2_wqy字库(附完整代码)
  • 告别乱码!用DSP28035的SCI模块驱动NSI83085实现稳定485通信的完整配置流程
  • 收藏必备!小白程序员快速掌握RAG系统中重排序策略,提升大模型上下文质量
  • 从安装到创作:Redream完整入门教程,让AI绘图小白变高手
  • ops-collections多线程并发优化终极指南:如何充分利用昇腾硬件资源提升10倍性能 [特殊字符]
  • 猫抓浏览器扩展终极指南:一键捕获网页视频与M3U8流媒体的完整教程
  • HC32F4A0外设引脚自由配置全攻略:如何像STM32重映射一样灵活规划你的原理图?
  • 从飞思卡尔智能车竞赛视频拆解嵌入式系统设计:感知、控制与工程实践
  • CANN/asc-devkit: REGISTER_NONE_TILING API
  • 百度网盘Mac版SVIP破解优化方案:10分钟实现70倍下载速度提升
  • CANN/cannbot:常见陷阱
  • CANN/asc-devkit SetCurBufSize函数文档
  • Wolverine性能优化终极秘籍:从基础配置到高级调优
  • CANN/catlass LayoutTag(旧版Layout)
  • Internetarchive元数据管理实战:掌握metadata操作的最佳实践
  • 终极3DS硬件检测工具:3DSident完整使用指南
  • 用Midjourney做专业级产品摄影?这7个隐藏参数调优技巧99%的设计师还不知道
  • CPU 时间:解析文件、执行逻辑、序列化数据。
  • Rustyline最佳实践:避免常见陷阱与性能优化的终极指南
  • 基于SpringBoot的酒店客房管理系统(PMS)毕业设计
  • Wolverine Saga模式实战:实现复杂的业务流程编排
  • 从DTrace到SystemTap:一个开源内核追踪工具的“逆袭”与避坑指南