智东西(公众号:zhidxcom)
作者 | 中国AI算力大会
6月26日,2025中国AI算(suan)力(li)大会在北京热烈召开。从国产AI算(suan)力(li)的突围与(yu)崛起(qi),到智算(suan)中心深层软(ruan)硬件技术创(chuang)新解决(jue)算(suan)力(li)落地(di)产业难题,近(jin)30位重量级嘉宾与(yu)会带来致辞、报(bao)告、演讲和对话,全方位解构(gou)DeepSeek引爆的AI算(suan)力(li)变(bian)局。
摩尔线程副总裁王(wang)华在主(zhu)会场以《基于FP8的(de)国产集群(qun)训练》为题(ti)进(jin)行了主(zhu)题(ti)演讲。在演讲中他提到2020至(zhi)2025年间(jian),大模型(xing)训练的(de)算力需求激增近1000倍 ,而(er)驱动(dong)力来自参数(shu)规模与数(shu)据量(liang)双向增长(zhang)。
王华认为,大(da)(da)集群(qun)和FP8成为大(da)(da)模(mo)型(xing)现阶段的最强需(xu)求。对此,他(ta)围绕(rao)大(da)(da)模(mo)型(xing)算力(li)需(xu)求、混合精(jing)度(du)训练(lian)(lian)、FP8训练(lian)(lian)技术演进等方面进行了深入浅出地(di)剖析阐释(shi)。
此(ci)外(wai),王(wang)华还分享道(dao),摩尔线程提供包括FP8在内的全精度(du)算力(li),构建了支(zhi)持多(duo)种不同数(shu)据类(lei)型(xing)的混合精度(du)训练(lian)方案,还可以提供万(wan)卡(ka)集群开(kai)箱(xiang)即用的产品,可以满足大(da)模型(xing)的算力(li)需求,并大(da)幅提升其训练(lian)效果。
以下为王华的演讲实录精华:
一、5年,大模型训练算力需求增长千倍
首先来看一下大型训练需求的趋势。2020年,算力需求训练需求最高是在1023flops。到25年,训练算力需求最高的是xAI的Grok3,算力需求差不多到了1026flops。从1023到1026,算(suan)力(li)需(xu)求增长了1000倍。

增(zeng)(zeng)长(zhang)主要来自(zi)两个(ge)方面(mian):一是(shi)(shi)模型(xing)(xing)参数(shu)。大模型(xing)(xing)的模型(xing)(xing)参数(shu)规模是(shi)(shi)在不断增(zeng)(zeng)加的,最近的模型(xing)(xing)动辙都是(shi)(shi)数(shu)千亿甚至(zhi)到万亿的参数(shu)规模;第(di)二是(shi)(shi)训(xun)练数(shu)据量(liang)。早期训(xun)练数(shu)据量(liang)可能到几(ji)百B,稍微(wei)多一点到1T,但现(xian)在基(ji)本(ben)都是(shi)(shi)十几(ji)T。
所以,算力需(xu)求和模型参数数量(liang)(liang)与训(xun)练数据量(liang)(liang)的(de)乘积成(cheng)正比,而这两个(ge)维度(du)的(de)增长(zhang),带来模型训(xun)练算力需(xu)求的(de)大幅增长(zhang)。
再举一个例子,比如,Llama 3 70B大概是在1024flops左右,然后更大一点Llama 3 405B在1025flops左右,GPT 4也在1025左右,早期的Llama 2大概在1023flops左右。虽(sui)然Llama 2与Llama 3的(de)模(mo)型参数和模(mo)型结构比较类似,但是(shi)因为(wei)Llama 2的(de)训练数据(ju)量低一个数量级(ji),所以它(ta)要求的(de)算力也会(hui)低一个数量级(ji)。

