知识全景图/ 软件工程与系统/ 人工智能全景图/ AI Infra、GPU 与推理引擎

AI Infra、GPU、并行训练与推理引擎底层图谱

从 GPU、HBM、互联、显存账本、分布式训练到 vLLM / TensorRT-LLM / llama.cpp,理解大模型为什么需要专门的基础设施

阅读定位: 这一页补 AI 底层理解线里“硬件与系统”这一层。它不替代 张量 / 自动微分 / 计算图,后者解释张量、算子和计算图如何形成可训练程序;也不替代 训练 / 推理 / Scaling推理计算 / KV Cache模型服务 / 网关成本 / 性能工程;它解释这些页面背后的资源约束:算力、显存、内存带宽、通信和调度。
一、AI Infra 的位置
Accelerator
GPU / NPU / TPU
Memory
HBM / 显存 / KV
Interconnect
NVLink / RDMA
Runtime
CUDA / Kernel
Engine
训练 / 推理引擎
Service
API / 网关 / SLA
层级核心问题常见组件决定什么
硬件加速器矩阵乘法和张量计算跑在哪里GPU、TPU、NPU、Tensor Core、CUDA Core峰值算力、支持精度、生态成熟度
显存与带宽模型权重、激活、梯度、优化器状态和 KV Cache 放不放得下HBM、显存池、Paged KV、CPU Offload能跑多大模型、能承载多大 batch 和上下文
互联与通信多卡多机之间数据怎样同步NVLink、PCIe、InfiniBand、RoCE、NCCL分布式训练效率、模型并行开销、扩展性
框架与运行时模型计算图怎样变成高效内核PyTorch、CUDA、Triton、cuDNN、FlashAttention开发效率、内核性能、硬件兼容
训练 / 推理引擎如何调度 batch、显存、KV Cache 和多模型服务DeepSpeed、FSDP、Megatron、vLLM、TensorRT-LLM、TGI、SGLang、llama.cpp吞吐、延迟、成本、稳定性
二、GPU 不是“更快的 CPU”
GPU 擅长什么
  • 大规模并行矩阵乘法、卷积和张量计算
  • 同一类计算在大量数据上重复执行
  • FP16 / BF16 / FP8 / INT8 / INT4 等低精度加速
  • 通过 Tensor Core 把大模型核心算子吃满
为什么 HBM 很关键
  • 大模型不是只缺算力,也常常缺显存容量和带宽
  • 权重、激活、梯度、优化器状态和 KV Cache 都会吃显存
  • Decode 阶段常常受内存带宽限制,而不是纯计算限制
  • 显存放不下时,性能会被 offload 和通信迅速拉垮
互联为什么贵
  • 单卡放不下或跑不快时,就必须多卡多机协同
  • 训练要同步梯度,模型并行要频繁交换中间结果
  • 通信慢会让 GPU 等数据,峰值算力变成纸面数字
  • 集群效率往往由最慢的通信链路决定

一个直觉

AI Infra 的核心不是“买很多卡”,而是让计算、显存、带宽和通信匹配。某些任务算力是瓶颈,某些任务显存是瓶颈,某些任务通信是瓶颈;优化前先判断瓶颈在哪。

三、显存账本:训练和推理到底在放什么
显存对象训练时推理时治理动作
模型权重必须常驻,参数越大占用越高必须常驻,量化可显著降低占用低精度、量化、模型并行、权重共享
激活值前向中间结果要给反向传播使用,占用很大通常不需要保存完整反向激活Activation Checkpointing、重计算、序列并行
梯度每个参数通常对应梯度,占用接近权重量级没有训练梯度梯度累积、ZeRO / FSDP 分片
优化器状态Adam 等优化器状态可能是权重的数倍没有优化器状态ZeRO、CPU Offload、低精度优化器
KV Cache训练中不是在线服务的主要账本项长上下文和高并发下很可能成为主瓶颈PagedAttention、上下文控制、长短请求分池
关键判断:

