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

cann/shmem - SHMEM通信域(Team)介绍

SHMEM通信域(Team)介绍

【免费下载链接】shmemCANN SHMEM 是面向昇腾平台的多机多卡内存通信库,基于OpenSHMEM 标准协议,实现跨设备的高效内存访问与数据同步。项目地址: https://gitcode.com/cann/shmem

Team是shmem的通信域概念,在相关接口中可以通过team_id访问,初始化后会有一个默认的全局通信域,其team_idACLSHMEM_TEAM_WORLD = 0。team的信息存储在在state的team_pools里,team_pools是一个aclshmemx_team_t的数组。aclshmemx_team_t内会存储当前team的id(team相关接口使用的索引)、当前进程在该team内的rank id、该team内的起始rank、rank间步长、rank数量等相关信息。

aclshmemx_team_t内存储的mype和size是team内部的信息,aclshmem_device_host_state_t里存储的mype和npes是全局的信息。例如:对4个rank初始化shmem,前两卡和后两卡各为一个team。此时这四个rank的state里的mype分别是0,1,2,3。npes则都是4。但team_pools里的mype则分别是0,1,0,1。size为2。

子Team切分

shmem提供了专门的接口进行子Team的切分。

int aclshmem_team_split_strided(aclshmem_team_t parent_team, int pe_start, int pe_stride, int pe_size, aclshmem_team_t *new_team);

parent_team为父team,pe_start为起始pe,pe_stride为每次划分的步长,pe_size为划分的新team里pe的个数,new_team是出参是切分得到的新team的team_id。

以初始化好8个rank的场景为例,以如下方式调用切分接口。

aclshmem_team_t new_team; // 从全局通信域中idx为1的pe开始,以步长为2,切分出3个pe后停止。 auto ret = aclshmem_team_split_strided(ACLSHMEM_TEAM_WORLD, 1, 2, 3, &new_team);

此时new_team中有3个pe在state中的mype信息分别为1,3,5,他们的team_pools里的mype信息则分别为0,1,2。

Team的使用

当算子只需要在部分rank运行时就会需要用到team相关接口,如aclshmem_team_my_pe(my_team)可以返回当前rank在my_team的mype信息,aclshmem_my_pe()可以返回当前rank在全局的mype信息。通常我们可以用team级别的mype信息作为算子内部资源数组的索引,使用全局的mype作为全局共享内存地址信息的索引。

同步接口也会使用到team_id,如shmem内部提供的team内的同步接口aclshmem_barrier(aclshmem_team_t tid)

【免费下载链接】shmemCANN SHMEM 是面向昇腾平台的多机多卡内存通信库,基于OpenSHMEM 标准协议,实现跨设备的高效内存访问与数据同步。项目地址: https://gitcode.com/cann/shmem

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.jsqmd.com/news/1163060/

相关文章:

  • CANN/pypto仿真错误码参考
  • 基于 XMPP 的即时通讯源码解析搭建|仿微信架构|支持分布式扩容
  • CANN算子规范生成器使用场景
  • 鼓楼区离婚财产分割怎么找律师:选对专业,守住鼓楼的家底 - AZJ888
  • PostgreSQL统计信息深度解析与SQL性能实战分析
  • 如何利用dtu_mlops与PyTorch Lightning简化深度学习工作流程:完整指南
  • CellChat实战教程:从零开始分析单细胞转录组数据中的细胞间通讯
  • Vegile高级用法:进程注入与无限重生技术的实战详解
  • MembershipReboot账户锁定与安全审计:防止暴力破解的5个关键配置
  • 混合专家模型优化:Qwen3.5-397B-A17B-MoE架构与512专家配置详解
  • 基于TC78H651AFNG的高效直流电机驱动器设计
  • 湖南娄底哪家文武学校正规靠谱?2026 省内优质武校盘点,湖南凤凰育英民族学校口碑出众 - 全国文武学校招生
  • 2026小红书免费去水印工具教程:线上无需下载含电脑端方法
  • 高精度ADC与MCU在工业传感器信号采集中的应用
  • React Native Map Clustering核心组件深度解析:ClusteredMapView与ClusteredMarker的完整使用教程
  • 数据产业服务分类(69)——数据产业服务交付——数据产品及服务交付
  • gpt-json错误处理与修复:自动修正JSON响应的7个技巧
  • Kimi-K2.6-MXFP4社区贡献指南:参与项目开发与改进
  • Plonky3实战案例:基于Plonky3构建隐私保护投票系统的完整实现
  • 6款好用降AI率网站 合规程度拉满
  • 10个主流大模型适配对比:Gemma-3/4、Llama3.1、Qwen3.5 Jacobian Lens性能评测
  • VisualCppRedist AIO:终极Visual C++运行库自动化解决方案
  • 高精度热电偶测温系统设计与ADS122U04应用
  • 2026上海黄金变现渠道筛选:全域覆盖收的顶88家实体门店地址汇总 - 小蝶回收测评
  • eShopOnAbp扩展开发终极指南:如何快速添加新的微服务模块
  • 如何快速将django-sslserver集成到CI/CD流程中:完整指南
  • 电脑更新一直报0x800f081f错误怎么办?组件到缓存的完整修复顺序
  • 安全审计指南:如何评估和加固UUIDv47实现的安全性
  • Qwen3.5-397B-A17B-MoE-MXFP4:AMD优化的3970亿参数多模态大模型完整指南
  • 锂离子电池组电压平衡技术实现与优化