开头
做技术选型的人,这两年怕是都绕不开AI芯片这个话题。我也一样,从关注GPU参数,到研究ASIC的能效比,再到盘点各家生态的成熟度,这轮调研断断续续做了将近两个月。最直观的感受是:AI芯片已经不是一个单纯的硬件概念了,它是算力、带宽、互联、软件栈四位一体的综合体,单看任何一项都会被带偏。
这篇文章是我这次调研的完整记录,覆盖芯片分类、核心参数、主流产品线、软件生态、场景选型以及实际选型中踩过的坑。适合三类人看:一是要给团队做AI算力选型的技术负责人,二是对芯片行业感兴趣、想搞明白各家产品差异的开发者,三是做投资或行业分析、需要快速建立技术坐标系的朋友。内容尽量说人话,遇到底层原理我也会用生活化的类比拆开讲,保证没有AI基础也能跟上节奏。
1. 先搞清楚AI芯片到底是什么
1.1 一个容易混淆的定义边界
入行这些年,我发现大家对AI芯片的定义差异很大。有人觉得只要带神经网络加速单元的都算AI芯片,有人觉得只有能跑大模型训练的才算。这里我建议按照AI计算链路来划分,会更清晰一些。
AI芯片本质上是针对张量计算做了特殊设计的处理器。张量计算是什么?说白了就是大规模的矩阵乘法,外加一部分激活、归一化、池化这类神经网络标配操作。通用CPU也能做,但效率很低——就好比你让一个全能型的大厨专门去削土豆皮,他虽然会,但成本和速度都顶不住。AI芯片就是那个专门削土豆皮的刀,形状专门优化过,批量处理特别快。
按这个逻辑,目前市面上的AI芯片大致分四类:GPU、FPGA、ASIC、NPU(这里NPU作为ASIC的一种典型形态单独拎出来讲)。GPU是通用性最强的加速器,什么AI模型都能跑,但现在越来越多专用化的设计;FPGA是半定制电路,逻辑可以现场重构,好处是灵活,坏处是做矩阵乘法的能效比不如硬核ASIC;ASIC是专用芯片,电路逻辑在流片时就固定了,能效最高但灵活性最差;NPU是面向神经网络指令集深度定制的ASIC,如今手机SoC里基本都有一个。
1.2 训练芯片和推理芯片的两套逻辑
另一个容易踩坑的区分维度是训练和推理。很多第一次接触AI芯片的朋友以为训练和推理用的是同一种芯片,或者以为推理芯片比训练芯片“小一号”而已。实际上这两个场景对芯片的要求完全不同。
训练阶段的特点是数据量巨大、模型迭代频繁,芯片需要支持高精度的浮点计算,比如FP32用来做精度兜底,FP16/BF16用来做混合精度加速,同时需要极高的显存带宽来喂饱计算单元。推理阶段模型参数已经固定,芯片可以做大量的权重裁剪和量化优化,用INT8甚至更低精度来换吞吐量,对显存带宽的要求也相对低一些,但更看重延迟和单位功耗的吞吐能力。
这就是为什么你会看到很多芯片厂商把产品线分成两条:一条叫做训练卡,一条叫做推理卡。两者体系、规格、最优场景完全不一样,选型时如果混为一谈,后面部署上线的时候多半要返工。我见过有人拿训练卡硬做高并发推理服务,结果功耗打满、成本报表直接惨不忍睹。
1.3 云端和端侧的分水岭
再看应用位置,AI芯片还分成云端芯片和端侧芯片。云端芯片放在数据中心,不担心功耗上限(也可以说很担心,但驱动的核心动力是更强大的绝对算力),通过PCIe或高速网络对外提供服务;端侧芯片嵌入手机、汽车、摄像头、机器人这些设备里,面积、功耗、成本都被卡得非常死,能抠出一瓦是一瓦。
这次调研我最大的感受是:端侧AI芯片的权重正在快速上升。以前大家的注意力全在云端大模型训练卡上,但现在很多推理任务已经压到端侧去做了,因为省带宽、省成本、时延低。比如手机上跑的小模型翻译、汽车上的车道偏移预警,都是端侧芯片的活。端侧比拼的已经不是单纯的TOPS数字了,而是一整套“算法压缩+异构调度”的综合能力。
2. 核心参数怎么读:别被纸面性能骗了
2.1 算力单位里的门道
看AI芯片配置单,第一行一定是算力,单位有TOPS(每秒万亿次运算)、TFLOPS(每秒万亿次浮点运算)。这两个单位经常混着出现,但本质有区别:TOPS通常对应整数运算(INT8),TFLOPS对应浮点运算(FP16/FP32)。
同一个芯片,算力数值会跟着计算精度变。比如一张卡标称FP16算力500 TFLOPS,INT8算力可能标到1000 TOPS,FP32可能只有250 TFLOPS。宣传册上通常会挑最大那个数字放在显眼位置,这不算造假,但确实容易误导。我的习惯是把同精度、同批次的数字单独列出来比,不然就等于拿苹果比橘子。
还有一点必须留意:很多芯片标的是稀疏算力,也就是利用神经网络里的零权重跳过计算得来的理论上限。稀疏计算需要硬件和软件协同支持,激活稀疏度的损失率如果不达标,纸面性能就要再打个折扣。选型的时候我一般会要求厂商提供稠密算力和稀疏算力两个数字,然后以稠密算力为基准做容量规划。
2.2 带宽和显存:决定实际效率的另一条腿
只看算力不看带宽,是外行最容易犯的错。AI计算是典型的访存密集类型,数据要在显存和计算单元之间持续搬运,如果带宽不够,算力再高也只能干等着。这个原理和装货一样:吞吐量再大的传送带,如果供料跟不上,也得空转。
显存有两个指标:容量和带宽。容量决定你能放下多大的模型,带宽决定每个时钟周期能喂多少数据给计算核心。举个例子,一个70B参数的大模型,即使量化到INT8,光权重就需要约70GB,显存低于80GB基本没法跑,哪怕勉强塞下,KV Cache和激活值都没地方放。所以大模型训练和推理,大显存是硬门槛。
带宽这个指标经常被人忽略。HBM(高带宽显存)普及以后,主流AI芯片的带宽都干到3TB/s以上了,相比前几年的GDDR显存,提升是数量级的。如果你拿一张大显存但带宽小的卡跑大模型,光是权重加载阶段你就会等到怀疑人生。
2.3 互联设计:单卡再强也要看怎么连
单卡性能只是基础,AI芯片真正的硬仗用在大规模集群场景。这时候更关键的参数是互联方式。AI计算是个高度协作的过程,千卡集群里,一张卡算完自己那一块,马上要把结果传给下一张卡接着算,传输速度直接影响整个集群的扩展效率。
NVIDIA的招牌互联技术叫NVLink和NVSwitch,多卡之间的通信带宽远高于普通PCIe。AMD有Infinity Fabric,Google有TPU的ICI互联。国内厂商也有各自的高速互连方案。关于互联,我的建议是别只看单卡规格,要看支持多少卡组网、拓扑是什么样,对端到端时延和成本收益做综合测算。很多纸上谈兵的方案,一到万卡集群就掉链子,原因之一就是低估了互联复杂度。
2.4 制程和功耗:物理设计的现实约束
先进制程的价值不用多说,直接从速度和功耗层面影响芯片能力。5nm、4nm这些数字越小,晶体管密度越高,同功耗下性能越强。但也要注意,先进制程的边际成本在快速增长,所以近两年Chiplet设计特别火,思路是把芯片拆成多个小芯粒,用先进封装拼起来。
这种设计的逻辑说穿了就是省钱和提良率。一个大芯片在晶圆上只要一个缺陷就可能报废,但拆成四个小芯粒之后,坏一个换一个,整体成本反而可控。AMD的MI300系列、Intel的Ponte Vecchio都是典型的多芯粒方案。
功耗这块容易被忽略的是热设计功耗(TDP)和实际功耗的差距。有些芯片标称TDP 700W,但跑满负载的时候瞬时功耗可能冲到800W往上。数据中心配套的供电和散热不只是买几个高功率电源那么简单,配电链路、机柜级别散热方案全都得跟着升级。我调研的时候专门查了一整圈,发现很多集群项目栽在功耗规划上——芯片买得起,电费和改造费才是后面真正的隐形账单。
3. 主流AI芯片阵营:哪条路线更值得押注
3.1 NVIDIA:从CUDA帝国到系统级碾压
聊AI芯片不谈NVIDIA不太现实。自大模型爆发以来,NVIDIA几乎成了AI算力的代名词,A100、H100、H200、B200这一连串产品迭代,节奏快得让人喘不过气。
NVIDIA的核心壁垒不只是硬件,更是CUDA生态。CUDA发展了十几年,沉淀了庞大的开发者社区、现成的算法库、各种兼容的工具链。很多团队换不了卡就是因为代码已经深度绑在CUDA上了,换平台等于所有工程都重来一遍。这是典型的“生态锁死”,不是单靠硬件性能就能撼动的。
从产品上看,N卡在互联、显存、算子效率、分布式框架兼容性上都做得均衡,综合体验确实好。但它的缺点也明显:贵、交期长、功耗高。如果不是非CUDA不可,或者预算吃紧,完全有理由认真看看其他方案。
由于众所周知的各种原因,国内能拿到的NVIDIA产品线并不齐全,这也给国产AI芯片留下了很大的市场空间。
3.2 AMD:ROCm生态下最值得关注的追赶者
AMD的MI300系列是这两年挑战NVIDIA最积极的方案。MI300X主打大显存路线,192GB HBM3,带宽高,单卡跑大模型显存比N卡更宽裕,这对超长上下文的推理场景特别有吸引力。
但制肘仍然在软件。AMD的ROCm经过多轮迭代,如今已经能跑PyTorch和主流框架了,只是论顺手程度和CUDA仍有明显差距。网上大量现成代码和工具都是按CUDA写的,迁移到ROCm平台可能碰到各种兼容性坑,得靠团队自己填。
我的建议是:如果团队有比较强的工程能力,愿意掏时间做底层适配,MI300系列是性价比很不错的选项;如果团队整体经验偏应用层、不太想折腾底层基础设施,那还是要认真评估迁移成本。
3.3 Google TPU:自用和云上的一招鲜
Google的TPU是一朵奇葩,性能很强,而且给到第三代TPU v3、第四代TPU v4、特别是TPU v5p之后,纸面算力、互联带宽、能效比都很有竞争力。
但它不对外销售裸卡,只能通过Google Cloud以云服务的形式租用。如果你想在自建机房部署TPU,基本上没戏。这种模式注定了TPU的生态是封闭的,只对特定人群有意义——比如本来就在Google Cloud上跑业务的团队,或者想要一个极度成熟的全托管AI训练平台的团队。
在调研各家芯片的时候,我看了一个有意思的数据:Google很多内部最强的模型就是跑在TPU上的,这说明TPU的上限绝对不算低。它的问题不是能力,而是获取难度和生态锁定。
3.4 国产AI芯片:技术发力与生态补课
国产AI芯片在近几年的迭代速度非常快,尤其是面向AI训练和推理的高端产品,已经有不少能和高阶方案对标。
华为昇腾系列是比较有代表性的国产AI训练芯片,基于达芬奇架构,算力指标和国际一线产品差距越来越小,更重要的是昇腾有自己的CANN软件栈和MindSpore框架,整个体系非常完整。寒武纪、燧原、海光等厂商也有各自的AI芯片产品和软件方案,面向训练、推理、智算中心等不同场景。
不过国产AI芯片目前最需要补的还是生态。软件工具链、算子库、开发者社区的丰富度和成熟度,以及和各主流深度学习框架的深度适配,都在加速构建中,但相比发展了多年的CUDA体系仍有差距。毕竟AI芯片的竞争从来不是芯片本身的竞争,而是“芯片+编译器+框架+社区”的生态战争。
对一个企业用户来说,国产AI芯片最直观的优势是响应快、交付灵活、本地化支持强,遇到技术问题可以随时对接工程师。预算允许的情况下,拿小规模算力先跑通技术栈,再逐步扩大规模,是一条比较稳妥的路。
4. 软件生态:决定“能用”和“好用”的那条关键分界线
4.1 CUDA为什么能成为事实标准
很多新入行的朋友不理解,为什么GPU卡都这么贵了,大家还非NVIDIA不可?答案就在CUDA这套东西里。
CUDA不只是编程模型,它周边还围绕着一整层库:cuBLAS(矩阵运算)、cuDNN(深度神经网络)、NCCL(多卡通信),往上又接着PyTorch、TensorFlow这些框架。因为这个生态太成熟,全球数不清的工程师、研究者、企业都在围绕它开发和积累代码,代码和生态彼此强化,螺旋上升,后来者想打破这个循环是非常艰难的。
用个不严谨但贴切的比喻:CUDA之于AI,就像Windows之于PC。你当然可以选择Linux,甚至也可以用macOS,但当你需要一份文件、一个软件时,最先想到的往往是Windows版。
4.2 各家软件栈的真实水平
为了这次调研,我认真看过几套主流软件栈。Intel有oneAPI,目标是跨厂商、跨架构的统一编程模型,想法很好,但实际渗透率还不高。AMD的ROCm这几年进步明显,HIP可以用起来比较平滑地把CUDA代码迁移过来,社区也在逐渐壮大。Google的XLA编译器配合TPU和GPU使用体验属于“天作之合”,但只限自家环境。
国产芯片的软件栈每家都在快速迭代。昇腾CANN的算子库覆盖度、编译器性能优化方面都投入很大,和MindSpore的咬合也比较紧密。寒武纪则有自己的一套Neuware平台。整体来说,国产软件栈正在从“能跑”往“好跑”的方向走,但生态积累不是一朝一夕能突破的,作为用户要有清醒预期。
4.3 从框架接驳角度评估生态成熟度
一个特别实用的评估方法是看“芯片和主流框架的兼容深度”。以PyTorch为例,某芯片只要会跑一个简单CNN,这不叫兼容;要能原生支持torch.compile、自动混合精度、分布式数据并行、自定义算子注册,这些才叫深度兼容。
我调研时通常会拉一个清单:它能否直接pip安装框架?能否无需魔改代码跑通经典模型(如LLaMA系列、Stable Diffusion)?分布式训练脚本是否要额外改参数?多卡通信库能否自动选路?如果这些问题的答案都是“能”,那这套芯片的软件生态基本就算合格了。
这个调研方法分享给大家,省得到时芯片买回来,模型跑不起来,才发现全是工程债。
5. 不同应用场景的芯片选型逻辑
5.1 大模型训练:集群扩展能力是命门
大模型训练对芯片的要求是最苛刻的。它不是一张卡能解决的事,而是一个集群的事。
模型动辄几千亿参数,内存放不下,就得做模型并行、流水并行、数据并行这些分布式策略。这些策略落地都依赖芯片间高速互联。比如千亿级模型训练,卡间通信的带宽太差,整个集群的利用率会被拖到惨不忍睹,算力冲高但效率极低。
所以训练场景选型,第一优先级看互联和显存,第二看FP16/BF16算力,第三看框架分布式工具的深度集成能力。至于单卡算力,是必要条件,但不是充分条件。我看到很多调研报告把单卡算力排第一位,这是个典型的本末倒置。
PowerPoint worshi。训练集群的供电、散热、机房网络改造都需要提前规划。一台高密度AI服务器单机功耗轻松过万瓦,风冷基本撑不住,液冷方案要提前上。这笔账如果不算清,后面就难了。
5.2 大模型推理:延迟与吞吐的极致博弈
推理场景的核心矛盾是延迟和吞吐。在线对话类应用,用户等不起,单次推理时延要控制在几百毫秒以内;离线批量推理则更看重吞吐,即单位时间内能处理多少请求。
这就要用到张量并行、KV Cache、连续批处理这些优化手段。这些手段对芯片的要求很不一样:KV Cache要吃显存容量和带宽,连续批处理考验算子的稳定性和调度能力,张量并行要求卡间低时延通信。选推理芯片时别贪峰值算力,要实测真实并发下每Token生成成本。
量化精度也是推理芯片的重要考量。好芯片对INT8、FP8这类低精度推理支持得越好,单位成本能压得越低。选型时我会专门看官方白皮书里的量化支持表格,能覆盖的主流模型越多越好。
5.3 自动驾驶和端侧:能效比压倒一切
到了端侧,芯片的玩法又变了。车上、手机上、摄像机里,系统对芯片的功耗和面积非常敏感,续航和散热都是硬约束。
端侧芯片现在拼的是每瓦算力(TOPS/W)和内存带宽效率,而不是绝对算力。一个号称1000 TOPS的车载芯片,如果功耗压不下来,在车里根本待不住,早晚要降级使用。
同时端侧AI芯片越来越强调“软硬一体”,芯片要和算法模型、编译器、量化工具一起交付。很多算法团队会针对特定芯片做模型剪枝和量化对齐,把精度损失压到最低。这方面做得好的厂商,往往不是单纯卖芯片,而是卖一整套端侧AI解决方案。
5.4 成本和交付周期:选型里无法回避的现实
最后说一个技术之外但极其关键的因素:钱和货期。
AI芯片市场供需波动很大。某些时期高端训练卡一卡难求,交期排到几个月之后,对有紧急上线需求的团队来说就是致命风险。我调研中就听到过一个案例:某团队因为芯片迟迟不发货,最后只能高价租云GPU顶着,预算直接超了几倍。
所以选型不能只看性能,还要评估多家供应链风险、可替代性、云上是否有同规格算力可以弹性支撑。成熟的团队通常会做“主用方案+备用方案”双轨规划,以防单一供应出问题。
6. 调研中踩过的坑和排查经验
6.1 规格书噱头太多,实测才是硬道理
整个调研下来,我最想提醒的就是:规格书全是数字游戏,只有实测数据才会讲真话。
我们专门做过一组对照实验,把NVIDIA、AMD、国产几款芯片放在同一个模型、同一批数据、同一个框架版本下跑分。结果很有趣:纸面算力最高的不是跑得最快的,因为各自编译器对不同模型的优化程度不一样。有的芯片跑CNN很强,一碰到注意力机制多的模型,算子库不友好,性能就掉得很厉害。
所以强烈建议选型阶段就申请测试机,拿自己真实业务里的模型跑一遍,跑完看算子耗时、内存占用、吞吐曲线,用这些数据选型,预算下来满嘴都是泪。
6.2 参数对齐:数字一定要站在同一条起跑线上
对比不同芯片时,最容易出的偏差是精度不对齐。A芯片标称1000 TOPS是INT8稀疏算力,B芯片标称800 TFLOPS是FP16稠密算力,两者根本没法直接比。要把所有厂家拉到同一精度、同一稠密稀疏口径下,出来的对比才成立。
显存也是同样问题。有的厂商把容量、带宽、类型都写得清清楚楚,有的则只给一个“XX GB HBM”,对带宽、容量连锁反应避而不谈。技术选型的人要是只看容量选芯片,后续模型跑不动时就会很被动。
6.3 集群环境模拟:单卡容易,组网不易
如果目标是部署一个集群,测试就不能停留在单卡。我在调研中发现,单卡跑分再稳,组网以后完全变样的情况很常见。多卡通信时延、集合通信库的调优程度、IB或者RoCE网络配置,每一样都会影响集群真实效率。
组网压测建议直接用Megatron-LM或DeepSpeed这类真实的分布式训练框架跑一次百亿到千亿级模型,而不是跑那种简单的单机多卡benchmark。真实模型才能暴露真实瓶颈,例如多机多卡通信是否吞吐塌陷、负载是否均衡、断点续训是否可靠。
6.4 调研资料从哪儿来
很多人问我去哪儿找高质量的AI芯片资料。我的顺序是:首选官方白皮书和性能评测文档,那里有最权威的定义和参数;其次看MLPerf这类第三方基准测试结果,竞品间对比相对公平;再参考大厂公开的落地案例和工程博客,那些往往藏着真实的坑和细节。社区讨论和短视频帮助不大,顶多当线索用。
看完资料之后,最好自己拉一张多维对比表,把算力、显存、带宽、互联、功耗、软件栈、价格、货期这些维度全放进去,逐项打分。这张表才是选型讨论的基石,不然开会时你一句我一句全是感觉,没法拍板。
结尾:一次调研后的几点心里话
这轮AI芯片调研做下来,我最大的体会是:没有最好的芯片,只有最适合自己场景和预算的方案。技术指标只是一个维度,生态、成本、供应链、交付周期,每个变量都可能改变最终结论。别迷信单一指标,也别迷信单家厂商的roadmap——用自己真实的模型去跑,用自己真实的规划去做预算,最后得出的答案才是靠谱的。
最后再分享一个小技巧:如果时间紧,可以按“先看互联和显存,再看软件生态,最后比算力”的顺序来筛选候选芯片。这个顺序能淘汰掉九成不合适的选项,剩下的再做深度实测,效率会高很多。希望这份调研记录能帮你们省掉一些弯路,也欢迎有实战经验的同行来交换看法。