训练显存主要被权重、激活、梯度和优化器状态吃掉;推理显存主要被权重和 KV Cache 吃掉。很多人把训练和推理混在一起谈,容易把优化方向弄反。

四、训练并行:为什么大模型要拆开训练
Data Parallel
  • 每张卡放一份模型,处理不同数据切片
  • 反向传播后同步梯度
  • 实现直观,适合模型能放进单卡或单节点的场景
  • 瓶颈是梯度同步和冗余显存
Tensor Parallel
  • 把单层矩阵或张量切到多张卡上
  • 解决单层参数太大放不下或算不快的问题
  • 层内通信频繁,依赖高速互联
  • 常见于超大模型训练和推理
Pipeline Parallel
  • 把不同 Transformer 层放到不同设备
  • 像流水线一样让 micro-batch 穿过各阶段
  • 能容纳更深更大的模型
  • 风险是流水线气泡和调度复杂度
ZeRO / FSDP
  • 把参数、梯度和优化器状态分片到多卡
  • 减少每张卡的显存冗余
  • 适合大模型微调和训练
  • 代价是通信和实现复杂度增加
问题优先考虑要小心
模型能放进单卡,但训练太慢Data Parallel、梯度累积、更大 batchbatch 过大导致泛化或收敛问题
模型单卡放不下FSDP / ZeRO、Tensor Parallel、Pipeline Parallel通信开销吃掉扩展收益
激活占用太高Activation Checkpointing、序列长度控制重计算会增加训练时间
多机扩展效率差检查通信、数据加载、负载均衡和 checkpoint只加机器可能让浪费更大
五、推理引擎:把模型变成可服务系统
引擎 / 方向核心优势适合场景关注点
vLLMPagedAttention、连续批处理、OpenAI 兼容服务生态服务器端高吞吐 LLM 服务KV Cache 水位、batch 调度、模型兼容
TensorRT-LLMNVIDIA 生态内深度优化,内核融合和低精度优化强NVIDIA GPU 上追求极致性能的生产推理构建复杂度、版本兼容、调优成本
TGI面向文本生成服务的成熟部署形态通用开源模型服务、团队标准化部署吞吐、显存、监控和模型支持范围
SGLang面向复杂生成程序、结构化推理和高性能 servingAgent、结构化输出、复杂调用模式程序化编排、缓存复用、服务稳定性
llama.cpp / GGUFCPU / 本地 / 端侧友好,量化生态强本地助手、边缘设备、开发调试、轻量部署吞吐上限、硬件差异、模型尺寸限制

推理引擎优化的不是“模型聪明程度”

推理引擎主要优化显存管理、batch 调度、内核执行、低精度、并发和服务接口。同一个模型换引擎,可能更快、更稳、更便宜,但不会自动解决幻觉、业务正确性和任务质量问题。

六、训练集群和推理集群不是一回事
维度训练集群推理集群
目标在可接受时间内稳定完成训练或微调以低延迟、低成本、高可用服务在线请求
负载形态长时间大批量、同步计算、容错和 checkpoint 重要请求长度不均、峰谷明显、P95 / P99 和队列重要
显存重点权重、激活、梯度、优化器状态权重、KV Cache、batch 和上下文长度
通信重点梯度同步、模型并行、checkpoint 和数据加载多副本路由、模型分片、流式返回、网关调度
治理指标MFU、loss 曲线、吞吐 tokens/s、失败恢复时间TTFT、tokens/s、P95 / P99、GPU 利用率、单位请求成本
七、API、自部署、量化、分片:怎么做工程取舍
决策优先选它的信号不要忽略
闭源 API业务还在验证、质量要求高、团队不想运维 GPU、合规允许数据出域供应商锁定、价格变化、限流、数据边界、可观测性不足
自部署开源模型数据不能出域、调用量足够大、需要定制模型或控制推理栈GPU 运维、模型评测、容量规划、版本升级和安全补丁
量化显存不够、decode 带宽瓶颈、成本压力大、任务对精度退化不敏感代码、数学、长文本和专业任务必须做回归评测
模型分片模型单卡放不下,或需要更大模型支撑核心任务通信开销、部署复杂度、故障面扩大
小模型路由大量请求是分类、提取、改写、简单问答任务识别错误会带来质量退化,必须配 fallback
比较稳的路线:

