ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

AI芯片架构深度解析:从GPU到晶圆级芯片的设计取舍与趋势

AI芯片架构深度解析:从GPU到晶圆级芯片的设计取舍与趋势 做AI基础设施这些年最常被问到的一个问题不是“哪个模型效果更好”而是“市面上这些AI芯片到底差在哪”。这问题背后藏着一个转变过去选服务器大家看CPU核数和内存大小现在组算力集群越来越多人在问内存带宽、互联拓扑、编译器支持。跑分数字只是第一层真正决定项目落地时顺不顺利的是芯片架构和你的工作负载匹配不匹配。这篇文章想从架构逻辑出发把NVIDIA、Google TPU、AMD、Cerebras、AWS Trainium、Groq这几条路线放在一起拆开看聊聊它们各自的设计取舍也聊聊这些取舍背后能看出的趋势。1. 算力数字只是冰山一角带宽、互联与真实利用率的三角博弈1.1 为什么峰值算力高不代表跑得快很多人对比AI芯片第一眼看的就是TFLOPS。NVIDIA H100的FP16密集算力大约989 TFLOPSGroq的FP16算力约750 TFLOPS单看数字都吓人。但真正把模型放到集群里跑起来你会发现峰值算力接近的两款芯片实际吞吐可能差出一倍甚至更多。问题不在峰值而在三个容易被忽略的维度内存带宽、数据互连、实际利用率。Transformer的计算过程本质上是大规模矩阵乘法叠加非线性激活。以一个大语言模型为例每次前向传播都要反复读写权重参数加载一层就要把几十GB的权重搬进计算单元。这时候内存带宽决定了一切。我给一个直观对比H100配备HBM3带宽大约3.35TB/s听起来非常快但当你跑一个几百B参数的模型权重加上KV Cache每秒钟产生的搬移量是数十GB如果带宽跟不上计算核心就只能空转等数据。这就像工厂里流水线工人速度再快传送带送不过来料整体产出还是上不去。所以我现在评估一块加速卡不会先看那张TFLOPS表格而是先翻它的内存带宽、片上存储容量、访存策略和支持的精度组合。算力是峰值能力而数据能不能及时送到计算单元才是真实性能的关键。1.2 数据搬运成本从HBM到片上SRAM的取舍AI芯片发展历史上有一个关键转变计算单元变得越来越便宜但数据搬运的功耗和延迟居高不下。HBM高带宽内存就是为了缓解这个瓶颈出现的它通过堆叠DRAM die和宽接口提供高带宽代价是制造工艺复杂、成本高、功耗也不低。即便如此HBM的带宽依然赶不上计算核心的消耗速度。在这种背景下Cerebras和Groq选择了一条反直觉的路把大量SRAM直接放到芯片上。SRAM速度极快但容量小、贵、占面积。Cerebras的WSE-3有44GB片上SRAMGroq单卡有230MB左右SRAM。对比HBM动不动几十GB甚至上百GB的容量这些SRAM看起来小得可怜但它们的片上带宽可以达到每秒PB级别这个量级是HBM完全够不着的。这其实就是架构路线分歧的本质你是愿意忍受外部存储的数据搬运延迟还是想办法把数据尽量都放到计算单元旁边让编译器精确安排好存取顺序。前者是通用路线后者是激进定制路线各有各的代价后面章节会展开讲。1.3 真实利用率硬件架构与算法形态是否匹配还有一个反直觉的点很多加速卡在跑实际模型时利用率并不高。GPU里的CUDA core适合大规模并行计算但Transformer里有一些操作没法完全榨干硬件比如针对不同样本的padding、多专家路由、KV Cache的查询更新这些操作要么有大量数据依赖要么是访存密集型而非计算密集型GPU的并行度优势发挥不出来。Google TPU改用脉动阵列做矩阵乘法效率比通用GPU高但它同样有利用率问题——只有当实际矩阵的形状和脉动阵列的规模匹配时效率才会高。如果矩阵大小不符合阵列尺寸就会有很多计算单元闲着。这也是为什么各家都在做编译器层面的算子优化和tile切分目的就是让实际计算的数据块大小与硬件的计算阵列对齐。所谓“软硬协同”在架构层面就是这个意思。2. NVIDIA的通用生态护城河GPU、张量核心与NVLink的协同2.1 从图形卡到AI基建GPU的张量演进逻辑NVIDIA最早是造图形卡的。GPU的SIMT架构天然适合大量独立线程并行计算图形渲染里的矩阵运算、向量运算非常多这和深度学习的需求意外地重合。但真正的转折点是2006年CUDA的推出它让GPU从“只能做图形”变成了“可编程的通用并行计算设备”。2017年的Volta架构加入Tensor Core专门做混合精度矩阵乘加运算这才是AI专用加速的真正开始。从V100到A100再到H100Tensor Core的演进逻辑很清晰降低精度、提升吞吐。V100支持FP16A100加入TF32和稀疏化支持H100的Transformer Engine引入FP8专门针对Transformer做了动态缩放。到了Blackwell架构开始支持FP4同时把两个die用高带宽低延迟桥接封装在一起让单卡在物理上变成“两张卡的组合”。这些迭代表面上是数字增长实际上全是围绕一个核心问题来的如何让矩阵乘法这个最基本的AI原语跑得更快、效率更高。这里有一个关键认知NVIDIA并未把GPU做成一个彻底的ASIC而是保留了通用并行计算能力。它可以跑CNN、RNN、Transformer、Embedding、推荐系统也能跑科学计算和图形渲染。这种通用性带来了使用范围的广度也让它的单卡效率在某些专用场景里不如TPU或Groq但部署的灵活性是专用芯片比不了的。2.2 NVLink与NVSwitch把多张GPU拼成一台逻辑主机单卡算力再强也装不下现在动辄上千亿参数的模型。NVIDIA的解法是NVLink和NVSwitch。NVLink是GPU之间的高速点对点互连H100的NVLink带宽达到900GB/s是PCIe Gen5带宽的好几倍。NVSwitch则像一台交换矩阵让单节点内任意两张GPU都能以接近本地内存的速度访问对方显存。加上统一内存和NVLink SHARP网络计算能力整台8卡服务器在逻辑上可以看成一台超大显存的计算机。到了GB200 NVL72这代NVIDIA把72张GPU组成一个机架级系统内部用铜缆实现高带宽低功耗互连外部再接光模块组成大规模集群。这种“机架即计算机”的思路本质上是在解决模型并行带来的通信开销问题。训练千亿甚至万亿参数的模型时张量并行、流水线并行、数据并行都要频繁交换数据互连带宽不够整个集群的效率会被通信拖死。NVIDIA在互联上的投入实际效果比单纯提升单卡算力更明显。2.3 护城河不在芯片本身而在CUDA软件生态硬件架构可以堆料但软件生态很难复制。NVIDIA真正强大的护城河是CUDA生态包括CUDA库、cuDNN、cuBLAS、TensorRT、NCCL以及PyTorch、TensorFlow、JAX这些框架对CUDA的原生适配。你在NVIDIA卡上训练模型从装驱动到跑通模型通常不需要改任何代码但换到别的平台第一件事可能是去找算子是否支持、库能不能编译、调试工具好不好用。我实际迁移过一些模型到非NVIDIA平台感受非常深。一个在CUDA上运行正常的PyTorch训练脚本换到ROCm上可能因为某个算子没有优化而直接报错。不是这个平台计算能力不行而是生态的成熟度不够。对生产环境来说跑分高但算子不稳定远比跑分略低但稳定可靠的方案更让人头疼。所以NVIDIA的领先不仅是硬件领先更是“硬件编译器算子库分布式通信库调试工具”这套全家桶的领先。3. Google TPU与专用化路线脉动阵列、光互联与够用数学3.1 脉动阵列到底解决了什么问题Google做TPU的初衷很直接自己在内部跑搜索、推荐、广告、翻译GPU的功耗太高部署成本太贵希望能用更便宜的ASIC把大模型推理和训练成本压下来。TPU的核心计算单元是脉动阵列Systolic Array这名字听起来抽象原理其实不难数据在计算单元阵列里像流水线一样“流动”同一个数据可以被多个计算单元重复使用每次计算后的结果再传给下一个相邻单元。这样做最大的好处是大大减少了数据从寄存器或内存重复读取的次数功耗和延迟都显著降低。对于矩阵乘法这种具有极高数据复用性的运算脉动阵列的能效比非常高。但它有一个天然缺陷这个阵列的结构是固定的一旦矩阵大小和阵列尺寸不匹配或者计算逻辑不是标准的矩阵乘法效率就会下降。比如某些注意力计算、动态路由、异常分支逻辑在脉动阵列上就跑不出理想性能。这就是专芯专用的代价——在特定负载上极致高效在范围外就有些力不从心。3.2 TPU的集群形态OCS光交换与动态拓扑TPU single-chip再强训练大模型也得靠集群。这一代Google特别值得关注的是TPU v4在Pod层面引入的光电路交换机OCS。OCS可以实现物理层面的光路动态切换让数据中心里的TPU按需组成不同的拓扑而不是像传统集群那样固定成mesh或torus。这意味着当某个芯片或某条链路出现故障时光交换可以快速绕过故障域提高整个集群的可用性。超大规模集群训练里故障是常态而不是例外。几千张卡同时跑几个月必然有卡会坏或者掉线。Google的设计思路是把“故障恢复”当成一个基础能力来做OCS只是其中一环配合上层的checkpoint和任务重排机制整个TPU Pod在较长周期里依然能保持较高有效训练时间。这一点对任何想做万卡集群的团队都有借鉴意义大模型训练拼的不是单卡峰值而是集群整体有效算力。3.3 TPU的边界与第三方使用的现实问题TPU在Google内部是绝对的主力它跑自家的Gemini、搜索排序、YouTube推荐效率和成本都优于通用GPU。但对第三方用户来说情况就复杂一些。TPU基本只能通过Google Cloud使用而且把代码从CUDA迁移到TPU需要重写不少部分哪怕有XLA编译器做中间层也不可能做到无缝迁移。加上Google Cloud的市场覆盖远不如AWS和Azure广泛TPU对很多团队来说只是一个参照物而不是可选的部署平台。这暴露了专用ASIC路线的一个关键限制专用化的收益只有在负载足够固定、规模足够大时才能兑现。如果你今天跑BERT明天跑MLP后天跑某个新出的多模态结构专用芯片不见得比通用GPU更划算。Google能靠TPU“一招鲜”是因为它的业务负载高度集中且量级极大换到另一个公司同样的设计逻辑可能完全不成立。4. 反主流答案Cerebras的晶圆级赌注与Groq的SRAM激进立场4.1 Cerebras WSE把整片晶圆做成一颗芯片Cerebras可能是这六家里最“疯狂”的。它没有走“众多小芯片通过互连组成系统”的老路而是直接把一整片300mm晶圆做为一颗芯片叫WSEWafer Scale Engine。WSE-3有超过40万个计算核心4万亿晶体管44GB片上SRAM。因为所有核心都在同一片晶圆上核心之间的通信变成了片上通信省掉了芯片外互连的延迟和功耗。这种做法要解决的最核心难题是良率。一片晶圆在生产过程中难免有缺陷A家通过切割成小芯片来提升有效产出Cerebras则采用冗余设计在晶圆上布置大量备用核心通过测试把缺陷核心和周边电路屏蔽掉再经过编译器把用户模型映射到剩下的健康核心上。这个思路让晶圆级芯片走向量产成为可能但也决定了Cerebras的软件栈必须高度定制神经网络是由编译器“铺”到整个阵列上的而不是像CUDA那样运行一段动态调度代码。Cerebras的适用场景很明确超大模型、稠密计算、高带宽需求。比如大模型预训练、科学计算模拟、血液动力学仿真等。它的局限也很清晰如果模型大到超过片上SRAM必须把部分数据搬到外部存储这时候“免互连”的优势会被拖回现实性能大幅下降。所以它更适合“模型刚好能塞进片上存储”的场景而不是什么都能跑的通用设备。4.2 Groq LPU用SRAM做显存的确定性推理引擎Groq走的是和Cerebras类似但更聚焦的方向它把SRAM当作“显存”来用整个LPU里没有HBM所有数据都由编译器提前安排到SRAM中。由于SRAM的速度远高于HBM并且Groq采用了一种确定性的执行模型——不需要动态缓存一致性、不需要分支预测、不需要乱序执行因此每一条指令的执行时间都是可预测的。这种设计的好处是极低且稳定的推理延迟。同一个LLM在Groq上跑小batch推理时生成第一个token的延迟可以远低于同代GPU而且延迟波动极小这对交互式应用是非常重要的。更重要的是因为执行是确定性的开发和测试得到的性能数据和线上基本一致不会出现“压测挺好上线就抖”的情况。Groq对生产环境的友好程度很高。但代价也很实在大模型放不进单卡SRAM就得切分切分后的通信调度全部靠编译器完成编译器好则一切好编译器不支持的模型就很痛苦。它不是所有模型都能“开箱即用”。4.3 激进路线的共同代价编译器、生态与可编程性Cerebras和Groq有个共同点都走“编译器优先”路线。硬件本身不是让用户直接编程的而是将模型编译后映射到特定结构上。和NVIDIA GPU相比这种方案在性能和功耗上具备优势但也带来一个软肋——开发者生态。CUDA已经积累了二十年的库、工具、第三方框架和工程师经验而Cerebras的软件栈需要针对每类负载做适配Groq也经常被质疑“好但不好用”。我在实践中看到的规律是一个芯片平台能做到什么水平不仅取决于硬件架构更取决于它软件栈的迭代速度。激进架构可以拿到局部战场的胜利比如极致推理延迟、超高能效比但要在主流的AI训练和部署市场站住脚编译器、算子库、框架适配、监控调试这些“脏活累活”一样都少不了。5. AMD和AWS Trainium堆料、绑定场景与软件栈破局的现实5.1 AMD CDNA的堆料路线超大显存与Infinity FabricAMD这几年的策略非常清晰在单卡规格上做极致堆料。MI300X直接给了192GB HBM3显存容量比H100高了近一倍单卡就能装下更大的模型这对推理场景特别有吸引力——尺寸够大可以减少模型切分从而降低通信开销。AMD在架构上采用Chiplet设计把多个计算die和IO die通过Infinity Fabric封装在一起这种方式在成本和灵活性上有优势但互联带宽和一致性管理也要靠软件来兜底。AMD真正的短板不在硬件而在ROCm软件栈。虽然这几年兼容性提升明显但与CUDA生态相比仍有明显的差距。我遇到过的实际问题包括某个PyTorch算子只有CUDA实现、编译自定义op时ROCm版本对不上、多卡通信库的性能不稳定。这些是真实生产环境里躲不开的坑。AMD也在试图通过ZLUDA这类CUDA兼容层降低迁移门槛但底层指令集和硬件架构的差异决定了兼容层只能解决一部分问题不能解决所有问题。5.2 AWS Trainium为云上预训练定制的专用ASICAWS Trainium走了一条更务实的路线作为云厂商它不需要做一款通用芯片卖给所有人只需要让自家云上的客户用更低的成本完成任务。Trainium就是从这个逻辑生长出来的。第二代TrainiumTrainium2专门针对大规模Transformer训练进行了优化配合AWS自研的UltraScale互联和Nitro虚拟化卸载在预训练场景下展现出不错的性价比。Trainium比较容易被低估的地方在于它不只是芯片而是和Amazon Sagemaker、EC2 UltraCluster、Neuron编译器绑定的整体方案。对在AWS上长期做训练的用户来说Trainium的账很好算单位训练成本是下降的。而且因为封装在云服务里用户不需要关心物理机的运维和故障这对很多团队是实打实的吸引力。但风险也很明显这套栈绑定AWS生态从一个云迁移到另一个云成本非常高。5.3 软件生态才是真正的决胜战场AMD和AWS两个追赶者的核心问题不是芯片设计能力而是软件生态的完备度。CUDA生态的优势不是某一个组件特别强而是工程体系特别完整从底层驱动到框架层适配到分布式通信到性能剖析工具一应俱全。你要在新平台上跑好一个先进模型绝不是把算子翻译一遍那么简单而是要重做一遍编译优化、分布式通信调优、故障定位这些工作。这也是为什么各家都在疯狂招编译器工程师和内核开发工程师。硬件架构决定理论性能上限而编译器决定实际性能能兑现多少。如果你要评估一个非NVIDIA平台是否适合自己我建议先不看算力数字而是拿一个自己实际要跑的模型在目标平台上完整跑一遍记录三个数据编译是否顺利、算子是否全部支持、分布式扩展性如何。这三个数据比任何跑分都更能说明问题。6. 架构演进的三个风向标训练推理分流、集群互联与编译器主导权6.1 训练芯片与推理芯片正在分开演进过去很长一段时间NVIDIA一张卡既干训练又干推理大家也习惯了这种通用性。但Groq这类厂商的出现以及NVIDIA自己推出L4、L20等推理卡说明市场正在分化训练需要高算力、高精度、大显存推理需要低延迟、高吞吐、低功耗。训练芯片和推理芯片的设计逻辑完全不同强行用同一张卡兼顾两头结果往往两头都不极致。推理场景里延迟敏感的应用越来越看重确定性。Groq的SRAM路线之所以在推理市场受到关注本质上就是因为它的执行过程可预测、延迟低、波动小。我认为未来两到三年推理加速的市场会明显向更加专用化的方向走训练市场则继续由通用GPU和定制ASIC两派竞争。6.2 万卡集群时代光互连、超以太网与“机架即计算机”大模型已经不可能靠单卡训练算力基础设施正在以“集群”为单位重新设计。NVIDIA的GB200 NVL72把72张GPU做成一个机架级逻辑单元Google TPU用OCS光交换动态重构拓扑AWS用UltraScale互联构建超大规模集群。这个方向的本质是在解决数据和模型并行时海量通信的问题。带宽、时延、拓扑灵活性这三个指标正在成为比单卡算力更重要的核心竞争力。同时超以太网Ultra Ethernet这类互联标准的兴起也值得关注。它试图用更开放、更兼容的方式替代专有互联方案降低大规模集群的建设门槛。对用户来说互联层的选择越来越影响TCO和训练效率选计算平台时必须把互联带宽和拓扑放在和算力同等重要的位置。6.3 软硬一体与编译器AI芯片的灵魂所在最后回到一个最本质的判断未来的AI芯片竞争芯片硬件之外的部分可能更决定成败。NVIDIA有CUDA、TritonGoogle有XLAAWS有NeuronCerebras和Groq各有自己的编译器栈。所谓AI芯片实质上已经不是一颗单独的芯片而是“芯片编译器算子库集群管理”的完整体系。衡量一个AI芯片值不值得用可能要反过来看它适配哪些框架它的编译器成熟度如何它的分布式通信库支持哪些拓扑。这个判断也直接影响我们平时做技术选型。买卡不只看芯片本身还要看生态和工具链。对自己团队来说提前在某个新平台上积累经验和优化工具可能会比单纯追最新的算力参数更能带来长期回报。我自己在实际选型和部署过程中的体会是AI芯片领域的“架构之争”短期内不会出现一家独大的结局。NVIDIA靠生态稳住基本盘TPU在Google内部继续扮演钢铁心脏Cerebras和Groq在细分场景里证明激进设计的价值AMD和AWS则用不同的方式寻找存在的理由。对做AI基础设施的人来说最重要的能力不是记住跑分而是能判断自己的workload是哪一类、需要什么样的带宽和互连、软件栈能不能支撑。参数表可以帮你做初筛但在真正决定大规模部署之前拿自己的模型到目标平台上去跑一遍才是最靠谱的验证方式。
返回列表