自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(163)
  • 收藏
  • 关注

原创 Graph Engine大揭秘

借助GE图引擎能力,PyTorch、TensorFlow、MindSpore、PaddlePaddle等主流AI框架的算法模型可以统一转换为使用Ascend IR(Ascend Intermediate Representation)表示的计算图(Ascend Graph),并通过GE的图编译加速技术,显著提升计算图在昇腾硬件上的执行效率。相较于单个计算操作依次下发的方式,图模式具备图的全局视角,能够更有效地简化和优化计算图操作,从而获得更优执行性能。2、使用困难:接入成本高,自定义优化接入困难。

2025-12-25 11:46:19 163

原创 明日直播 |PyPTO & Runtime开源解读

2025-12-24 21:16:35 38

原创 硬件有限,如何部署“大”模型?AMCT模型压缩工具3步解忧

在保持模型能力的前提下,如何降低模型存储需求,如何降低模型计算时延,是模型开发者和性能优化专家研究的热点问题,而模型量化压缩优化是解决这些问题的最重要的手段之一。对模型优化的开发者来说,硬件资源通常比较有限,如何在有限的硬件资源中高效完成模型压缩的全过程,也是开发者重点关注的问题。欢迎关注昇腾CANN公众号,及时获取直播时间与观看链接,相信通过这次直播,大家会对AMCT的使用有更深入的了解,也能够在今后的开发工作中充分发挥它们的强大威力,为昇腾芯片的应用开发带来更多的创新和突破!

2025-12-24 14:40:33 97

原创 推出新型面向 AI 加速器的高性能编程框架——PyPTO

PyPTO 通过多层级 IR 系统、基于 Tile 的编程模型、更高层次的 Tensor 抽象、MPMD 执行调度、Man-In-The-Loop 工作流和分层抽象设计,致力于消除算法与算子开发的鸿沟,平衡编程简单性和控制力,为不同层次的开发者提供相应的抽象层次和工具支持。提供完整的可视化工具和分析工具,一致的错误信息和诊断机制,高质量示例和文档,与主流 IDE 和构建系统的集成,这些都是生态成功的关键因素。大多数开发者可以快速获得可用的实现,而性能敏感的开发者可以通过工具链进行深度优化,追求极致性能。

2025-12-24 14:22:04 586

原创 npugraph_ex:CANN aclGraph的图模式样板间

随着人工智能的飞速发展,大模型推理场景的“低时延,高吞吐”诉求推动了PyTorch图模式的快速发展。torch.compile是PyTorch 2.0推出的核心特性,通过即时编译(JIT)将PyTorch代码转换为计算图,支持inductor等多种后端编译器,并利用图捕获和重放能力减少Host下发头开销,以优化大模型推理时延。

2025-12-23 20:34:18 647

原创 Oam-Tools & AMCT工具介绍与使用

12月24日19点锁定直播间。

2025-12-23 20:30:03 60

原创 明日直播——HCCL集合通信算法解密 ​​​

2025-12-22 20:07:36 93

原创 基于昇腾的SAM投机解码:长序列强化学习训练加速利器

SAM(suffix automaton,后缀自动机)是一个能够高效解决许多字符串问题的数据结构。直观上,字符串的 SAM 可以理解为给定字符串的所有子串的压缩形式。SAM主要维护两个重要的集合:结束位置endpos:考虑字符串 s 的任意非空子串 t,记 endpos(t) 为字符串 s 中 t的所有结束位置的集合。例如,对于字符串 ABCBC 我们有 endpos(BC)={2,4}。在SAM 中,所有满足 endpos 集合相同的字串被归入同一个状态,也被称为endpos 等价类。

2025-12-22 14:18:33 639

原创 CANN集合通信技术解读——NHR算法

观察ReduceScatter阶段的输出结果,Rank 1得到了第2份数据切片的Reduce结果,Rank2得到了第1份数据切片的Reduce结果,因为交换了通信的数据切片编号,因此得到的输出(要求的输入)是乱序的。下面介绍几种常见的通信算法。从底层机制上看,单个通信任务在语义上是针对一块连续内存数据的,对于每一块连续内存的通信,底层都需要下发一个单独的任务,所以NHR算法通过这种方式将每次发送中的不同数据块尽可能拼成一块连续的内存数据块,可以进一步减少通信任务下发的开销和通信的头开销,提升通信性能。