先用 API 或托管服务验证产品价值和任务评测,再根据调用量、数据边界、成本曲线和质量回归决定是否自部署。不要因为“开源免费”忽略 GPU、运维、监控、评测和故障处理成本。

八、瓶颈诊断:慢、贵、不稳分别看哪里
症状先看指标可能瓶颈常见动作
首 token 慢TTFT、输入 token、prefill 时间、队列长度上下文太长、prefill 拥塞、batch 等待上下文压缩、Prompt Cache、分池、调度策略
流式输出慢decode tokens/s、输出 token、GPU 带宽、KV Cache 水位decode 受带宽限制、batch 过重、长输出量化、输出约束、推测解码、模型降级
吞吐上不去GPU 利用率、batch size、显存占用、请求长度分布调度低效、显存碎片、长短请求混跑连续批处理、Paged KV、长短分流、扩副本
成本失控单位请求 token、模型命中比例、GPU 空闲率、失败重试模型过大、上下文过长、缓存不足、路由粗糙小模型路由、缓存、Prompt 瘦身、预算告警
多机效率差通信时间、NCCL 错误、网络带宽、straggler互联不足、负载不均、数据加载慢拓扑优化、并行策略调整、数据管线优化

Infra Trace 证据包

模型服务的慢、贵、不稳要能落到集群、引擎、调度、缓存、队列和容量计划上,否则只能在模型和硬件之间来回猜。

证据节点必须记录字段用来排查什么
cluster_snapshotcluster_id、gpu_type、driver_cuda_version、engine_version、image_digest同一模型在不同集群或镜像上表现不一致的原因
scheduling_tracebatch_policy、queue_time、request_length_bucket、priority_class、timeout_policyTTFT、P95 和长短请求混跑造成的尾延迟
memory_cachekv_cache_policy、cache_hit_rate、peak_memory、oom_event_id、fragmentation_signalKV Cache、显存碎片和 OOM 是否拖垮服务
capacity_plangpu_util、tokens_per_second、cost_per_1k_tokens、capacity_plan_id、scale_trigger扩容、降级、路由和预算策略是否有数据依据
九、常见误区
误区:GPU 利用率高就一定好
高利用率可能牺牲 TTFT 和 P95。离线任务更看吞吐,交互式产品更看首 token、流式平滑和尾延迟。
误区:自部署一定更便宜
只有调用量、团队能力、模型质量和资源利用率都匹配时,自部署才可能便宜。否则 GPU 空闲和运维成本会吞掉优势。
误区:显存够了就能跑得快
显存容量只回答“放不放得下”,性能还要看带宽、内核、batch、通信和调度。
误区:训练方案可以直接套到推理
训练关心梯度、优化器和 checkpoint;推理关心 KV Cache、队列、尾延迟和服务可用性。两套账本不同。
误区:量化只影响速度不影响质量
量化可能改变长文本、代码、数学和工具参数质量。没有任务级评测,就不知道省下的钱买来了什么退化。
误区:换推理引擎能解决所有问题
引擎解决执行效率,解决不了错误上下文、坏 Prompt、低质量 RAG、缺失评测和产品流程问题。
十、回到 AI 主干
AI 全景 张量 / 自动微分 / 计算图 训练 / 推理 / Scaling AI Infra / GPU 推理计算 / KV Cache 模型服务 / 网关 开源部署 成本 / 性能工程

这张图在主干里的位置

训练 / 推理 / Scaling 解释能力和成本从哪里来,推理计算 / KV Cache 解释一次推理为什么慢和贵;这一页解释承载这些计算的硬件、显存、并行和引擎层,让你能判断“为什么这个模型需要这么多卡、为什么自部署不只是启动一个服务”。