logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

告别迷茫:Ascend C开发环境搭建全攻略(VSCode版)

这是代码最终运行的地方,通常是安装了昇腾AI处理器的服务器或Atlas开发板。和许多初学者一样,在满怀激情地报名了【2025年昇腾CANN训练营第二季】 后,我面临的第一个“算子”不是复杂的数学公式,而是一道最现实的关卡——如何把Ascend C开发环境给搭起来。有了顺手的VSCode环境和训练营一步步的指导,我相信后面的学习会更有趣、更高效。如果你用的是云服务器,请确保你申请的是昇腾AIECS,

#c语言#vscode#开发语言
掌握Ascend C算子开发核心:Tiling概念与动态Shape实现详解

本文系统介绍了AscendC算子开发中的Tiling计算技术,重点解析了动态shape场景的实现方法。文章首先阐明Tiling的基本概念和必要性,对比分析了固定shape与动态shape的实现差异,详细阐述了动态shape场景下Tiling结构体设计、数据传递过程和多核并行策略。针对动态shape实现,文章特别强调了硬件对齐原则、改装要点及调用流程,并为准备AscendC认证的开发者提供了学习建议

#c语言#开发语言
Ascend C内存迷宫解密:GM, LM, Register的三国演义

直到我尝试优化一个稍微复杂的算子,性能却惨不忍睹时,训练营的老师一针见血地指出:“你的数据待在‘仓库’里的时间,比在‘车间’里还长!不理解它们,写出的代码就像在迷宫里打转,永远无法触及高性能的彼岸。在训练营的下一阶段,我们将学习如何让GM到LM的搬运与LM上的计算“同时进行”,这就是更高级的。理解了各自的特点,那正确的“工作流”应该是怎样的?中学到的知识,结合自己的踩坑经历,为大家绘制一份走出这片

#c语言#java#开发语言
我的第一个Ascend C算子:从“Hello World”到向量加法

当终端里终于弹出“Build Success”时,我激动了没三秒,就陷入了新的迷茫:这个黑乎乎的命令行,怎么就能变出能在昇腾AI处理器上跑的算子呢?训练营的巧妙之处就在于此,它不急于灌输复杂的Tiling、流水线,而是用一个最直观的案例,让你先感受到“它跑起来了!我们的“向量加法”工程,就是让Host准备两个数组,然后命令Device把这两个数组对应位置相加,结果存到第三个数组里。// 看,就是这

#c语言#开发语言
读懂核函数:`__global__`与`kernel_name`的深入解读

起初我以为这只是一句口号,直到我因为一个函数名的拼写错误调试了一下午后,我才明白,这两个看似简单的语法,其实是连接Host与Device世界的“规则契约”。从此,你不再是模糊地复制粘贴代码,而是清楚地知道,你写的每一行指令,将如何跨越架构的鸿沟,在专用的处理器上绽放出算力的光芒。在绝大多数情况下,它们都是成对出现的。当我们的应用程序运行时,核函数的代码并不是以源代码的形式存在的。当编译器看到这个关

#架构#c语言#开发语言 +1
包管理器生态:鸿蒙PC上HPM、apt/dpkg替代方案探索

在鸿蒙PC上探索包管理生态的这一个月,就像是在一个正在建设中的城市里寻找便利店。有时你需要去官方超市(HPM),有时要去国际卖场(Flatpak),有时还得自己动手做(源码编译)。这种多样性既是挑战也是机遇。它意味着鸿蒙PC还没有被固定的模式束缚,开发者有更多机会参与生态建设。没有最好的包管理器,只有最合适的组合。根据不同的需求,灵活选择甚至组合使用不同的包管理方案,是在鸿蒙PC上高效工作的关键。

#c语言#开发语言#vscode +2
深度解读计算平台元数据定义框架:metadef 核心逻辑与并发演进

的异步任务队列模型是昇腾计算效率的基石。它通过高效的生产者-消费者模型解决了驱动层面的延迟问题,通过精妙的 Event 机制解决了并发中的依赖问题,并通过背压控制确保了长时运行的稳定性。对于希望深度优化 AI 应用性能的开发者来说,理解这一层面的并发模型,能够帮助你更科学地设计多 Stream 并行策略,从而彻底榨干昇腾 NPU 的每一分算力。

#harmonyos
计算平台 NPU 处理 NLP 任务:ops-transformer 算子架构深度解析

昇腾 NPU 在 NLP 领域的竞争力,很大程度上依赖于其底层算子库的深度优化能力。通过对仓库的分析,我们可以看到,针对 Transformer 算子的优化是一个系统工程,它涉及对硬件特性的深刻理解、精细的 TBE 编程、算子融合技术以及数据布局的极致控制。CANN 社区在上持续迭代这些核心算子,是确保昇腾平台在处理 BERT、GPT 等前沿 NLP 模型时,能够提供领先的性能和能效比的关键所在。

#算法
深度解读:从 community 仓库看 CANN 错误码体系的标准化与诊断演进

CANN 的强大不仅在于算子库的丰富,更在于其底层架构的严谨与规范。通过AtomGit 上的 community 仓库,我们看到了华为在构建昇腾生态时的开放态度:将错误诊断这种“脏活累活”标准化、透明化。如果你正在深度开发基于昇腾的 AI 应用,建议定期关注CANN 组织的动态。理解了错误码背后的标准化逻辑,就掌握了与 NPU 对话的底层语言,从而在面对复杂系统故障时,做到从容不迫,精准诊断。

#harmonyos
深度解读 CANN Runtime:多流并发场景下的内存管理架构原理

在CANN 组织提供的 ACL 框架下,高效的内存管理是实现多流并发性能翻倍的关键。静态化:变动态申请为预先分配,消除全局锁竞争。异步化:坚持使用Async接口,配合 Stream 实现计算与通信掩盖。对齐化:严格遵循昇腾架构的内存对齐要求,优化总线吞吐。深入理解acl 仓库的底层实现,能够帮助开发者在构建超大规模 AI 应用时,不仅跑得通,更跑得快、跑得稳。本文由 CANN 架构专家团队撰写,更

#算法#git#harmonyos
    共 51 条
  • 1
  • 2
  • 3
  • 6
  • 请选择