2025-12-19 21:26:34 533

原创 自定义算子开发系列:AICPU Tiling下沉编程方式介绍

Host Bound一直是算子调用的显著性能瓶颈,造成Host Bound的核心原因就在于算子在Kernel执行前都需要计算出TilingData,而TilingData的计算通常是在Host侧完成再拷贝到Device侧的。针对这一问题我们推出了AICPU Tiling下沉编程方式,使用Device侧的AICPU计算TilingData,节省了Host侧拷贝TilingData到Device侧的步骤,降低算子执行耗时。通过减少Host与Device的交互,提升算子执行性能。

2025-12-19 18:55:36 799

原创 基于torch_npu的IPC特性介绍

IPC(Inter-Process Communication,进程间通信)允许不同进程之间直接访问共享的设备内存,而无需进行显式的内存拷贝操作,从而显著提升通信效率。昇腾当前已基于Ascend Extension for PyTorch(昇腾NPU适配PyTorch框架的插件,也称为torch_npu)提供了IPC特性的原子能力,使开发者在分布式训练、强化学习等需要多进程大规模数据通信场景可以自主开发优化,提升数据传输性能并节省设备内存消耗。

2025-12-18 11:03:55 942

原创 三步上手:TorchAir自定义FX Pass实战指南

它类似于传统编译器中的优化步骤,允许在不修改模型源代码的前提下,实现算子融合、常量折叠等高级变换。TorchAir通过开放此能力,使得开发者不仅能在FX Graph中直接定义并执行算子替换、子图重构等通用优化,还能调用TorchAir特有的API,在FX Graph中直接表达原生框架所不具备的多流并行与流间执行时序控制等硬件级优化。编译过程中涉及的主要图优化阶段如下图所示,可以看到TorchAir本身在FX图优化阶段内置了部分FX图优化Pass,开发者注册的自定义Pass将融入此流程:若注册到。

2025-12-17 17:36:47 638

原创 自定义算子开发系列:TilingKey模板化编程介绍

不同的Kernel实现分支可以通过TilingKey来标识,Host侧设置TilingKey后,可以选择对应的分支,例如:一个算子在不同的shape下,有不同的算法逻辑,Kernel侧可以通过TilingKey来选择不同的算法逻辑,在Host侧Tiling算法也有差异,Host/Kernel侧通过相同的TilingKey进行关联。TilingKey模板化编程既提供了一种简单的多场景算子开发编程范式,简化了算子的开发难度,也实际提升了算子的执行效率,帮助开发者更便捷的开发高性能多场景算子。

2025-12-10 16:19:12 932

原创 基于HIXL+Mooncake+vLLM的KV Cache池化与高性能传输联创实践

HIXL秉持极简易用的设计原则,具备高度可集成性,并积极融入主流生态社区。此次 HIXL 顺利与 Mooncake、vLLM 实现集成,正是 CANN 开源价值的具体体现:开源发布后,借助社区的力量,对接业界常用的KV池化和传输库Mooncake,进一步打通了 vLLM + Mooncake + HIXL 的技术链路,使该方案成为 Ascend 上池化方案的首选。并以此为依托,和用户完成联创将大模型推理的 TTFT 提升了 40%。

2025-12-04 19:52:28 1025

原创 vLLM-Ascend:大模型推理的优化实践

vLLM-Ascend是一个完全开源的项目,致力于让大模型推理在昇腾芯片上运行得更高效、更经济。vLLM-Ascend开源项目目前已经达成如下能力并且在多个商用场景实现大模型的高效部署与商用上线:1.vLLM原生特性支持:除inductor外社区特性全部支持,如PD分离、chunk prefill、Prefix cache、并行配置、multi lora、function call、MTP、图模式、静态负载均衡。

2025-11-28 15:59:31 1159

原创 FlashRecovery:大模型训练中快速且低成本的故障恢复方案

