GPU架构学习笔记(面试精炼版)
一、GPUCPU
特点
- 设计目标:追求高吞吐量,面向大规模多线程并行计算
- 核心数量:数千个轻量级小核心(CUDA
Core)
- 缓存结构:小缓存
+
高带宽
,弱化单线程延迟,强化并发吞吐 - 典型场景:矩阵运算、卷积、图像处理、深度学习训练/推理
2.CPU
特点
- 设计目标:追求低延迟,强调单线程高性能
- 核心数量:少量大核心(一般
2~64
核),控制逻辑复杂
- 缓存结构:大缓存
+
低延迟
,减少访存等待 - 典型场景:系统调度、逻辑控制、分支判断、串行任务
3.
核心总结(面试必背)
- CPU:擅长单任务低延迟,核心少但控制单元复杂、缓存大,适合复杂逻辑与串行流程。
- GPU:牺牲单线程性能,用数千个轻量计算核心并行执行海量简单任务,天然适配深度学习中矩阵乘法、卷积这类高度并行计算。
/>二、NVIDIA
SM(流式多处理器)
- 定位:GPU最小独立执行单元,所有并行计算都在
数量与算力:
- A100:108
SM
- RTX
数量直接决定峰值并行计算能力。
- A100:108
- SM
占用率
:- 深度学习训练中,建议SM
占用率
训练速度慢。
- 深度学习训练中,建议SM
2.Tensor
Core(张量核心)
- 核心功能:NVIDIA
专为矩阵乘法
卷积设计的专用硬件单元,原生支持混合精度计算。
- 性能优势:
- 相比普通
CUDA
Core,矩阵乘法速度提升5~10
倍
- 是混合精度训练的底层硬件基础。
- 相比普通
- 工作机制:
- 在精度损失可控前提下,用FP16
替代部分
计算
- 既提升计算速度,又降低显存占用
- 是大模型微调、训练提速的必备硬件条件。
- 在精度损失可控前提下,用FP16
/>三、GPU
显存层级结构(面试高频)
从快到慢、从近到远:
/>寄存器
寄存器
- 位置:SM
内部
- 速度:1~10
MB
- 用途:存储线程私有变量、计算中间结果,最快、最小。
2.共享内存(Shared
Memory)
- 位置:SM
内部
- 速度:10~20
MB
- 用途:同一个
Block
内线程共享数据
,减少全局显存访问。
3.
缓存
- 位置:SM
内部
- 速度:20~40
MB
- 用途:缓存全局显存数据,降低访存延迟。
4.
缓存
- 位置:GPU
全局
- 速度:100~200
GB
- 用途:所有
共享
,全局显存的二级缓存。
5.全局显存(Global
Memory)
- 位置:GPU
板载外部
(GDDR/HBM) - 速度:500~1000
GB
- 用途:存储模型参数、梯度、输入输出数据,容量最大、最慢。
6.CPU
内存
- 位置:主机端
- 速度:~10000
GB
- 用途:存储训练数据集、模型备份、CPU
侧逻辑数据。
显存结构总结(面试必背)
- 从寄存器到全局显存,访问速度相差
100~1000
倍
。 - 深度学习训练性能瓶颈通常不在计算,而在显存带宽:
/>即全局显存
之间的数据搬运速度。
- 优化核心:尽可能减少全局显存访问次数,用好高速缓存。
从全局显存读取/写入的数据量。
2.
对深度学习的关键影响
- 大模型训练中,参数、梯度、激活、优化器状态全部依赖显存带宽。
- 带宽不足时:SM
算力再强也会空等数据
,出现“算力闲置”。 - DDP
梯度同步通信会直接占用显存带宽,带宽不足会拖慢同步效率。
/>五、核心硬件特性
深度学习优化(面试串联题)
SM
多卡训练、提高
利用率。
Tensor
Core
- 支持混合精度,提速
+
降显存
- 优化:开启
torch.cuda.amp自动混合精度训练。
- 支持混合精度,提速
显存带宽
- 越高
数据搬运越快,缓解“内存墙”
- 优化:FP16/FP8、梯度累积、显存分片、减少
CPU↔GPU
拷贝。
- 越高
全局显存容量
- 直接决定能训多大模型
- 优化:模型并行、ZeRO
优化、梯度检查点、激活重计算。
NVLink
NVSwitch
- 决定多卡通信速度
- 影响:DDP
梯度同步、分布式训练效率。
/>
六、高频面试考题(标准答案版)
1.为什么
更适合深度学习训练?
- 深度学习核心是矩阵乘法、卷积等高度并行任务,而非复杂逻辑控制。
- GPU
拥有数千个轻量
核心,可大规模并行计算,吞吐远高于
CPU
少量大核心。
- GPU显存带宽远高于
CPU
内存
,能支撑海量参数与数据的高速读写,解决深度学习的内存墙问题。
2.Tensor
对混合精度训练的加速作用?
- Tensor
Core
专为矩阵运算设计的专用硬件,原生支持
FP16/FP32
Core:
- 计算速度提升5~10
倍
,低精度运算周期更短。 - 显存占用降低约50%,减少访存压力。
- 计算速度提升5~10
- 混合精度训练中:
- 前向/反向用FP16计算
- 权重用FP32保存
- 在精度损失可控前提下,兼顾速度、显存、精度。
3.
显存层级结构对大模型训练优化有什么启发?
- 不同层级速度差距极大,优化核心:尽量少访问全局显存。
- 具体优化思路:
- 充分利用共享内存缓存重复访问数据,降低全局显存读写。
- 开启混合精度(FP16/FP8),减少单数据体积,提升带宽利用率。
- 使用梯度累积、显存分片,降低瞬时显存占用。
- 避免频繁
CPU↔GPU
数据拷贝
,减少跨端传输。


