- 博客(116)
- 收藏
- 关注
原创 【昇腾CANN训练营·算法篇】寻找消失的除法器:Newton Iteration 与高精度数学计算的艺术
摘要:2025年昇腾CANN训练营第二季提供0基础入门、开发者案例等专题课程,助力开发者提升算子开发技能,完成认证可获证书及奖品。在AI计算中,除法运算通过查表结合牛顿迭代法实现,将A/B转化为A×(1/B),相比直接硬件除法更高效。文章详解了达芬奇架构中SFU单元的工作原理,包括查表初值获取和牛顿迭代过程,并给出AscendC中的优化实践,如使用RSqrt指令加速LayerNorm运算。同时指出Exp/Log等运算通过多项式展开实现,建议开发者根据精度需求选择近似算法以提升性能。报名链接:https://
2025-12-17 20:29:34
622
原创 【昇腾CANN训练营·同步篇】驾驭无序之马:深入解析 PipeBarrier 与指令流水的同步哲学
摘要:昇腾NPU的DaVinci架构采用全异步设计,Scalar单元快速发射指令,而Vector/Cube单元执行较慢,易引发RAW/WAR数据冒险。文章解析PipeBarrier机制,指出其仅暂停Scalar向指定管道发射新指令,而非阻塞所有单元。通过TQue队列管理大部分依赖,仅在跨管道交互、Scalar读写UB等场景需手动同步。强调过度同步会严重降低性能,建议信任TQue、延迟等待和批量同步。掌握指令时序是确保昇腾开发正确性的关键。(149字)
2025-12-17 20:24:45
979
原创 【昇腾CANN训练营·性能篇】强迫症的胜利:深度解析 32-Byte 内存对齐与 Burst 性能哲学
内存对齐是 Ascend C 性能优化的基石。强迫症是好事:时刻保持 32 Byte 的敏感度。看到非对齐的地址就要警铃大作。空间换时间:通过 Host 侧多分配一点显存(Padding),换取 Device 侧 MTE 的全速 Burst 传输。整体设计:从模型层面的 Tensor 分配,到 Tiling 策略,再到 Kernel 实现,必须全链路贯穿对齐思想。当你不再为处理剩下的 3 个字节而写一堆 if-else,而是大手一挥搬运整个 Block 时,你就掌握了昇腾性能哲学的真谛。
2025-12-17 20:17:08
966
原创 【昇腾CANN训练营·微架构篇】被忽视的指挥官:Scalar 单元如何决定算子流水线的生死
摘要:2025年昇腾CANN训练营第二季推出系列课程,助力开发者提升算子开发技能,完成认证可获证书及华为奖品。本文聚焦AscendC算子开发中常被忽视的Scalar单元性能优化问题,揭示了控制流与计算流的解耦机制。文章分析了Scalar单元成为性能瓶颈的原因,指出复杂的标量计算会导致NPU流水线停顿,并提出三大优化方案:减少Vector与Scalar交互、预计算复杂运算、简化循环内计算。通过代码实例对比,展示了如何优化指令发射效率,最终实现让Scalar单元"少干活、快发令"的目标。
2025-12-17 20:06:13
838
原创 【昇腾CANN训练营·微操篇】摒弃标量思维:深入 Ascend C 向量指令的 Mask 与 Repeat 机制
摘要:2025年昇腾CANN训练营第二季推出0基础入门、码力全开特辑等专题课程,助力开发者提升算子开发技能。完成AscendC算子中级认证可获证书,参与社区任务更有机会赢取华为手机等大奖。报名链接:https://www.hiascend.com/developer/activities/cann20252
2025-12-17 19:59:41
895
原创 【昇腾CANN训练营·调试篇】黑盒里的微光:Ascend C 算子调试与定位的高级技巧
调试是一门侦探艺术,而不是试错运气。开发阶段:利用 CPU Twin + ASan,确保逻辑 100% 正确,内存 0 越界。联调阶段:利用 PRINTF(带核号过滤),验证数值精度和关键节点状态。疑难杂症:利用 CAModel 和 Timeline,透视硬件微观行为。不要害怕报错。每一个 Core Dump 都是 NPU 在试图告诉你:我不理解你的逻辑。通过调试工具听懂它的语言,你就能驾驭它。本文基于昇腾 CANN 8.0 调试工具链编写。
2025-12-17 19:56:04
995
原创 【昇腾CANN训练营·架构篇】打破内存墙:Ascend C 算子融合(Operator Fusion)的极致心法
摘要:本文深入解析昇腾AI芯片中的UBFusion算子融合技术,通过将多个小算子融合为一个大算子,实现"一次搬运,多次计算"的性能优化。文章对比了标准流水线与融合流水线的差异,详细介绍了AscendC中的两种融合范式:Vector链式融合和Cube+Vector异构融合,并探讨了内存复用和指令并行等优化技巧。该技术能显著降低HBM带宽压力,充分发挥昇腾芯片的算力优势,是提升AI计算性能的关键方法。(149字)
2025-12-17 19:48:58
924
原创 【昇腾CANN训练营·优化篇】刀尖上的舞蹈:深入理解 Atomic Add 原子操作与性能代价
摘要:昇腾CANN训练营2025第二季推出0基础入门、案例实践等课程,助力开发者掌握算子开发技能,完成认证可获证书及华为设备奖励。报名链接见官网。针对并行计算中的原子操作性能问题,本文深入解析AscendC的原子操作原理及优化方法,指出原子操作需谨慎使用以避免性能下降10倍以上,并提供"UB聚合+延迟原子写"等优化策略,强调在确定性要求高的场景应避免使用AtomicAdd。
2025-12-17 19:45:09
709
原创 【昇腾CANN训练营·算力篇】唤醒沉睡的野兽:Ascend C 调用 Cube 单元加速矩阵运算
调用 Cube 单元是 Ascend C 开发的分水岭。思维转变:从“线性处理”转变为“块状处理”(Block-based)。格式敬畏:时刻谨记 16x16 对齐,理解 Fractal 格式的必要性。异构协同:Cube 负责重火力(MatMul),Vector 负责精细操作(Bias, ReLU),两者通过 UB 紧密配合。当你开始用 Cube 思考问题,你才真正触摸到了昇腾 910B 的灵魂。
2025-12-17 19:41:06
906
原创 【昇腾CANN训练营·优化篇】流水线的艺术:深入解析 Double Buffer (Ping-Pong) 并行机制
摘要:本文深入解析了AscendC算子开发中的性能优化技巧,重点介绍了DoubleBuffer(双缓冲)技术。通过分析达芬奇架构的硬件特性,展示了如何利用TQue队列机制构建Ping-Pong流水线,实现MTE和Vector单元的并行工作,有效掩盖数据传输延迟。文章详细阐述了TQue队列的深度设置、依赖管理机制,并提供了实战代码示例。同时探讨了双缓冲与内存限制的平衡关系,以及进阶的三级流水方案。最终强调DoubleBuffer是算子性能优化的关键,需要在UB空间和并行度之间找到最佳平衡点。
2025-12-17 19:37:09
549
原创 【昇腾CANN训练营·核心篇】拒绝“写死”:Ascend C 算子动态 Tiling 的设计哲学
摘要:昇腾CANN训练营2025第二季推出系列课程,助力开发者掌握算子开发技能。重点解析CANN架构独特的HostTiling+KernelComputing分离模式:Host侧CPU负责计算最优数据切分策略(TilingData),Device侧NPU专注执行计算。文章详细讲解多核负载均衡、UB内存限制等关键策略,并通过代码示例展示如何实现动态Shape处理,强调32字节对齐的重要性,帮助开发者编写通用性强的算子代码。完成课程可获得认证及丰厚奖品。
2025-12-17 19:33:21
824
原创 【昇腾CANN训练营·巅峰篇】打破显存高墙:FlashAttention 算子在昇腾 NPU 上的极致优化之道
摘要:本文深入探讨了在昇腾NPU上实现高性能FlashAttention的关键技术。针对Transformer中Self-Attention的O(N²)复杂度问题,通过IO感知和分块计算技术,结合昇腾DaVinci架构特性,详细解析了OnlineSoftmax实现、双缓冲流水线优化等核心方法。文章从硬件微架构角度出发,阐述了如何平衡计算与访存瓶颈,实现显存高效利用和算力充分压榨,为开发者提供了在昇腾平台上手写高性能FlashAttention的工程实践指导。
2025-12-17 19:28:54
841
原创 【昇腾CANN训练营·算法篇】图计算的艺术:基于Ascend C实现GNN核心算子Scatter-Gather与消息传递
2025年昇腾CANN训练营第二季推出GNN算子开发专题课程,帮助开发者掌握图神经网络核心算法。GNN通过消息传递机制实现节点特征更新,工程实现中采用边表(COO格式)替代邻接矩阵。课程详细讲解了基于AscendC的Scatter-Gather范式实现,包括Kernel类定义、核心计算逻辑和性能优化策略,如索引排序和稀疏矩阵乘法转换。训练营提供从0基础到进阶的系列课程,完成认证可获得证书及华为设备奖励。报名链接:https://www.hiascend.com/developer/activities/ca
2025-12-15 20:26:25
781
原创 【昇腾CANN训练营·生态篇】算子库的工程化交付:构建 CI/CD 流水线与版本兼容性管理
2025年昇腾CANN训练营推出算子开发专题课程,帮助开发者提升技能并获取认证。本文针对AscendC算子开发维护难题,提出工程化解决方案:通过CMake矩阵构建支持多芯片编译,利用宏隔离处理版本兼容性,搭建自动化CI/CD流水线进行静态检查、编译测试等,最终打包成.run安装包简化交付。这套体系将开发从"手工作坊"升级为"智能工厂",有效降低维护成本,提升开发效率。
2025-12-15 20:22:26
639
原创 【昇腾CANN训练营·前沿篇】解构DeepSeek:基于Ascend C实现MLA (Multi-Head Latent Attention) 算子
摘要:2025年昇腾CANN训练营第二季推出系列课程,助力开发者提升算子开发技能,完成认证可获奖励。本文重点解析DeepSeek提出的MLA(Multi-Head Latent Attention)技术,通过低秩投影压缩KV缓存,显著降低显存占用。文章详细阐述MLA的核心算法原理,包括RoPE解耦和矩阵吸收技巧,并展示如何使用AscendC实现融合算子FusedMLA Kernel,通过双路Attention计算和优化策略提升性能。MLA技术体现了算法与算子的协同设计,为Transformer模型的高效推理
2025-12-15 20:19:34
954
原创 【昇腾CANN训练营·算法篇】让AI Core学会排序:双调排序(Bitonic Sort)与TopK算子实战
摘要:2025年昇腾CANN训练营第二季推出专题课程,助力开发者提升算子开发技能。针对AI芯片不擅长排序的问题,提出基于AscendC的双调排序解决方案。文章详细介绍了双调排序算法原理,并给出AscendC实现TopK的具体方法,包括核心排序逻辑、索引追踪技巧和性能优化策略。通过混合使用硬件指令和数据打包技术,可在AI芯片上高效实现排序功能,为LLM解码等场景提供支持。
2025-12-15 20:16:04
783
原创 【昇腾CANN训练营·行业篇】科学计算之光:基于 AI Core 的高性能 FFT (快速傅里叶变换) 算子开发
2025昇腾CANN训练营第二季推出0基础入门、开发者案例等专题课程,助力开发者提升算子开发技能,完成认证可获证书及华为设备奖励。本期重点讲解在AscendC上实现高效FFT算法,通过Stockham算法避开低效位反转,利用双缓冲设计实现连续读写。文章详细解析复数乘法实现、Stockham迭代逻辑,并提供性能优化建议,如预计算旋转因子、向量化指令等。FFT作为AI与物理世界的桥梁,在气象预测等科学计算领域具有重要应用价值。
2025-12-15 20:07:54
751
原创 【昇腾CANN训练营·行业篇】去伪存真:基于 AI Core 的高效 NMS(非极大值抑制)算子开发
2025年昇腾CANN训练营第二季推出系列专题课程,助力开发者提升算子开发技能。文章重点解析了NMS(非极大值抑制)算法在AscendC中的优化实现。针对传统NMS算法的串行瓶颈,提出"并行IoU+串行Mask"的优化策略,详细展示了如何利用AscendC的Vector计算能力加速IoU环节。通过Kernel类定义和核心计算逻辑的代码示例,演示了预处理、广播计算、掩码更新等关键步骤。同时指出性能优化的深水区,包括减少标量交互、精度控制和硬件指令加速等方向。文章强调NMS是算法逻辑与硬件特
2025-12-15 20:05:11
817
1
原创 【昇腾CANN训练营】硬核调试:使用BlackBox与Exception Dump定位NPU死机与异常
2025年昇腾CANN训练营第二季推出系列课程,助力开发者提升算子开发技能,完成认证可获证书及华为产品奖励。针对NPU算子开发中的设备崩溃问题,文章详细介绍了昇腾芯片的异常诊断方法:通过ExceptionDump获取异常信息,分析错误代码和程序计数器;当设备完全死机时,使用ada工具提取黑匣子日志,重点检查MTE_ERR_STS等关键寄存器状态。文章总结了常见崩溃原因(内存越界、死锁、栈溢出)及排查思路,强调防御性编程和底层思维的重要性,帮助开发者快速定位致命错误。
2025-12-15 20:02:12
996
原创 【昇腾CANN训练营·算法篇】图计算的艺术:基于Ascend C实现GNN核心算子Scatter-Gather与消息传递
2025年昇腾CANN训练营第二季推出系列课程,助力开发者提升算子开发技能。训练营重点讲解图神经网络(GNN)的Message Passing机制,其核心是通过Gather-Scatter操作实现节点间信息传递。课程详细介绍了AscendC实现GNN算子的方法,包括Kernel类定义、计算流程及性能优化策略,如索引排序和稀疏矩阵乘法转换。掌握这些技术可优化AlphaFold等前沿模型,完成课程可获得AscendC算子中级认证及丰厚奖品。报名链接已提供。
2025-12-11 14:29:14
659
原创 【昇腾CANN训练营·行业篇】长序列推理救星:FlashDecoding算子开发与KV Cache并行规约实战
摘要:2025年昇腾CANN训练营第二季推出FlashDecoding专题课程,聚焦大模型推理中的Decode阶段性能优化。针对长上下文场景下Attention计算的访存瓶颈,提出KVCache切分策略(Split-K),通过OnlineSoftmax数学公式实现分块结果的无损合并。课程详细讲解AscendC实现方案,包括Stage1分块计算和Stage2全局规约两个核心Kernel,并分析异步流水线、原子归约等优化技巧。该技术将并行维度从Batch转向SeqLen,显著提升NPU利用率,是长文本模型推理加
2025-12-10 00:02:02
801
原创 【昇腾CANN训练营·行业篇】MoE架构加速:深入解析TopK Routing与Grouped Matmul实现
摘要:2025年昇腾CANN训练营第二季推出专题课程,助力开发者提升算子开发技能,完成认证可获奖励。文章重点解析MoE模型的路由算子开发,通过交通枢纽类比说明路由过程,详细介绍了TopKGating算法三步流程及AscendC实现方案,包括Kernel类定义、核心计算逻辑和Token排列优化,并延伸讲解GroupedMatmul的高效计算策略,为开发者提供稀疏大模型优化的关键技术路径。
2025-12-09 23:57:58
672
原创 打通训练闭环:深入解析自定义算子的反向传播 (Backward) 开发实战
在 AI 开发中,“能跑推理”和“能做训练”是两个完全不同的段位。对于推理,我们只需要实现 $Y = f(X)$。但对于训练,我们需要支持 PyTorch 的Autograd机制,这意味着我们要手写对应的反向算子:给定输出的梯度 $\frac{\partial L}{\partial Y}$(记为dy),计算输入的梯度 $\frac{\partial L}{\partial X}$(记为dx)和权重的梯度 $\frac{\partial L}{\partial W}$(记为dw数学推导。
2025-12-09 23:54:57
894
原创 【昇腾CANN训练营·番外篇】考古与未来:从TIK (Python DSL)到Ascend C的演进启示
2025年昇腾CANN训练营第二季推出系列课程,助力开发者提升算子开发技能。训练营提供0基础入门、码力全开特辑等专题,完成AscendC算子中级认证可获得证书及抽奖机会。文章对比了昇腾算子开发的两种范式:基于Python的TIK/TBE和基于C++的AscendC,通过VectorAdd算子实例展示其差异。TIK需要手动计算参数,类似"汇编级Python";而AscendC采用面向对象设计,自动化处理数据依赖。虽然AscendC更高效,但理解TIK底层原理有助于性能优化。编程语言的演进本
2025-12-09 23:49:59
770
原创 【昇腾CANN训练营·黑客篇】硬核调试:使用BlackBox与Exception Dump定位NPU死机与异常
昇腾CANN训练营2025第二季推出0基础入门、开发者案例等课程,助力开发者提升算子开发技能。针对NPU算子开发中的致命错误问题,文章介绍了两种调试方法:通过ExceptionDump获取异常信息定位逻辑错误,以及使用黑匣子机制在芯片崩溃时提取寄存器状态。重点分析了常见错误类型(内存越界、死锁、栈溢出)及排查技巧,强调反汇编分析和防御性编程的重要性。训练营提供AscendC算子中级认证及丰厚奖品,报名链接见文中。
2025-12-09 23:47:01
709
原创 【昇腾CANN训练营·算法篇】图计算的艺术:基于Ascend C实现GNN核心算子Scatter-Gather与消息传递
摘要:图神经网络(GNN)的核心计算范式是消息传递(Message Passing),通过边表(Edge Index)实现节点间的信息传递。关键操作为Gather(收集源节点特征)和Scatter(累加到目标节点),需使用原子操作避免写冲突。AscendC实现时采用边中心并行策略,性能优化重点包括:1)对边索引按目标节点排序以减少原子冲突;2)将稀疏图计算转化为SpMM。优化图数据局部性是提升GNN算子性能的关键,这类优化可应用于AlphaFold、推荐系统等前沿模型。
2025-12-09 23:44:29
950
原创 【昇腾CANN训练营·行业篇】渲染未来:基于Ascend C实现高性能3D GridSampler插值算子
2025昇腾CANN训练营推出3D体素采样算子开发实战课程,详解三线性插值(Trilinear)算法在Ascend AI Core的高效实现。课程重点解决3D采样中8点随机访存瓶颈,提出分块加载、权重优化等加速策略,并揭示FP32精度在坐标计算中的关键作用。通过AscendC向量化编程,开发者可掌握NeRF渲染和医学影像处理的核心算子开发技能。完成课程可获得AscendC中级认证及华为设备奖励,报名链接:https://www.hiascend.com/developer/activities/cann20
2025-12-09 23:42:09
988
原创 【昇腾CANN训练营·行业篇】基于 AI Core 的高性能 FFT (快速傅里叶变换) 算子开发
2025年昇腾CANN训练营第二季推出系列课程,助力开发者提升算子开发技能。本期重点讲解如何在AscendC上高效实现FFT算法,采用适合NPU的Stockham架构,避免低效的位反转操作。文章详细介绍了复数运算实现、Stockham算法原理、AscendC核心代码实现,以及预计算旋转因子等优化技巧。通过掌握FFT技术,开发者可应用于PDE求解、气象预测等AI for Science领域。训练营提供AscendC算子中级认证及丰厚奖品,报名链接:https://www.hiascend.com/develo
2025-12-08 23:56:35
569
原创 【昇腾CANN训练营·行业篇】去伪存真:基于 AI Core 的高效 NMS(非极大值抑制)算子开发
摘要:2025年昇腾CANN训练营第二季提供算子开发课程,助力开发者技能提升。本文重点讲解在AscendC中优化目标检测网络中的NMS(非极大值抑制)算法。针对NMS串行处理的特点,提出"并行IoU+串行Mask"策略,利用Vector指令批量计算交并比,同时保持贪心算法逻辑。详细介绍了AscendC实现方案,包括Kernel类定义、IoU并行计算核心逻辑,并探讨了性能优化方向,如减少标量交互、精度处理和硬件加速指令等。该优化方案有效平衡了算法逻辑与硬件并行特性,可广泛应用于CV后处理场
2025-12-08 23:52:38
784
原创 【昇腾CANN训练营·行业篇】自动驾驶核心:基于Ascend C的Voxelization体素化算子开发
摘要:2025年昇腾CANN训练营第二季推出Voxelization算子开发专题,重点解决3D点云处理中的稀疏性、冲突写入和随机访存难题。该算子需将不规则点云转换为规整特征图,核心挑战包括动态输入、并发写入和内存不连续访问。训练营提供从基础到进阶的课程体系,完成认证可获华为设备奖励,助力开发者掌握自动驾驶等领域的LiDAR感知模型优化能力。报名链接:https://www.hiascend.com/developer/activities/cann20252#cann-camp-2502-intro
2025-12-08 23:50:27
873
原创 【昇腾CANN训练营·黑客篇】硬核调试:使用BlackBox与Exception Dump定位NPU死机与异常
摘要:2025年昇腾CANN训练营第二季提供全场景算子开发课程,助力开发者技能提升。针对NPU算子开发中的致命错误,文章详细介绍了两种调试方法:通过acl.json配置导出异常信息(ExceptionDump)和使用ada工具提取黑匣子日志(BlackBox)。重点解析了常见错误类型(越界写、死锁、栈溢出)的诊断技巧,强调反汇编分析和防御性编程的重要性。训练营还提供AscendC认证和丰厚奖品,报名链接:https://www.hiascend.com/developer/activities/cann20
2025-12-08 23:48:15
743
原创 【昇腾CANN训练营·进阶篇】破解LLaMA的位置秘密:Ascend C RoPE算子开发实战
在完成了 RMSNorm 和 Int8 量化后,我们的 LLaMA 算子库还缺少一个关键组件——位置编码。RoPE (Rotary Positional Embedding) 是目前大模型的标配。通过旋转角度来表示相对位置。如果两个 Token 的距离是 $k$,那么它们的向量在空间中就相差一个旋转角 $k\theta$。逻辑复杂:涉及向量元素的交叉计算($x_1 \cos - x_2 \sin$)。数据排布。
2025-12-08 23:45:59
640
原创 【昇腾CANN训练营·算法篇】推荐系统加速:在 AI Core 上实现高性能 Hash Lookup 与 Unique 算子
2025年昇腾CANN训练营第二季推出0基础到进阶的算子开发课程,帮助开发者提升技能并赢取认证和奖品。针对推荐系统TB级模型训练痛点,训练营重点讲解SparseUpdate优化技术,通过Unique算子减少重复计算。课程详细解析了基于排序的去重算法实现流程,包括BitonicSort和ParallelScan的组合应用,并介绍了HashLookup的开放寻址法实现。特别强调内存优化策略,如请求合并和冷热数据分离。这些技术能有效优化巨型推荐模型的训练效率,参数量可达TB级。
2025-12-05 17:54:22
712
原创 【昇腾CANN训练营·算法篇】挑战序列依赖:Mamba核心算子Parallel Scan (并行扫描) 开发实战
2025年昇腾CANN训练营推出ParallelScan算子开发专题,解析Mamba架构核心算法。课程详解Hillis-Steele并行扫描算法,通过SIMD硬件实现O(logN)时间复杂度的前缀和计算。重点展示AscendC实现方案,包括寄存器移位访问、分块扫描等关键技术,并探讨性能优化方向。训练营提供从0基础到进阶的系列课程,完成认证可获华为设备奖励,助力开发者掌握AI时代经典算法实现技巧。
2025-12-05 17:25:55
624
原创 【昇腾CANN训练营·行业篇】自动驾驶核心:基于Ascend C的Voxelization体素化算子开发
摘要:2025年昇腾CANN训练营第二季推出0基础到进阶的算子开发课程,助力开发者提升技能。本文以3D检测网络中的Voxelization算子为例,详解其核心算法:通过哈希映射将离散点云转换为规则网格,处理动态输入和并发写入问题。重点展示了AscendC实现方案,包括原子操作处理冲突、随机内存访问优化等关键技术,并指出性能瓶颈及优化方向(如点云预排序)。该算子是检验AI芯片编程能力的重要案例,掌握后可优化LiDAR感知模型底层性能。
2025-12-04 11:56:29
468
原创 【昇腾CANN训练营·生态篇】端云一体:Ascend C 算子在鸿蒙系统上的交叉编译与部署
2025年昇腾CANN训练营第二季推出系列课程,助力开发者提升算子开发技能,完成认证可获证书及大奖。文章重点讲解如何实现"一次编写,端侧运行"的交叉编译技术:通过搭建OpenHarmony SDK和昇腾ACL库(ARM版)工具链,配置CMake进行交叉编译生成ARM架构可执行文件,并使用HDC工具部署到鸿蒙设备运行。同时指出端侧开发需注意内存池化、静态Shape等资源约束问题,掌握该流程可打通云端算法到边缘硬件的开发链路。
2025-12-04 11:48:04
599
原创 【昇腾CANN训练营·进阶篇】极致融合:利用C++表达式模板(Expression Templates)实现算子“零开销”级联
摘要:2025年昇腾CANN训练营第二季提供系列课程,帮助开发者提升算子开发技能,完成认证可获奖励。文章重点探讨了深度学习算子融合技术,提出利用C++模板元编程构建惰性求值引擎,通过表达式模板技术实现算子自动融合。详细介绍了TensorWrapper包装类、操作节点定义及简易DSL实现方法,最终利用AscendC指令实现高效计算。该方案将数学逻辑与底层指令解耦,通过模板展开优化计算图,显著提升开发效率和计算性能。报名链接:https://www.hiascend.com/developer/activiti
2025-12-04 11:44:43
593
原创 【昇腾CANN训练营·进阶篇】上帝的骰子:在 AI Core 上实现高性能随机数生成与 Dropout 算子
摘要:2025年昇腾CANN训练营第二季提供从0基础到进阶的算子开发课程,完成认证可获得证书及奖品。本文重点解析AI芯片中随机数生成的工程难题,介绍Philox算法如何在确定性硬件上实现并行伪随机数生成,并以Dropout算子开发为例,展示AscendC实现过程,包括核心逻辑、代码实现及性能优化技巧。文章最后预告下期将探讨零代码算子融合技术。(149字)
2025-12-04 11:39:43
773
原创 【昇腾CANN训练营·进阶篇】破解LLaMA的位置秘密:Ascend C RoPE算子开发实战
摘要:2025年昇腾CANN训练营第二季推出系列课程,助力开发者提升算子开发技能。本文重点讲解RoPE(Rotary Positional Embedding)在AscendC上的实现方案。RoPE通过旋转矩阵实现位置编码,其核心是将向量视为复数进行旋转变换。针对工程实现中的逻辑复杂和数据排布问题,文章详细介绍了利用AscendC地址偏移技巧高效实现向量交叉计算和"Half-Rot
2025-12-04 11:14:38
647
原创 【昇腾CANN训练营·番外篇】给模型“瘦身”:Ascend C Int8量化算子开发入门
摘要:2025年昇腾CANN训练营推出Int8量化算子开发专题,帮助开发者提升大模型推理性能。文章详细解析了Int8矩阵乘法原理,通过AscendC实现将FP16数据压缩为Int8,利用Cube单元加速计算,再反量化为FP16。重点介绍了Int8Matmul类型定义、反量化处理流程及开发注意事项,包括溢出风险、精度损失等关键问题。掌握该技术可显著降低显存占用,提升推理速度,适用于大模型部署场景。
2025-12-04 10:44:54
814
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