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

华为开源CANN,再次释放“昇腾转向”信号

图片

对抗英伟达?成为英伟达。

日前,华为正式宣布开源其AI计算架构CANN,并提出要打造“中国自己的CUDA”。结合此前“昇腾NPU改道GPGPU”的传闻,此举不仅进一步释放出昇腾战略转向信号,同时也描摹出一幅“全面对标英伟达”的崭新图景。

从底层架构变迁到上层生态重建,一夕之间换了新天。今天的昇腾,前路格外引人注目。

官宣:CANN开源号召共建昇腾生态

8月5日,华为轮值董事长徐直军在昇腾计算产业发展峰会上宣布,华为昇腾硬件使能CANN全面开源开放,Mind系列应用使能套件及工具链全面开源。

官宣消息显示,这一举措主要为了支持用户自主的深度挖潜和自定义开发,加速广大开发者的创新步伐,让昇腾更好用、更易用。“华为AI战略的核心是算力,并坚持昇腾硬件变现。”

据悉,CANN全称为“神经网络异构计算架构”,其直接对标对象正是英伟达的CUDA。对开发者来说,CANN是把上层AI训练框架(如PyTorch、TensorFlow、MindSpore)和底层昇腾芯片连接起来的桥梁,让开发者不用关心芯片细节就能调用底层算力。

当然,相较于CUDA,CANN在开发者规模、架构成熟度和生态完善度方面,均存在差距。这在很大程度上影响到昇腾芯片的易用性,用户在生态路线选择上更倾向于前者。

华为方面表示,公司与各界伙伴探讨了如何更好地构建昇腾生态,并发起《CANN开源开放生态共建倡议》,以凝聚产业力量,共探AI边界,共建昇腾生态。

显然,华为希望通过开源CANN,吸引更多开发者扩大其生态圈,拉近与CUDA的差距,并以此弥补昇腾产品早期易用性不足的问题。

值得一提的是,业内此前就传出“昇腾NPU转向GPGPU”的消息,并被视为国产ASIC芯片向主流技术路线靠拢的信号。此次CANN开源融入主流生态,无疑再次验证了这一点。

图片

热议:NPU留下的坑没那么好填?

面对开源CANN发出的生态召集令,业界给出的反应值得玩味。部分观点颇为尖锐,认为昇腾NPU变道后会导致原有软件栈无法维系更新,这时候开源CANN吸纳开发者“惠而不费”。

有人将“昇腾转型GPGPU”和“CANN开源”合并探讨。“NPU走不下去了,原本基于NPU搞编译器的组就要转到基于GPGPU搞编译器,那原来的CANN内部没精力优先级维护了,正好放出来给‘冤大头’们用。”

另外,也有观点指出,开源是好事,问题在于NPU本来就没有GPU好编程。“全国不知道能不能找得出来一百个写昇腾算子写得很六的,因此开源社区能对昇腾的生态做出多少贡献我还是存疑。搞不好全是‘华子’自己的员工在上面commit。”

业内对CANN的“戒心”,源于昇腾NPU一贯以来的封闭特点。

根据公开资料,NPU与GPGPU架构存在根本技术差异,在场景应用上的定位也完全不同。NPU若从此前的全定制化路线转向通用GPGPU,新架构体系几乎无法复用之前的软件栈(包括基础环境、优化的核心算子、编译器等)。

“如果大量人员投入新架构研发,原有的NPU软件栈更新可能会陷入停滞。”某业内人士表示,这会导致后续的新模型或算法无法有效支持,不能充分发挥已采购芯片的价值,造成客户投资亏损。“这时候引导开发者进驻CANN,相当于靠大家一起去‘填坑’。”

正值昇腾架构更迭之际,内有NPU架构生态问题悬而未决,外有英伟达和国产GPGPU“珠玉在前”。也有部分开发者对此时开源的CANN态度十分保守。

前瞻:昇腾转向GPGPU或成定局

尽管CANN生态前景存在不确定性,但昇腾转向GPGPU几乎已成定局。种种迹象表明,ASIC芯片并不适用于主流场景需求,NPU架构路线甚至被一些媒体定义为“战略方向性失误”。

