DeepSeek接近万卡集群又如何?当单卡性能、互联带宽、训练框架三个瓶颈同时卡脖子,国产算力再怎么堆规模也冲不上10万亿参数。昇腾950真正厉害的地方,不是芯片本身算力多强,而是把华为从芯片到互联到框架的纵向整合能力发挥到了极致,这才是打破超大模型训练壁垒的关键。
很多人一听说“10万亿参数”就懵,先给个直观概念:GPT-4传闻是1.8万亿参数(MoE),Llama 4目前最大是4万亿。10万亿是什么概念?相当于5个GPT-4,2.5个Llama 4,训练所需的算力、显存、互联带宽、数据存储全部都要指数级上升。
但参数规模不是唯一指标,MoE架构下,真正烧钱烧时间的是训练效率和集群稳定性。对于超大模型,不只是“堆卡”的问题,而是3个核心难题必须解决:
第一,单卡算力与显存上限。10万亿参数哪怕用MoE,激活参数做到千亿级别,也需要海量显存来存储专家参数和优化器状态。国产芯片过去一直被诟病单卡算力不足、显存带宽低,导致即使卡很多也喂不饱数据。
第二,卡间互联带宽。10万亿参数要拆到几万张卡上并行训练,每步迭代都要做梯度同步和专家路由通信。如果带宽跟不上,GPU算得再快也是在“空转”,等通信的时间比计算时间还长。英伟达有NVLink和InfiniBand护城河,国产过去最大的短板恰恰在这。
第三,集群稳定性与故障恢复。万卡集群跑一个月,硬件故障、通信异常、训练发散都是家常便饭。国外靠的是多年积累的工程能力,国内在这方面起步晚,超大规模集群运维经验还不足。
而昇腾950把这三个瓶颈一次性解决了一大半,加上国产模型DeepSeek一路高歌猛进,也确实让业界看到了国产超大模型训练闭环的可能性。
一、DeepSeek凭什么冲10万亿?MoE架构和“小钱办大事”逻辑
DeepSeek能走到今天,靠的不是盲目堆参数量,而是用MoE(Mixture of Experts,专家混合)架构把“算力效率”玩到了极致。
MoE和传统Dense模型的区别,用一个比喻就完全能懂:传统模型像“一个全科医生”看病,所有科室知识全塞进一个人脑里,任何症状都得这个人处理;MoE模型更像“三甲医院”,有内科、外科、骨科等大量专科医生,接到病人后由一个“分诊台”(Router)判断该找哪个科室,再调动几名相关专家会诊。
这个设计的好处是:哪怕全院有1万名医生(总参数10万亿),一次门诊实际只需要3-5名专家参与(激活参数5000亿),总人力上去了,但单次用脑成本没涨多少。
这也是为什么DeepSeek一直强调“激活参数”而不是“总参数”——10万亿总参数听起来吓人,但训练时激活的可能只有10%-20%。
具体到DeepSeek的实践,有几个技术点非常关键:
1. 细粒度专家划分(Fine-Grained Expert Segmentation)传统MoE把模型分成8个或16个专家,每个专家参数较多、分工较粗;DeepSeek则把专家切成更细粒度(如每个专家尺寸更小、数量更多),让路由更灵活——就像三甲医院里不仅有“心内科”,还分出“心衰专科”“冠心病专科”,分诊精度更高。
2. 共享专家(Shared Expert)除了细粒度专家,DeepSeek还设置了一定比例的共享专家,每个Token都要经过共享专家处理,保留通用的、跨领域的基础能力,防止过度“专科化”导致常识缺失。这和医院里必须有全科医生保证基础诊疗是一样的逻辑。
3. 负载均衡训练策略训练MoE最大的坑是“路由坍缩”:分诊台为了省事,把病人全塞给同一个专家,其他专家闲着,算力白费且模型变笨。DeepSeek在训练目标里加了负载均衡的辅助损失函数(Auxiliary Loss),让每个专家被调用的概率尽量均匀。代价是会稍微降低模型精度,但从训练稳定性和算力利用率来看,这笔交易非常划算。
DeepSeek还有一个更关键的优势:开源。DeepSeek的模型权重和技术报告都公开,意味着国内一家公司做出的架构创新,可以被昇腾、寒武纪、海光等芯片团队拿来做适配优化。这是美国AI公司做不到的生态优势——闭源模型再强,别人也无法为它优化底层框架。
二、昇腾950如何打通国产超大模型的“最后壁垒”?
昇腾950不是单纯堆规格的“更贵的昇腾910C”,而是冲着超大模型训练的三大痛点逐一拆解的:
2.1 单卡算力:不再“卡脖子”的底气
昇腾950采用类似英伟达的“超级芯片”思路,单卡集成两个Die,通过先进封装互连。这直接带来两个好处:
一是算力密度提升。双Die封装让单卡的FP8算力大幅跃升,支持更大Batch Size(批大小),减少数据搬运动作;二是显存带宽同步提升,超大模型训练最怕显存带宽不够——模型参数和梯度频繁读写,带宽低就卡IO。
从路径看,这和英伟达H100、B200的演进逻辑本质一致。单卡能力决定集群规模的起点,单卡940B(FP8装箱折算)级别的能力,意味着10万亿参数模型不再需要百万卡量级的“天文数字”,而是集群规模控制在“可运维范围”。
这里要强调一个被忽视的点:国产芯片历年最缺的不是算力峰值,而是“FP16/FP8算力的实际利用率”。过去标称的峰值很高,但跑真实模型时算子效率差、显存带宽拖后腿,实际利用率经常打五折甚至三折。昇腾950宣称的算力提升,更关键的是通过统一的AscendCL(华为的编程接口)和提升了算子库完备度,把“实际效率”拉上去了。
2.2 互联带宽:吃掉单卡算力的前提
超大模型训练必须用MoE并行(Expert Parallelism,EP),即把不同专家放到不同卡上,Token按路由分配到对应专家的所在卡。卡间通信频次极高,对互联带宽的要求远高于普通Dense模型。
昇腾950做对了两件事:
第一,组网架构上全面拥抱“超节点”概念。不再按“单机8卡”的传统节点去堆规模,而是一个超节点内用高速互联把所有NPU拉通,形成“一张大卡”。8卡节点瓶颈在网络通信,超节点内部秒级共享显存,把梯度同步时间大幅缩短。
第二,规模化集群互联参数上全面升级。实测数据表明,超节点内全互联带宽大幅提升,支持更大信息流;加上华为对“集合通信库”(HCCS)的优化,减少通信开销。
说一下这里的核心难点:MoE的All-to-All通信。路由之后,每个Token要被发往不同的专家所在卡,这需要让所有卡两两之间都能高速通信,也就是All-to-All模式。传统“树状拓扑”带宽不够,全互联拓扑又太贵。昇腾950的超节点方案,本质是用“有限的全互联范围”+“跨节点高带宽骨干”把成本压下来,同时保住训练效率。
2.3 软件栈与生态:打通框架层“最后一公里”
硬件指标再漂亮,软件不匹配就是废铁。昇腾950在软件栈上下了一盘大棋:
其一,PyTorch原生的昇腾后端(Ascend PyTorch Adapter)持续迭代。过去用昇腾训练必须把代码改写为MindSpore,迁移成本极高。现在主流模型基本可以直接用PyTorch跑,改造成本大幅降低,这是DeepSeek这类快速迭代的项目能顺利适配的关键。
其二,与DeepSeek深度协同的底层优化。昇腾950在训练框架中加入了专门针对MoE架构的通信调度优化。例如针对All-to-All通信做拓扑感知调度,减少通信拥塞;针对Transformer的算子做融合,把多个小而碎的计算合并成大算子,减少内核启动开销。
大模型训练中,算子融合的收益往往被低估。Transformer层里有大量频繁调用的算子,每次内核启动都有固定开销。把这些算子融合成一个大内核,能直接削掉30%-50%的内核启动时间。昇腾950的CANN(华为计算架构)版本里做了大量此类工作,优化后的实测数据比昇腾910C有明显提升。
三、算力瓶颈的根源与突破口:这一次突破能走多远?
讲完具体技术和硬件,再谈几句更本质的东西。10万亿参数模型迟迟没有真正落地,难道单纯是“芯片不够多”吗?
不是。芯片问题背后,是一个由三层协同构成的技术金字塔:
第一层:硬件能力(芯片 → 互联 → 集群)单卡算力决定上限,卡间互联决定规模,集群稳定性决定可持续性。任何一层跟不上,整个金字塔就塌了。过去的国产AI芯片,硬件能力连“底座”都算不上“实心”——单卡密度和互联速度双向拉胯。
第二层:软件生态(框架 → 算子 → 工具链)英伟达最强的不只是H100,而是CUDA这个“护城河”生态。成千上万的优化算子、工具链、加速库,都是为CUDA量身定做的,工程师的代码也在CUDA生态里沉淀了十年。昇腾这些年最大的进步,不是单卡性能逼近英伟达,而是把CANN的算子覆盖度和易用性慢慢补齐。
第三层:系统调度与稳定性保障(并行策略 → 故障恢复 → 资源管理)10万亿参数训练需要把MoE、ZeRO优化、序列并行、张量并行、流水线并行等策略叠加起来。这需要一套极强的并行调度系统,自动分配每张卡的负载、调度通信、处理故障恢复。训练到一半某张卡挂了,自动保存权重、踢掉坏卡、加载新卡继续跑,这在万卡集群里是每天都在发生的事。
英伟达+Megatron/DeepSpeed这套组合,已经被业界验证了上限足够高;而昇腾950一旦把上述三层都补齐,就意味着国内AI大模型训练有了“系统级”的解决方案,而不再是东拼西凑的“作坊式训练”。
四、实操层面:10万亿参数训练对工程场景意味着什么?
这里不说芯片本身,从做工程的角度,聊聊10万亿参数一旦真的开始训练,训练框架层到底会面临哪些具体的工程挑战。这些挑战每一个都值得投入大量时间去解决,也直接决定了“冲10万亿”会不会是PPT上的口号。
4.1 显存分配:从“够用”到“精打细算”
10万亿参数如果用半精度(FP16/BF16)存储,光权重就是20万GB,也就是200TB,相当于4万张H800的显存只能放下权重,还没算梯度和优化器状态。所以必须叠加MoE和ZeRO技术。
以常见做法为例:模型并行+ZeRO-3+专家并行同时用,状态切分、权重切分、梯度切分,多机多卡协同存储。这会带来大量通信,ZeRO-3每步都需要“All-Gather”(在多个设备上聚合完整权重),通信量巨大。纯Dense模型下,ZeRO-3的通信开销已经让千卡集群的算力利用率降到50%-70%,MoE只会更严重。
所以关键策略是把“通信尽可能隐藏在计算背后”:通过流水线调度,提前把下一层需要的权重All-Gather到显存里,与当前层的计算并行,计算和通信重叠。
4.2 Checkpoint:训练到一半崩了,如何止损
十万亿参数训练,一个Checkpoint就是200TB以上。传统做法是每N步写一次全量存档,但写盘几十分钟到几小时,期间集群是暂停的,浪费极大。
解决办法是“异步Checkpoint+分层Checkpoint”:把优化器状态、模型权重、通信状态分开存储;写盘期间计算不停止,只在后台异步完成。再做“内存副本检查点”,先把检查点写到本机NVMe/内存,再后台慢慢搬运到分布式文件系统。
昇腾950这个级别的国产系统中,这套能力会和调度器深度融合,自动感知节点状态,故障卡剔除后自动用备用节点接替。这正是过去国产训练框架和英伟达生态差距最大的地方——不光是硬件峰值性能,而是系统工程的成熟度。
4.3 数据加载与预处理:被低估的“隐形瓶颈”
10万亿参数训练一天要吃掉的数据量,大概是TB到PB级别。数据加载跟不上,GPU/NPU再快也会饿死。
我做过的训练项目中,数据加载导致的“无效等待”经常占整体时间的10%-20%。解决办法通常是这几板斧:数据预处理分布式并行,把数据读取做成流水线,多级缓存(把高频数据缓存到本地高性能盘)。
昇腾栈提供了数据集加速服务和存储加速方案,在万卡规模下可以把预处理和训练完全解耦——数据地在后台异步完成,该训练时随时取用。
五、昇腾950进击的“未竟之地”:仍需冷静看待的几个坑
这篇文章把昇腾950说得再优秀,也不是没有隐患。如果读者有倾向选型国产算力,这几个问题值得提前了解和权衡。
第一个绕不开的坑:算子覆盖率和生态惯性。昇腾950努力兼容PyTorch,希望社区代码尽量不改就能跑。但现实中,很多小众算子、新发的论文代码,昇腾大概率还是没适配。遇到这种算子,只能自己写“自定义算子”,用TBE(华为的算子开发工具)或AI框架的新范式去实现。即便有AI辅助生成算子,验证正确性也要大量时间。
第二个坑:工具链成熟度。英伟达的Nsight一套可以精确分析到每个算子耗时、每块GPU利用率;昇腾虽然有Profiling工具,但功能完善度和易用性还在追赶。模型训练出现性能瓶颈时,工具链不顺手会严重影响排查效率。
第三个坑:文档与社区经验。英伟达训练栈有十年的社区积累,踩过的坑都有博客、帖子、示例代码可以参考。昇腾社区年轻很多,遇到问题经常只能自己啃官方文档。
这三个坑不代表昇腾没有前途,相反,正是这些愿意在第一线填坑的人,才能真正把国产AI算力的生态环境做起来。我自己的体会是,选不选昇腾,不是看参数表上的指标,而是看你的团队有没有余力消化它当前的短板。如果是搞研究验证、快速迭代模型,CPU调优时间和精力,直接选英伟达更省心;如果目标是做长远、大规模、自主可控的基座模型,那现在就是上车昇腾的最佳时间点。
六、10万亿参数的尽头:一场算力自主的持久战
10万亿参数不会被任何一家公司独享。在可预见的未来,会有多家机构做出10万亿参数的模型,但背后的训练平台如果仍然是英伟达生态,它就是个“组装厂”;只有国产算力+国产框架+国产模型这条链自己能闭环,才算真正掌握了AI生产力。
昇腾950的发布,让我看到一个积极信号:芯片层面不再只追峰值算力,而是同步优化互联带宽、显存带宽、软件生态;模型层面也有DeepSeek这类愿意公开技术细节的团队不断推进。国产超大规模AI训练,正从“能不能做”走向“做得好不好”的新阶段。
最后个人的一段真实体会:这两年我在多个国产和英伟达异构集群上跑大模型训练,最大的感受是——算力自主不是靠一两次发布会口号实现的,而是靠每一次算子适配、每一次通信优化、每一次故障恢复的工程经验堆积出来的。昇腾950这一步走得扎实,但更值得期待的是接下来基于它的万卡集群上,会跑出什么样的10万亿参数模型工程日志。芯片只是入场券,系统调度、故障恢复、通信优化这些“软”层面的能力,才是决定国产超大模型能跑多快的最终裁判。