不只是(shi)(shi)算力,这些大规模训(xun)练所(suo)需(xu)要(yao)的(de)(de)集群也越来越大。为了校正(zheng)所(suo)需(xu)要(yao)的(de)(de)算力,用H100的(de)(de)千卡、五千卡到万卡量级的(de)(de)集群来作类比。表(biao)格(ge)中的(de)(de)数(shu)据是(shi)(shi)按照(zhao)MFU算的(de)(de),当然不同(tong)模型的(de)(de)参数(shu)大小对MFU有影响(xiang),另外集群规模增大之后(hou)由(you)于(yu)加速(su)比效应,MFU会下降,所(suo)以这里只是(shi)(shi)大致的(de)(de)估算。
这个量级中,DeepSeek V3的算力需求大概在3.4×1024flops。在千卡集群上,1024的训练时间大概是97天,五千卡集群需要22天,到万卡级别就只需要13天了。再举一个例子,Qwen 3 235B,虽然模型参数小一些,但因为数据集更大,它的实际算力会更高,所以Qwen 3 235B计算量约为4.75×1024flops。再看一下训练(lian)时间(jian),这个计算量在千卡(ka)集群上需要136天(tian),五千卡(ka)上是37天(tian),到(dao)万卡(ka)就只需要18天(tian)。这是两个比(bi)较典型的国内MOE模(mo)型的例子。
再比如说Llama 3 370B,这是比较典型的Dense模型(稠密模型),训练数量也差不多在1024flops左(zuo)右,训练时间也与Qwen 3差不多。
更大的模型,比如GPT 4,训练数量有1025flops,这几(ji)乎是(shi)(shi)千卡不可能(neng)完(wan)成的(de)任务,到这个量级(ji)(ji)基本需要万(wan)卡级(ji)(ji)别的(de)集群(qun)来支(zhi)撑。尤(you)其是(shi)(shi)现在(zai)大(da)模型的(de)训练参数基本都在(zai)向着万(wan)亿发展,数量级(ji)(ji)十分(fen)巨大(da),所以(yi)后(hou)续训练需要的(de)算力也会非常大(da)。
二、混合精度训练缓解算力需求激增难题
为了解决(jue)算力需求,摩尔线(xian)程采用混合精(jing)度训练的(de)(de)方法。在整个模型训练过(guo)程中,识别出对(dui)精(jing)度要求不高的(de)(de)操作,将其(qi)替换为低(di)精(jing)度计算。
更低(di)精(jing)(jing)度带来的(de)(de)优(you)势,首先体(ti)现在算(suan)(suan)力层面:精(jing)(jing)度降(jiang)低(di)一(yi)半(ban),算(suan)(suan)力翻(fan)倍(bei),同时(shi)显存占(zhan)用(yong)、显存带宽及传输带宽消耗均减半(ban)。本(ben)质上,采用(yong)更低(di)精(jing)(jing)度的(de)(de)数据类(lei)型进(jin)行训练(lian),相当(dang)于实现了算(suan)(suan)力的(de)(de)翻(fan)倍(bei)。但需注意(yi),低(di)精(jing)(jing)度替换只能(neng)部(bu)分(fen)进(jin)行,无(wu)法完全替代,精(jing)(jing)度敏感的(de)(de)环节仍需保留高精(jing)(jing)度计算(suan)(suan)。因此(ci),降(jiang)低(di)精(jing)(jing)度可在一(yi)定(ding)程度上提升(sheng)算(suan)(suan)力或降(jiang)低(di)模(mo)型训练(lian)的(de)(de)算(suan)(suan)力需求。