有专业人士分析,NPU和GPGPU相比,最大的问题在于软件适配成本。“由于整个深度学习生态都建立在CUDA之上,最新的算法和尝试也都基于英伟达的卡实现。将这些代码迁移到NPU上,需要大量的时间和开发成本。”

据介绍,NPU和GPU本身的差异,导致需要特定的范式才能发挥出NPU全部的功能。比如gpu kernel需要用ascend-c定制,cpu launch kernel怕打断、小内存访问低效等。

华为基于历史惯性,一直力推自己的软件栈(如Mindspeed-LLM、Mindspeed-RL、MindIE)。可惜具体到项目落地中效果并不理想,比如今年爆火的 DeepSeek-GRPO,想要在NPU上进行 GRPO训练,需要等待华为投入人力适配优化,根本跟不上市场节奏。

上述人士指出,从1月底GRPO 爆火,2月初英伟达就已经有了社区的复现方案,到3月份verl都已经基本成熟。而昇腾卡直到6月份,grpo还处于“凑合能用”的状态。如果要跑其他强化学习算法(如DAPO、PPO等),在昇腾卡上还需要继续等待。

相对来说,GPGPU提供了另一种完全不同的思路——根据 NVIDIA GPU 公开(解密)的接口制造兼容 CUDA (PTX) 的硬件,然后做好编译器,提供 cublus、cudnn 等未开源的厂商定制库。上层的软件完全复用cuda的生态(Megatron-LM、vllm、verl、pytorch、flash-attention等)。

依托这种方案,用户进行精度对齐和性能对齐变得非常简便。由于接口完全一致,还可以使用自动化的程序找到精度和性能异常的bug,并进行修复,极大地降低了开发成本。

“昇腾战略转向的目的正在于此”,业内分析,华为需要借助GPGPU重新适应AI时代需求趋势。而CANN向开放者敞开怀抱,更大的可能是为其“换道超车”提供更多燃料。“问题在于,接下来会有多少用户登上这驾战车,更换架构引擎后的昇腾又需要陪跑多少里程?”

作者:蒜力一姐

声明:本文来源于网络,仅代表作者个人观点,不代表“技术领导力”立场

http://www.dtcms.com/a/319016.html

相关文章:

  • 【数据结构初阶】--排序(五)--计数排序,排序算法复杂度对比和稳定性分析
  • C语言memmove函数详解:安全高效的内存复制利器
  • ELK基础环境安装准备
  • 飞算JavaAI深度解析:Java开发者的智能革命
  • 构建一个简洁优雅的 PHP 参数验证器 —— php-schema-validator
  • 大疆前端笔试题目详解
  • FPGA开发技能(11)用iperf测试网络性能
  • 【unity知识】unity使用AABB(轴对齐包围盒)和OBB(定向包围盒)优化碰撞检测
  • JavaSE---异常的经典面试题
  • 《C语言》函数练习题--1
  • FreeRTROS3——事件组和定时器
  • QT的拖拽功能
  • Flutter开发 Slider组件(如音量控制)
  • 小程序省市级联组件使用
  • 【课题推荐】卡尔曼滤波,创新性的算法与应用:从非线性适用性、鲁棒抗差、自适应、金融与生物新应用等方面考虑
  • 项目构想|文生图小程序
  • idea开发工具中git如何忽略编译文件build、gradle的文件?
  • C5.1:共发射极组态
  • 【Day 18】Linux-DNS解析
  • 如何理解“信号集是位掩码,每个bit代表一个信号”这句话?
  • 怎么在本地引入字体
  • 构建在 OpenTelemetry eBPF 基础之上:详解 Grafana Beyla 2.5 新特性
  • 防火墙环境下的全网服务器数据自动化备份平台搭建:基于 rsync 的完整实施指南
  • CentOS 7 下通过 Anaconda3 运行llm大模型、deepseek大模型的完整指南
  • Express框架
  • 【JavaEE】(9) JVM
  • ElementUI之表格
  • 企业家 IP 发展态势剖析|创客匠人
  • 计算机网络1-5:计算机网络的性能指标
  • 【python 数据加密AES-GCM + 时间戳签名方案(带时间校验)】