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

华为开源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.xdnf.cn/news/17299.html

相关文章:

  • vue3对比vue2的性能优化和提升 :Vue 3 vs Vue 2
  • Java的异常体系
  • hadoop HDFS 重置详细步骤
  • ReAct Agent 原生代码实现(纯Python实现)
  • 【指南版】网络与信息安全岗位系列(三):安全运维工程师
  • 前端技术架构设计文档(Vue2+Antd+Sass)
  • 关于AI应用案例计算机视觉、自然语言处理、推荐系统和生成式AI四大领域的详细技术分析。
  • Java垃圾回收(GC)探析
  • 护网行动之后:容器安全如何升级?微隔离打造内网“微堡垒”
  • 【智能协同云图库】第六期:基于 百度API 和 Jsoup 爬虫实现以图搜图
  • 时间复杂度和空间复杂度Java语言描述
  • 【渲染流水线】[应用阶段]-[渲染命令队列]以UnityURP为例
  • AutoMQ-Kafka的替代方案实战
  • 如何在 Ubuntu 24.04 中永久更改主机名
  • zookeeper因jute.maxbuffer启动异常问题排查处理
  • 【macOS操作系统部署开源DeepSeek大模型,搭建Agent平台,构建私有化RAG知识库完整流程】
  • 29-数据仓库与Apache Hive-创建库、创建表
  • MT信号四通道相关性预测的Informer模型优化研究
  • Linux中Docker Swarm实践
  • 手机控制断路器:智能家居安全用电的新篇章
  • SupChains技术团队:需求预测中减少使用分层次预测(五)
  • VSCode - 设置Python venv
  • PyTorch + PaddlePaddle 语音识别
  • 深入探索C++模板实现的单例模式:通用与线程安全的完美结合
  • 初识C++类的6个默认成员函数
  • 基于 Socket.IO 实现 WebRTC 音视频通话与实时聊天系统(Spring Boot 后端实现)
  • LongVie突破超长视频生成极限:1分钟电影级丝滑视频,双模态控制告别卡顿退化
  • PyTorch如何实现婴儿哭声检测和识别
  • 串联所有单词的子串-leetcode
  • 解读 gpt-oss-120b 和 gpt-oss-20b开源模型