与此同时,控制器会执行节点重新调度,用健康的节点替换故障节点。通过对正常节点和故障节点分别应用不同的策略,将重新创建的节点数量限制在仅遇到错误的节点,并减少了不必要的容器重启,这使得重启过程与训练集群的规模无关,并且更快。当优化器步骤过程中发生故障时,控制器会从除故障节点上的设备之外的所有正常设备接收step=i+1,此时正常节点上所有过程的优化器步骤结束,可以发出“停止”、“清理”和“重置”指令,而不会产生任何副作用,并从step=i+1更新的参数中恢复故障节点上训练过程的模型状态。),具体细节见下表。

2025-11-27 19:35:18 651

原创 基于CANN开源算子库的二次开发实践:CrossEntropyLoss与Zloss融合

面对这一挑战,客户参考了昇腾CANN开源算子源码仓ops-nn中高性能CrossEntropyLoss算子的实现,该算子已经具备高性能的CE Loss交叉熵损失函数计算能力,客户在此基础上,融入了ZLoss和lseForZLoss计算,分别用于计算辅助损失ZLoss和ZLoss场景下输出给反向传播的值。这两个损失函数的原始实现存在显著的性能瓶颈——它们的计算由一系列串行的小Vector算子构成,导致了不必要的计算开销,影响了整体训练效率,如下图。在AI大模型训练过程中,性能优化是永恒的主题。

2025-11-27 10:43:40 359

原创 【码力全开特辑直播预告】11.27晚7点,一节课掌握MlaProlog融合算子高效开发技巧

2025-11-26 10:12:38 303

原创 大模型推理加速利器SuperKernel技术综述

在低计算量的前提下,如何进一步提升模型性能成为关键。在某客户的实地验证中,结合CANN提供的优化算子和客户自定义开发的优化算子,成功将解码阶段的延迟降低了6ms,有效改善了终端用户的使用体验。这种对同一地址的并发访问会在共享的L2缓存层面形成一个串行化的访问队列,导致多个核心的请求发生争用,即使数据已缓存在L2中,也会因队列拥堵产生访问延迟,显著削弱多核并行带来的性能提升。为此,在SK代码生成阶段,可根据前后两个依赖算子的类型,动态选择并插入不同粒度的同步模式,从而有效降低同步开销,提升执行效率。

2025-11-24 14:28:22 706

原创 【码力全开特辑直播预告】11.20晚7点,揭秘开源Cube算子,解析高效开发要领

报名CANN训练营完成AscendC算子开发认证(中级)及社区任务,即有机会赢取华为三折叠手机、笔记本电脑等大奖。立即扫码报名,开启挑战之旅!

2025-11-19 11:21:23 220

原创 CANN 开源赋能协同创新:SGLang+Mooncake+CANN HIXL的PD分离D2D部署

现在,随着CANN各个组件的开源,任何特性的更新,开发者都可以通过开源组件仓编译部署的方式立即使用,甚至还能对代码进行魔改,在原有基础上开发适合自己场景的定制化特性。昇腾 CANN 的全面开源开放成为了PD分离方案快速落地的强力支撑。通过CANN HIXL(Huawei Xfer Library,昇腾单边通信组件)的开源,开发者获得了PD分离部署中KVCache在Prefill节点和Decode节点快速传输的关键能力,结合SGLang和Mooncake的框架能力,迅速打通了PD分离部署D2D同构特性。

2025-11-19 09:16:43 743

原创 昇腾AI算法挑战赛·大咖直播

2025-11-17 13:50:43 126

原创 CANN Meetup 北京站 | 11月15日,邀您共赴一场技术盛宴

2025-11-10 17:45:10 321

原创 图融合super kernel技术大揭秘

本场直播将带来CANN新开源仓graph-autofusion的系统解读,含:设计理念、组件架构及发展规划。还有图融合技术super kernel的使用方法及样例演示。

2025-10-31 14:53:48 440

原创 16点开讲,如何基于NPU进行DeepSeek-R1 RL训练优化?

2025-10-30 11:29:30 121

原创 TileLang Ascend——让Al算子开发更简单

直播马上开始扫码参与直播 TileLang Ascend——让Al算子开发更简单。

2025-10-29 14:36:36 131

原创 CANN亮相2025长沙1024程序员节,以开源开放铸就AI算力新基座

