流水线利用率pipe utilization
流水线利用率用于衡量 内核 (kernel) 对每个 流式多处理器 (Streaming Multiprocessor, SM) 内执行资源的利用效率。
每个 流式多处理器 (SM) 包含多个独立的执行流水线,这些流水线针对不同的指令类型进行了优化 —— CUDA 核心 (CUDA Cores) 用于通用浮点运算,张量核心 (Tensor Cores) 用于张量收缩,加载/存储单元 (load/store units) 用于内存访问,以及用于分支操作的控制流单元。流水线利用率显示了当某个流水线至少有一个 线程束 (warp) 在执行时,该流水线达到其 峰值速率 (peak rate) 的百分比,该数值在所有活跃 流式多处理器 (SM) 上取平均值。
在从流水线利用率层面调试应用程序性能之前,GPU 程序员应首先考虑 GPU 内核利用率 和 流式多处理器利用率 (SM utilization)。
流水线利用率可以通过 NSight Compute (ncu) 中的 sm__inst_executed_pipe_*.avg.pct_of_peak_sustained_active 指标获取,其中星号代表特定的流水线,例如 `fma`、`tensor`、`lsu` 或 adu(地址)。
英文原文(Modal GPU Glossary)
Pipe utilization measures how effectively a kernel uses the execution resources within each Streaming Multiprocessor (SM).
Each SM contains multiple independent execution pipes optimized for different instruction types - CUDA Cores for general floating-point arithmetic, Tensor Cores for tensor contractions, load/store units for memory access, and control flow units for branching. Pipe utilization shows what percentage of each pipeline's peak rate is being achieved when that pipe is actively executing at least one warp, averaged across all active SMs.
Before debugging application performance at the level of pipe utilization, GPU programmers should first consider GPU kernel utilization and SM utilization.
Pipe utilization is available in the sm__inst_executed_pipe_*.avg.pct_of_peak_sustained_active metrics from NSight Compute (ncu), where the asterisk represents specific pipelines like `fma`, `tensor`, `lsu`, or adu (address).
相关词条
本词条改编自 Modal GPU Glossary(CC BY 4.0)· 中文翻译 miter6/gpu-glossary-zh,MAE 整理排版。