张芷铭的个人博客

GPU 利用率反映计算核心在统计周期内的忙碌占比,核心工作状态时间除以总时间即为利用率百分比。

核心计算逻辑

$$\text{GPU 利用率} = \frac{\text{GPU 核心工作状态时间}}{\text{统计周期总时间}} \times 100%$$

统计周期:工具以固定间隔(100ms~1s)采样 GPU 核心状态。

工作状态判定:执行计算任务(CUDA 核心运算、张量核心运算)或图形渲染任务时判定为"忙碌"。

不同场景计算细节

任务类型统计对象影响因素
图形任务图形引擎忙碌时间占比分辨率、帧率、特效复杂度
计算任务计算引擎忙碌时间占比batch size、CPU 传输瓶颈

关键特点:AI 训练时 batch size 足够大则利用率趋近 100%;batch 过小或存在 CPU 瓶颈时利用率下降。

工具差异

工具采样周期特点
NVIDIA-smi1s驱动层采集寄存器状态,精度高
AMD Adrenalin可自定义逻辑与 NVIDIA 类似
Windows 任务管理器~2s精度较低,适合快速查看
1
nvidia-smi -l 1  # 每秒刷新

常见误区

误区正解
利用率 100% = 损坏正常负载下高效利用表现,温度功耗安全即可
利用率低 = 性能差可能是 CPU 瓶颈、内存瓶颈或任务负载过低
显存占用 = 利用率二者无关,显存反映内存使用,利用率反映核心忙碌

Comments