作为昇腾AI的核心软件平台, CANN持续深化开源开放战略,将核心软件能力全面向社区开放,构建起社区共建共治的发展模式,大幅降低开发者在昇腾硬件上的开发门槛,让每一位开发者都能基于昇腾AI释放创新潜能。任旭东指出,未来十年将是“智能体的十年”,而支撑这一变革的关键,正是以CANN为代表的AI算力基座。演讲尾声,任旭东强调:“生态是一场真正的无限游戏。”CANN通过持续的开源贡献、技术赋能与生态共建,与全球开发者并肩,共同构筑智能世界新生态,推动AI算力走向更开放、更高效、更普及的未来。

2025-10-28 10:35:53 358

原创 CANN首个训练样例仓库来袭!手把手带你玩转Qwen RL训练,揭秘DeepSeek-R1 RL训练性能优化之道!

为了方便广大开发者使用昇腾环境进行大模型的微调、续训,即将开源的cann-recipes-train仓库,针对LLM与多模态模型训练业务中的典型模型、算法,提供基于CANN平台的优化样例,帮助开发者简单、快速、高效地使用CANN平台进行模型训练。然而,开发者在实际训练过程中,常常面临模型适配难、算法优化复杂、硬件资源利用率低等难题。深入讲解 DeepSeek-R1-671B模型的 RL 训练全流程优化实践样例,涵盖推理、训练、训推调度等各个关键阶段,通过实际案例的拆解,为开发者提供可借鉴的实战经验。

2025-10-28 08:52:45 279

原创 基于CANN开源算子库的二次开发实践:CrossEntropyLoss与Zloss融合

面对这一挑战,客户参考了昇腾CANN开源算子源码仓ops-nn中高性能CrossEntropyLoss算子的实现,该算子已经具备高性能的CE Loss交叉熵损失函数计算能力,客户在此基础上,融入了ZLoss和lseForZLoss计算,分别用于计算辅助损失ZLoss和ZLoss场景下输出给反向传播的值。这两个损失函数的原始实现存在显著的性能瓶颈——它们的计算由一系列串行的小Vector算子构成,导致了不必要的计算开销,影响了整体训练效率,如下图。在AI大模型训练过程中,性能优化是永恒的主题。

2025-10-21 09:00:30 399

原创 CANN开源开放系列直播

本周三10月15日19:00-20:00,锁定CANN直播间将为您带来新仓发布。

2025-10-14 17:22:32 281

原创 哈工大 x CANN团队联合开源昇腾原生Numpy,首位GitCode社区贡献者已加入

通过精心设计的NPUArray核心数据结构,AsNumpy在Python层完全兼容Numpy API,同时在C++底层深度集成了华为 Ascend C算子库,对NPU算子(包括数学运算、线性代数、随机采样等)进行系统化封装,并高效管理dtype、shape以及aclTensor等底层资源,实现了与主机端numpy.ndarray的双向拷贝。AsNumpy在Python层完全兼容Numpy API,随未来硬件而演进,用户无需额外学习成本,即可在昇腾NPU上实现高效的科学计算。

2025-10-11 17:14:45 427

原创 深度解读昇腾CANN动态Shape图调度加速技术

下沉调度模式通常适用于静态Shape模型,由于输入Tensor的Shape固定不变,可以在编译阶段完成内存编排和Tiling计算,因此可以将模型中的算子以整图形式下发到Device上,执行时,只需在Host侧下发一个模型执行的Task即可触发模型在Device上调度执行,从而提升模型调度性能。相反,如果一个模型中Host的下发速度慢于Device的执行速度,Device在执行完当前任务后会等待Host下发下一个算子,这会导致Device出现较大的空闲时间,从而延长模型的端到端执行时间。

2025-09-19 11:19:11 1037

原创 如何高效处理Ascend C非对齐数据?优化技巧全解析

当blockLen+leftPadding+rightPadding不满足32字节对齐时,框架会填充一些假数据dummy,保证填充后的数据(左右填充的数据+blockLen+假数据)为32字节对齐。blockLen+leftPadding+rightPadding不满足32字节对齐时,框架会填充一些假数据dummy,保证填充后的数据(左右填充的数据+blockLen+假数据)为32字节对齐。例如在使用DataCopy接口进行数据传输时,必须确保搬运的数据长度和操作数在UB上的起始地址为32字节对齐;

