AI Infra 从零开始为什么大模型时代“以GPU为中心”是唯一解从 CPU 到 GPU不只是一次硬件的更替更是一场计算范式的革命。引言一场静默的硬件革命在传统后台开发中我们早已习惯了“以 CPU 为中心”的思维模式。高并发、微服务、多线程这些是我们解决问题的核心武器。然而随着大模型的爆发这套方法论正在被颠覆。当第一次看到“生成一个 token 的耗时 模型参数大小 ÷ 显存带宽”这个公式时我意识到硬件设计的逻辑已经发生了根本性的改变。本文作为AI Infra 学习笔记的第一篇将深入剖析现代 GPU 硬件架构理解为什么 AI 时代必须“以 GPU 为中心”。一、为什么 GPU 成为 AI 的核心1.1 从“逻辑事务”到“高吞吐计算”传统基础设施以 CPU 为核心处理的是逻辑事务如 Web 服务、数据库操作瓶颈通常在于网络 I/O 和 CPU 核心数量。而 AI Infra 的核心任务变成了高吞吐的浮点计算——即大规模的矩阵乘法运算。CPU的一个核心就像一个全能教授什么问题都能解但培养成本高占用芯片面积大。GPU的一个核心像一个小学生只会做简单算术但可以请几千个小学生同时算总速度远超一位教授。深度学习的核心操作如全连接层、卷积层、循环神经网络RNN的变体其底层几乎都可以归结为大规模矩阵乘法和张量运算。举个例子一个简单的矩阵乘法 C A × B如果矩阵维度是1000x1000那么就需要进行10亿次乘加运算。这些运算的特点是计算模式相同每个输出元素的计算公式完全一样乘积累加。数据独立计算 C[0][0] 和 C[0][1] 所需的数据互不干扰可以并行执行。算术密度高相对于数据搬运算术操作本身很多。这正是GPU的用武之地。它的数千个核心可以同时独立计算 C 矩阵的不同元素实现天量的并行加速。这个大模型训练和推理的时代计算密度已经达到了传统 CPU 无法承受的程度。当大模型每次生成一个 token都需要读取全量的模型参数时计算和通信都必须“Offload”到 GPU 内完成CPU 则退居二线扮演起“数据搬运工”的角色。1.2 计算密度的量化分析让我们通过一个关键公式来理解这个问题生成一个 token 的耗时 ≈ 模型参数大小 ÷ 显存带宽为什么是这个公式原因在于大模型的推理过程是“访存密集”而非“计算密集”的。对于每单个 token 的处理需要对每个参数执行一次乘加运算这时ALU算术逻辑单元往往在等待数据加载因此性能瓶颈就落在了显存带宽上。这里有一个直观的案例对比。以DeepSeek-R1-671B-A37B-FP8模型为例在 H20 GPU 上参数大小 37B × 1byte ÷ 4000GB/s ≈9ms/token在 CPU 上参数大小 37B × 1byte ÷ 64GB/s ≈578ms/token这个 64 倍的差距就是为什么我们不能用传统服务器运行大模型的根本原因。CPU 处理一个 token 的时间GPU 已经处理完一个句子了。二、现代 GPU 的关键架构特征理解了“为什么是 GPU”之后我们需要进一步拆解看看现代 AI 芯片以 H20 为例是如何设计以满足 AI 计算需求的。2.1 内部构成下图是一张NVIDIA GPU核心的内部整体架构图由多个GPC (图形处理集群)组成GPC (图形处理集群)GPC是最高级的硬件块基本可视为一个完整的、独立的GPU核心。当代旗舰GPU通常拥有6-12个GPC。它集成了光栅引擎和光栅处理单元ROP负责将计算后的3D图形数据由顶点构成转换为可显示的2D像素图像。我们进一步观察每个GPC的内部构成它又由多个TPC构成TPC (纹理处理集群)介于GPC和SM之间的中间层级负责纹理相关的处理每个TPC通常包含2个SM。从上图可以发现每个TPC由两个流式多处理器 (SM)组成SM是GPU最基本的计算单元负责执行大部分运算堪称NVIDIA GPU的“计算心脏”。一个SM内部集成了多种功能模块CUDA核心执行通用计算任务的最小单元负责浮点和整数运算。在当代架构中每个SM拥有128个CUDA核心。张量核心 (Tensor Core)专为深度学习设计的矩阵运算加速器是实现AI计算的关键。当代架构中每个SM通常集成4个。RT核心 (RT Core)仅存在于GeForce显卡中用于加速实时光线追踪。在Ada架构中每个SM包含1个第三代RT Core。特殊功能单元 (SFU)加速特定复杂数学运算如三角函数、倒数平方根等。加载/存储单元 (LD/ST)负责处理GPU核心与内存之间的数据加载和存储。线程束调度器 (Warp Scheduler)调度和管理一组32个线程的指令执行。GPU以“线程束”为基本调度单位使用SIMT架构实现高效并行。L1缓存/共享内存内核内部的极高速暂存存储器供SM内所有核心共用通过配置可以充当L1数据缓存或用户直接管理的共享内存。此外外部还有内存与存储子系统显存 (VRAM)全局大容量存储空间即显卡板载的内存。专业用途如H100使用超高带宽的HBM3/3e内存消费级如RTX 40系则使用GDDR6X内存。L2缓存连接SM与显存能被所有SM共享用于缓存频繁访问的数据大幅降低对较慢显存的访问次数。A100的L2缓存容量为40MB而Ada架构则将其容量提升了16倍。显存控制器 (Memory Controller)管理L2缓存与显存之间的数据流。2.2 GPU 进行 AI 计算的原理简单来说GPU会像一台由CPU指挥的“超级计算机”通过CUDA将深度学习这类庞大的并行计算任务拆解成无数个小任务在它成千上万的核心上同时执行从而极大地加速训练。GPU与CPU协同工作才能最高效地完成训练。下图清晰地展示了它们各自的分工接下来让我们深入了解训练过程中具体发生了什么。1. 第一步以核函数 (Kernel) 定义任务CPU是总指挥它不直接参与GPU的大规模运算而是通过一个叫核函数(Kernel)的指令告知GPU要执行的任务。核函数是CPU上的一段代码用于定义GPU上一个线程要执行的操作。以最简单的向量加法为例CPU上的核函数启动代码如下# 此代码运行在CPU上用于启动GPU上的核函数# threads_per_block 和 blocks_per_grid 定义了任务如何被分解vector_add_kernel[blocks_per_grid,threads_per_block](a,b,c)这段代码将启动GPU上的 vector_add_kernel 核函数。开发者需要精心设计 blocks_per_grid 和 threads_per_block将庞大的并行工作拆解为数千甚至上百万个小任务并分配到GPU上数以千计的CUDA核心上高效运行。2. 第二步在GPU上执行大规模并行计算核函数启动后GPU的数千个计算核心便开始并行执行这正是加速训练的关键。其中现代NVIDIA GPU如Volta架构及之后拥有两类核心来处理不同类型的任务CUDA核心 (CUDA Core)GPU中的通用计算主力它像一个基础计算单元负责各种通用并行任务如通用矩阵乘法、激活函数、元素级运算等。张量核心 (Tensor Core)专为深度学习的核心——矩阵运算——设计的专用加速器。它能在每个时钟周期执行64个浮点运算执行速度远超CUDA核心。这使得混合精度训练的广泛应用成为可能。3. 第三步在GPU显存中完成数据迁移与模型运算在GPU进行海量计算前数据和模型需要从CPU内存被拷贝到GPU显存。训练过程中的大部分时间数据都在GPU内部高速流转避免了与较慢的CPU之间频繁通信这得益于一个关键的底层加速库。高性能算子库cuDNN (CUDA Deep Neural Network)PyTorch、TensorFlow等框架能如此高效地利用GPU背后离不开cuDNN这个强大的GPU加速库。cuDNN就像一个“高性能工具箱”里面有大量针对深度学习任务高度优化的算子如卷积、池化等的实现。它可以看作是在CUDA之上为深度学习定制的一个更高级、更易用的“上层建筑”。其主要功能包括算子融合将多个计算步骤“融合”为一个操作减少数据在显存中的读写次数。例如它将矩阵乘法与偏置加和ReLU激活等操作融合成一个核函数从而显著提升运行效率。动态内核选择cuDNN内置了启发式算法能根据输入数据规模等参数自动选择性能最优的算法来执行。从宏观上看一个典型的深度学习训练循环大致如下你可以清晰地看到CPU和GPU是如何紧密协作的启动与配置CPU检查GPU可用性将模型定义并加载到GPU显存。同时数据加载器CPU异步地准备并预取数据。并行加速前向传播CPU将数据批次Batch传输到GPUGPU利用cuDNN等库大规模并行地执行矩阵乘法等运算高效计算出预测结果。计算损失GPU上的计算结果被传回CPU或直接在GPU上根据预定义的损失函数计算出模型预测与真实标签之间的误差。高效反向传播CPU触发反向传播过程GPU再次通过cuDNN等库高效并行地计算出损失函数关于每个参数的梯度。参数更新CPU上的优化器如SGD, Adam接收GPU计算出的梯度利用这些梯度更新模型的参数完成一次迭代。这些步骤会循环成千上万次直到模型的精度达到要求。2.2 显存带宽与容量对于 AI 推理来说显存带宽往往比算力更重要因为它直接决定了“数据能否及时送到计算单元”。H20 拥有 4TB/s 的显存带宽这意味着它能够以极高的速度吞吐数据。与此同时显存容量决定了单卡能“装下”多大的模型。H20 提供了 96GB 的 HBM3 显存8 卡服务器即可提供高达 768GB 的总显存足以容纳像 DeepSeek-R1 这样的千亿级大模型。2.3 核心指标指标维度技术规格 (以 H20 为例)作用说明显存容量单卡 96GB HBM3e决定单卡能承载的模型参数量上限显存带宽4.0 TB/s决定数据搬运速度直接影响推理首字延迟浮点算力FP8: 296 TFLOPS处理张量核心加速用于高并发批量处理三、互联技术从单兵作战到群体智能单张 GPU 的算力再强也难以独立承载千亿甚至万亿参数的模型训练与推理。因此连接技术成为了 AI Infra 的命脉。我们需要根据通信距离和延迟要求理解三种核心互联技术的定位差异3.1 NVLinkGPU 之间的“神级通道”NVLink 是一种专为 GPU 之间直接通信设计的高速协议。它的特点是高带宽、低延迟并支持内存共享让多个 GPU 可以直接访问彼此的内存仿佛在操作同一个巨型显存池。在单台服务器内部NVLink 通常用于构建NVLink 全互联拓扑将 8 张 GPU 紧密耦合在一起实现多卡并行计算如张量并行。3.2 InfiniBand集群互联的“高速铁路”当我们需要跨服务器节点通信时InfiniBand就是当前的行业标准。它相比普通以太网的核心优势在于支持RDMA远程直接内存访问技术。RDMA 允许数据直接在 GPU 显存之间传输完全绕过 CPU 和操作系统内核极大地降低了通信延迟和 CPU 开销。在千卡、万卡集群中InfiniBand 就是连接这些计算单元的神经网络。3.3 PCIe仅存的“通用胶水”PCIe 是连接 CPU 和 GPU 的传统通道。虽然最新的 PCIe 5.0/6.0 带宽已相当可观但相比 NVLink 仍存在数量级的差距。在“以 GPU 为中心”的架构中PCIe 主要用于 CPU 将指令和数据传输给 GPU或作为慢速控制通道而非高速数据交换的主干道。互联技术总结表技术类型核心应用场景关键特征NVLink单机内部 GPU-GPU极致带宽、低延迟、支持内存共享InfiniBand跨机集群 Scale-Out支持 RDMA、绕过 CPU、适合大规模扩展PCIeCPU 与 GPU 通信通用标准、相对较慢、作为控制通道结语思维范式的转变回顾这一模块的学习最关键的是建立一种新的认知在 AI Infra 领域计算核心已不再是 CPU。我们的思维方式需要从“如何优化代码逻辑”转向“如何规划数据流使其尽可能地驻留在 GPU 显存内并高效流通”。显存带宽比算力更稀缺更需要关注模型并行比应用分片更难实现硬件架构正在从“去 IOE”的分布式理念回归到类似“AI 大型机”的高度集中化模式。这也是我们 AI Infra 学习之旅的起点。只有深刻理解了底层的硬件逻辑我们才能驾驭上层的分布式训练与推理框架。推荐阅读材料类型资源说明必读NVIDIA Ampere GA102白皮书理解A100架构基础必读NVIDIA Hopper H100白皮书理解当前主流训练架构选读NVIDIA Fermi白皮书了解CUDA架构演进起点