在精(jing)度(du)(du)策略的设计上,可从两个(ge)维(wei)度(du)(du)考量(liang):第一个(ge)维(wei)度(du)(du)是模(mo)(mo)型(xing)(xing)权(quan)重(zhong)。以相同算(suan)力条件(jian)为例(li),对比多参数(shu)(shu)(shu)低精(jing)度(du)(du)模(mo)(mo)型(xing)(xing)与(yu)少参数(shu)(shu)(shu)高精(jing)度(du)(du)模(mo)(mo)型(xing)(xing),如100B参数(shu)(shu)(shu)规(gui)模(mo)(mo)的FP16模(mo)(mo)型(xing)(xing)和200B参数(shu)(shu)(shu)规(gui)模(mo)(mo)的FP8模(mo)(mo)型(xing)(xing),从数(shu)(shu)(shu)学表达(da)能力来看,其可表达(da)的理论空间(jian)是等(deng)价(jia)的。
但当前(qian)行业趋(qu)势更(geng)倾向于(yu)优先(xian)扩展模型参数规模。这是(shi)因为(wei)模型训练(lian)中实际使用的精度范围仅占理论值域(yu)的一部分,造成“精度空间浪费”,而增(zeng)大参数规模能(neng)有效提升(sheng)模型效果。
从(cong)行(xing)业技术(shu)演(yan)进来(lai)看,精(jing)度格式正沿着FP32→TF32→FP16/BF16→FP8的路径发展。此(ci)前业界对FP8的应用尚(shang)处探索阶段,而DeepSeek已将其成(cheng)功(gong)应用于模型训(xun)练,预计未来(lai)会有更多模型采用FP8精(jing)度。
三、FP8训练挑战解析:数值范围局限与精度损失引发的梯度问题
FP8训练面临什么挑战?首先我们看一下不同浮点数的值域。因为指数位不同,取值范围其实差别很大。比如BF16,忽略正负号,可以看到值域靠低端的部分可以到2-126,然后高端的可以到2127。FP16的值域会小很多,但有十位尾数,值域靠低端部分接近2-14,然后高端(duan)部分是六万多。
FP8有E4M3和E5M2两种,可以看到,E4M3的取值范围其实非常窄,只有2-6到448,E5M2跟FP16类似(si),但其实跟现(xian)在广(guang)泛用的BF16比,取值范围(wei)还是小(xiao)很多(duo)。这里面有两个(ge)因(yin)素,一个(ge)是取值范围(wei),一个(ge)是精度(du)。
取值(zhi)范(fan)(fan)围(wei)就是(shi)刚刚讲到(dao)的从小数到(dao)大数的范(fan)(fan)围(wei),因为FP8的数值(zhi)范(fan)(fan)围(wei)小,很可能在计算过程中遇(yu)到(dao)数值(zhi)上溢(yi)和下溢(yi)的问题,如此就会带来一个典型问题:梯(ti)(ti)度爆炸和梯(ti)(ti)度消失。
精(jing)度就是尾数(shu)(shu)部分能(neng)够表达的数(shu)(shu)量。精(jing)度低会(hui)带(dai)来舍入误(wu)差的问(wen)题(ti)。例如在做(zuo)数(shu)(shu)值转(zhuan)换的时候,可(ke)能(neng)BF16能(neng)表示的数(shu)(shu)在FP8里就会(hui)丢失掉一(yi)(yi)些小数(shu)(shu)。另(ling)外就是一(yi)(yi)个(ge)大数(shu)(shu)加(jia)一(yi)(yi)个(ge)很小的数(shu)(shu),由于小数(shu)(shu)部分太小了(le),两(liang)者就相当于没加(jia),这样就会(hui)造成信息丢失,对模型(xing)训练过程会(hui)带(dai)来梯度无法更新的问(wen)题(ti)。
四、FP8训练技术不断演进,4大创新攻克低精度核心难题
这(zhei)两年FP8训(xun)练技(ji)术(shu)取得多项进展,已经应用在一些模型的训(xun)练中。
模(mo)型训练中不(bu)同操作对精度的需求是(shi)不(bu)一样(yang)的:
1、矩阵乘操作(zuo):作(zuo)为两数相(xiang)乘的基础运算,FP8的数值范围易于控(kong)制,可通过(guo)值域限定避免(mian)溢出,对精度(du)要(yao)求(qiu)较低;
2、累加与规约操作(zuo):矩阵(zhen)乘中隐(yin)含的累加过程(尤(you)其大矩阵(zhen)运(yun)算时多数相(xiang)加)存在值域溢出风险(xian),对(dui)精(jing)度要求处于中等水(shui)平;
3、非线性(xing)函数(shu)运(yun)算:如(ru)指数(shu)函数(shu)等场景,数(shu)值易快速超出值域,对精度要求最高。
基于此,训练中可对不同操作采用(yong)差异化(hua)(hua)(hua)精(jing)度策略(lve),通过中间过程的量(liang)(liang)化(hua)(hua)(hua)与反量(liang)(liang)化(hua)(hua)(hua)实现精(jing)度适配。
Tensor Core技术提供了混合精(jing)度(du)运算的硬件支持。自(zi)2017年引入(ru)以来,该(gai)技术持续进化,现(xian)可支持以FP8格式(shi)矩阵为(wei)输入(ru),通(tong)过(guo)硬件级混合精(jing)度(du)运算输出高精(jing)度(du)矩阵结果(guo)。
此外,训练(lian)框(kuang)架也在(zai)支持混(hun)(hun)合精度训练(lian)。例如在(zai)BF16与FP32的混(hun)(hun)合训练(lian)中,多数操(cao)作采用BF16执(zhi)行,但权重(zhong)更(geng)新(xin)时会切换至(zhi)FP32,通过维护(hu)FP32权重(zhong)副本确保训练(lian)稳定(ding)性(xing)。
还有就是(shi)Tensor Scaling(张量(liang)缩(suo)(suo)放(fang))技术。在进行高精(jing)度(du)(du)向低(di)精(jing)度(du)(du)转(zhuan)换时,由(you)于值域(yu)范围(wei)不同,会出现信息丢(diu)失问题(ti)。因此在数据(ju)(ju)类型转(zhuan)换前,需先将高精(jing)度(du)(du)值域(yu)乘以Scaling Factor(缩(suo)(suo)放(fang)因子)参数,使其缩(suo)(suo)放(fang)到(dao)低(di)精(jing)度(du)(du)值域(yu)范围(wei)内(nei),以此确保转(zhuan)换过程中尽(jin)可能(neng)减少(shao)数据(ju)(ju)丢(diu)失。
Scaling Factor的(de)选择可(ke)以(yi)有不同的(de)策略。在时(shi)间维度上(shang)来(lai)看可(ke)以(yi)是在量化前(qian)直接(jie)计(ji)算(suan),也可(ke)以(yi)采用(yong)基于历史数据的(de)Delayed Scaling Factor(延迟缩放因子(zi))。
从颗粒(li)度来(lai)看,既可以对整个 Tensor 应(ying)用统一的Scaling Factor,也能(neng)进行更精细的选择,比(bi)如Per-Channel(逐通道)缩放(fang),甚至(zhi)还能(neng)进一步细化到(dao)Per-Channel的子区域(yu)。DeepSeek在其论文中提及,他们采(cai)用的是Per-Block(逐块)的缩放(fang)策略。
简单说(shuo)一下DeepSeek的论文。DeepSeek-V3就使(shi)用了FP8混合精度训(xun)练,其(qi)中主(zhu)要采用了以下策略:
1、前向和后向传播(bo)的3次(ci)GEMM使用FP8;
2、激活(huo)值的缓存和传输使用FP8;
3、Embedding、激活函数等模块使用高精度浮点数;
4、主(zhu)权重、权重梯(ti)度、优化器状(zhuang)态使用高精度浮点(dian)数。
五、摩尔线程全栈支持FP8训练,性能提升20%~30%,对标主流水平
那我(wo)们说回到(dao)摩尔(er)线程在(zai)采用(yong)FP8训(xun)练上面的(de)一些工作。
首先,摩尔(er)线程(cheng)的(de)全功能GPU计(ji)(ji)算(suan)卡在精度(du)上的(de)支(zhi)持(chi)(chi)非常全面(mian),摩尔(er)线程(cheng)是国内少数可以(yi)支(zhi)持(chi)(chi)FP8精度(du)的(de)GPU供应商。不同(tong)计(ji)(ji)算(suan)精度(du)可以(yi)用在图形、计(ji)(ji)算(suan)等不同(tong)场景(jing),摩尔(er)线程(cheng)计(ji)(ji)算(suan)卡的(de)优势就(jiu)是支(zhi)持(chi)(chi)全精度(du)计(ji)(ji)算(suan)。
第二点就是(shi)(shi)在(zai)集群(qun)(qun)方(fang)面(mian)的(de)(de)工作。摩尔线程可(ke)以(yi)说是(shi)(shi)在(zai)集群(qun)(qun)这一方(fang)面(mian)投入很大(da)的(de)(de)国产GPU公司。我们的(de)(de)夸娥(KUAE)智(zhi)算集群(qun)(qun)系(xi)列产品可(ke)以(yi)让客(ke)户实现开箱即(ji)用,已经做到千卡(ka)规(gui)模(mo),可(ke)支(zhi)持万卡(ka),未来还会向(xiang)着更(geng)大(da)规(gui)模(mo)集群(qun)(qun)前进。
在(zai)(zai)这一整个(ge)过程中,我(wo)们(men)积累了很多实践(jian)。摩尔线(xian)程搭建(jian)了完整的(de)软硬件(jian)栈(zhan),从硬件(jian)设计到集群(qun)管理、调度等全部(bu)包含。在(zai)(zai)大规模集群(qun)的(de)运维方(fang)面也(ye)积累了丰富的(de)经验。在(zai)(zai)大规模训练时,经常会出现计算错(cuo)误、卡(ka)异常等情(qing)况(kuang),如何(he)快速定(ding)位出现故(gu)障(zhang)的(de)部(bu)分将其替(ti)换是(shi)很重(zhong)要的(de)。我(wo)们(men)采(cai)用了分布(bu)式的(de)故(gu)障(zhang)监测(ce)方(fang)法,实现分钟级的(de)故(gu)障(zhang)定(ding)位和恢复。
另外还有支(zhi)持FP8训(xun)练的摩(mo)尔(er)线(xian)程(cheng)软(ruan)件栈。我们开源(yuan)了(le)3个组件:提供MUSA后端(duan)加速支(zhi)持的Torch-MUSA、混(hun)合(he)并行训(xun)练框架MT-MegatronLM以及(ji)主要用(yong)于(yu)Transformer的高效训(xun)练和推理优化的MT-TransformerEngine。基于(yu)摩(mo)尔(er)线(xian)程(cheng)软(ruan)件栈,我们成功复现(xian)了(le)DeepSeek-V3满血版训(xun)练。
在此(ci)之(zhi)上(shang)我(wo)(wo)们做了一(yi)系列的(de)实验,基(ji)(ji)于(yu)我(wo)(wo)们自(zi)己(ji)的(de)夸(kua)娥(KUAE)集群,在性能方(fang)面,在Llama3 8B、Qwen、DeepSeek-V2 16B以(yi)(yi)及V3 30B上(shang),目前采(cai)用FP8混合训(xun)练可以(yi)(yi)带(dai)来20%~30%的(de)性能提升,且引入FP8前后loss曲线基(ji)(ji)本一(yi)致,在采(cai)用FP8训(xun)练方(fang)面,摩尔线程(cheng)的(de)GPU计(ji)算卡(ka)(ka)与国际主流的(de)卡(ka)(ka)做精度对(dui)比也基(ji)(ji)本吻合。
此外,摩尔(er)线程(cheng)在(zai)Scaling Factor的选择上也做了许多探索,例(li)如:amax的统计(ji)信息(xi)表明(ming)Per-Tensor的Scaling Factor适(shi)合(he)采用Delayed Scaling策略,而Per-Block则(ze)适(shi)合(he)采用JIT Scaling策略。我们还用摩尔(er)线程(cheng)GPU计(ji)算卡做了Smooth SwiGLU论文的复现(xian),我们发现(xian),通(tong)过Smooth SwiGLU可以有效降低outlier的影响。
今天我给(ji)大家汇报的内(nei)容(rong)就是这些,谢谢。