2025-06-30 20:01:57 1125

原创 一图了解昇腾CANN算子模板库CATLASS

2025-06-16 18:01:51 300

原创 Ascend C矢量编程文档升级:带你掌握多核复杂场景下的Tiling数据切分

尾核&尾块:介绍输入数据无法在多个核间均匀分配,以及在单个核内无法被切分为多个相同大小且32字节对齐的数据块的场景,当算子在AI处理器的多个核上运行时,若数据无法平均分配到每个核,且每个核内的数据也不能均匀分割,如何进行核间和核内的数据切分,以及处理尾核和尾块数据,从而帮助开发者掌握数据切分后同时产生尾核和尾块的处理策略。然而,对于一些深度开发者而言,需要了解在多核、Tiling切分等复杂场景下的更深入内容介绍,以及更详尽的理论知识和实践方法,以便熟练掌握自定义算子的开发。

2025-06-13 14:30:34 382

原创 深度学习的分布式训练与集合通信(三)

而SP是按照输入数据的序列长度的维度分的,涉及到的通信主要是正向一次的KV矩阵的AllGather与反向一次的KV矩阵梯度的ReduceScatter。总结一下就是,Attention阶段的序列并行,在模型训练的前向传播中,主要涉及到的集合通信操作有二,一是计算注意力矩阵A′时对于所有序列并行节点上矩阵K的AllGather操作,二是计算输出矩阵O时对于所有序列并行节点上矩阵V的AllGather操作,如下图所示。虽然都是序列并行,但由于处于不同的运算阶段,它们的行为以及影响是不同的。

2025-06-12 17:35:04 1415

原创 昇腾课程发布 | 昇腾CANN专家打造,手把手带领开发者学习集合通信(HCCL)定制开发!

2025-06-09 21:00:29 164

原创 【CANN全新升级】CANN创新MLAPO算子,DeepSeek模型推理效率倍增

随着DeepSeek系列模型的持续演进,昇腾也在不断探索推理预处理阶段中MLA的计算加速技术,通过VV融合(多个Vector算子融合),进一步提升MLA预处理阶段的计算效率。Q在经过RmsNorm后,进入Q升维矩阵做矩阵乘,升维后每个token变为128个Head,每个Head的HeadDim为192。DeepSeekV3火爆全球的同时,针对DeepSeek系列模型的计算优化思路也在不断探索泛化中,从小融合到大融合,多流水并行以及未来更高自由度的量化方式,昇腾也将持续探索更多可能,以工程创新释放更强算力。

2025-06-09 20:18:13 1029

原创 昇腾CANN LLM-DataDist开发指南全新发布,快来社区体验吧!

LLM-DataDist作为大模型分布式集群和数据管理组件,提供了高性能、零拷贝的点对点数据传输的能力,该能力通过简易的API开放给用户。LLM-DataDist开发的基本流程为“LLM-DataDist初始化 > 建链操作> 申请KV Cache > 推理脚本进行分离部署> 拉取缓存的KV Cache > 执行推理脚本> 释放资源”,LLM-DataDist提供了接口供上层框架调用,实现上述流程。LLM-DataDist的相关概念和应用场景,是学习如何使用LLM-DataDist的必备知识。

2025-06-09 16:27:50 334

原创 CANN核心能力全新升级、深度开放,构筑昇腾AI创新基石

CANN是充分释放处理器极致性能的关键,今年昇腾在计算加速、通信加速、内存优化三大领域协同发力,持续释放硬件价值,创新加速技术,以满足前沿模型架构及工程创新的发展诉求。,通过MLAPO融合算子技术,将MoE模型中13个串行小算子整合为超级大算子,结合Vector与Cube计算单元并行处理,使计算耗时从109ms降至45ms,性能提升超142%,显著释放硬件计算潜力。,开放AscendNPU IR接口,实现开发者“无感迁移”开发体验,同时通过开源社区持续输出技术能力,推动昇腾与全球AI开发生态的深度融合。

2025-06-09 16:17:50 793

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除