news 2026/5/9 14:15:55

CANN SHMEM工具调测指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN SHMEM工具调测指南

SHMEM搭配工具算子调测指导

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

msprof

shmem后续会适配msprof算子调优工具 当前版本暂不支持,预计Q1支持。

mssanitizer

shmem已适配mssanitizer内存检测工具,以下功能的相关接口暂不支持该工具的使用:

  • SDMA/RDMA/UDMA相关接口和用例不支持使用mssanitizer进行内存检测

该功能依赖对应 CANN 版本能力,预计社区版 9.0.0-beta.2 支持提前尝鲜可自行编译mssanitizer工具,并将编译产物替换CANN包内部tools/mssanitizer

使能mssanitizer工具能力,在shmem/目录编译:

bash scripts/build.sh -mssanitizer

为算子工程在编译时添加-g --cce-enable-sanitizer编译选项。

工具默认开启内存检测能力,即--tool memcheck,一般情况按如下方式拉起可执行文件即可。

mssanitizer -- application parameter1 parameter2 ...

如果需要更详细的工具能力可参考mssanitizer内存检测工具按如下格式控制参数

mssanitizer <options> -- <user_program> <user_options>

mssanitizer执行SHMEM自带的example样例

shmem的AllGather样例运行脚本提供了tool选项选择拉起工具。

编译样例且使能工具能力

bash scripts/build.sh -examples -mssanitizer

用mssanitizer工具拉起allgather样例进行内存检测

cd examples/allgather bash run.sh -pes 2 -tool mssanitizer

内存越界日志

当内存发生越界时工具会先打屏越界地址,越界内存大小、所属kernel,核号、卡号等信息。

随后打屏越界代码的调用栈。可以协助开发快速定位越界问题以及排查代码漏洞。

注:aclshmem_malloc等shmem提供的内存分配接口是对已完成物理地址映射的一大块连续虚拟内存进行划分,不涉及实际的物理内存申请或虚拟内存对物理内存的映射操作。如使用的虚拟地址已完成和已分配物理地址的映射,即使超出aclshmem_malloc分配的范围也不会报错,因为该地址对应的内存可以合法使用。

profiling

shmem提供了Profiling打点工具,通过采集系统时钟周期数并转换为实际时间,精准量化不同Block(计算核)、不同Frame(埋点 ID)下的MTE搬运性能,详细介绍请参考在示例中使用Profiling工具.

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

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/9 14:14:31

AI智能增长如何影响其自我设计能力?比例论与收益递减论之争

1. 智能增长与设计能力&#xff1a;一个被低估的核心杠杆在人工智能领域&#xff0c;我们常常讨论模型的参数量、训练算力、数据规模&#xff0c;或是某个具体任务上性能的突破。然而&#xff0c;有一个更为根本、却时常被技术细节所掩盖的问题&#xff0c;直接关系到AI发展的终…

作者头像 李华
网站建设 2026/5/9 14:11:00

Claude Code 用户如何快速接入 Taotoken 解决 API 被封困扰

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 Claude Code 用户如何快速接入 Taotoken 解决 API 被封困扰 对于依赖 Claude Code 进行开发的工程师来说&#xff0c;服务中断会直…

作者头像 李华
网站建设 2026/5/9 14:07:09

Copaw:基于容器技术的瞬态命令行环境工具详解

1. 项目概述与核心价值 最近在折腾一个挺有意思的小工具&#xff0c;叫 copaw 。这名字乍一看有点怪&#xff0c;但如果你像我一样&#xff0c;经常需要在不同的项目环境里切换&#xff0c;或者需要快速搭建一个临时的、干净的开发沙箱&#xff0c;那你可能立刻就能明白它的…

作者头像 李华
网站建设 2026/5/9 14:06:07

cann/runtime初始化指南

&#xfeff;# 初始化 【免费下载链接】runtime 本项目提供CANN运行时组件和维测功能组件。 项目地址: https://gitcode.com/cann/runtime CANN Runtime提供了aclInit、aclrtSetDevice接口&#xff0c;在应用程序启动时被调用&#xff0c;结合json配置文件完成如下功能&…

作者头像 李华
网站建设 2026/5/9 14:06:03

CANN/ops-cv GridSample 2D算子

aclnnGridSampler2D 【免费下载链接】ops-cv 本项目是CANN提供的图像处理、目标检测相关的算子库&#xff0c;实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-cv &#x1f4c4; 查看源码 产品支持情况 产品是否支持Ascend 950PR/Ascend 950DT√At…

作者头像 李华
网站建设 2026/5/9 14:06:01

AI驱动组织管理:从团队组建到动态优化的技术实战

1. 项目概述&#xff1a;当AI成为你的“首席组织架构师”在过去的几年里&#xff0c;我参与和观察了不下二十个团队的组建与重组过程。从初创公司的五人小分队&#xff0c;到数百人的业务部门拆分&#xff0c;一个永恒的难题始终横亘在管理者面前&#xff1a;如何把对的人放在对…

作者头像 李华