GPU 硬件与资源共享

硬件架构 · CUDA 执行模型 · 数据搬运 · 资源共享 · 性能诊断 · 调度对比

当前模块
学习进度0 / 5
Module Switcher
GPU 内容模块
内容模块

GPU硬件直觉

基础★★★⏱ 30 min

核心概念

  • CPU 定位:低延迟 · 强控制流 · 通用计算 — 分支预测、乱序执行、大缓存,适合 OS 调度、业务逻辑、IO 编排、串行控制
  • GPU 定位:高吞吐 · 数据并行 · 数值计算 — 大量轻量执行单元(SM)+ 高带宽显存(HBM),适合矩阵乘、卷积、Attention、batch 并行
  • CPU-GPU 协作:CPU 做数据准备/控制/调度/kernel launch/IO;GPU 做大规模数值计算/Tensor Core 加速
  • 常见瓶颈:CPU↔GPU 数据搬运、显存带宽、kernel 并行度、多卡通信链路

对比表

维度CPUGPU
设计目标低延迟、强控制流、通用计算高吞吐、数据并行、数值计算
核心形态少量复杂核心,每个核心能力强大量轻量执行单元,组织在 SM 内
控制逻辑分支预测、乱序执行、复杂流水线、大缓存控制逻辑更简单,依赖大量线程隐藏延迟
时钟频率通常更高,强调单线程响应通常较低,强调整体吞吐
并行方式线程或进程级并行,规模相对小SPMD 模型,同一 kernel 映射到大量 thread
内存体系DDR 容量大,带宽相对中等HBM 容量较小但带宽极高
延迟隐藏靠缓存、预测、乱序执行降低单线程等待靠大量 warp 切换隐藏访存和执行延迟
适合任务控制流复杂、依赖强、低延迟、IO 密集矩阵乘、卷积、Attention、向量化和批量计算
不适合任务海量规则数值计算吞吐不足串行依赖强、分支复杂、OS/IO 控制任务

为什么 GPU 适合深度学习

深度学习特征GPU 匹配点面试表达
大量 GEMM / 卷积 / AttentionTensor Core 和 CUDA Core 能并行执行大量乘加模型主要算子可转成高吞吐矩阵计算
数据并行度高batch、token、矩阵 tile 可以拆给大量线程单个线程不强,但整体并发规模很大
显存带宽需求高HBM 带宽远高于普通 DDR参数、激活、KV cache 的读写需要高带宽
算法结构规则同一 kernel 可在大量元素上执行类似逻辑GPU 喜欢规则、可向量化、分支少的工作
可容忍单线程延迟吞吐比单线程响应更关键训练和批量推理更关心单位时间完成多少计算

可以把 GPU 的优势概括成三点:

  1. 算子形态匹配:深度学习核心算子大多是矩阵乘和张量运算。
  2. 并行粒度匹配:样本、token、矩阵块都能拆成大量相似任务。
  3. 资源需求匹配:模型参数、激活和 KV cache 对显存带宽要求高。

常见误区

误区正确理解
GPU core 等于 CPU coreGPU 的 CUDA Core 更像 SM 内的轻量执行单元,不是独立运行复杂程序的通用核心。
GPU 一定比 CPU 快只有任务有足够并行度、访存模式合理、数据搬运成本可控时,GPU 才有优势。
GPU 可以替代 CPUGPU 不擅长 OS 调度、复杂控制流、IO 编排和低延迟串行任务,仍需要 CPU 作为 Host。
显存越大性能越强显存容量决定能不能放下模型和数据,性能还要看带宽、SM、Tensor Core、互联和算子效率。
GPU 利用率高就代表训练快GPU-Util 只是粗指标,还要看 SM Active、Tensor Core 利用率、显存带宽、通信和数据加载。