算术带宽arithmetic bandwidth
算术带宽是系统能够执行算术运算的 峰值速率。
它代表了理论上每秒可实现的算术运算吞吐量上限,决定了硬件 屋顶模型 中"计算屋顶"的高度。
在一个完整系统中有多种算术带宽——每组提供算术操作执行的硬件单元都有对应的算术带宽。
在许多 GPU 中,最重要的算术带宽是 CUDA 核心 的浮点运算带宽。GPU 通常为浮点操作提供比整数运算更高的带宽,而 统一计算设备架构 (CUDA) 的关键在于 CUDA 核心 及其支持系统为 GPU 应用程序提供了统一的计算接口(与早期的 GPU 架构不同)。
但在近年来的 GPU 中,随着 张量核心 的引入,架构的统一性有所降低。张量核心仅执行矩阵乘法运算,但其算术带宽远高于 CUDA 核心 —— 张量核心 与 CUDA 核心 带宽的比例通常约为 100:1。 这使得对于希望最大化性能的 内核 而言,张量核心 的算术带宽变得最为重要。
当代 GPU 的 张量核心 算术带宽以 petaFLOPS(每秒千万亿次浮点运算)为单位。例如,B200 GPU 在运行 4 位浮点矩阵乘法时的带宽为 9 PFLOPS。
以下表格列出了 NVIDIA 数据中心 GPU 从 Ampere 到 Blackwell 流式多处理器架构 (Streaming Multiprocessor Architecture) 的代表性带宽数据。
| 系统 (计算 / 内存) | 算术带宽 (TFLOPs/秒) | 内存带宽 (TB/秒) | 屋脊点 (FLOPs/字节) |
|---|---|---|---|
| A100 80GB SXM BF16 TC / HBM2e | 312 | 2 | 156 |
| H100 SXM BF16 TC / HBM3 | 989 | 3.35 | 295 |
| B200 BF16 TC / HBM3e | 2250 | 8 | 281 |
| H100 SXM FP8 TC / HBM3 | 1979 | 3.35 | 592 |
| B200 FP8 TC / HBM3e | 4500 | 8 | 562 |
| B200 FP4 TC / HBM3e | 9000 | 8 | 1125 |
英文原文(Modal GPU Glossary)
Arithmetic bandwidth is the peak rate at which arithmetic work can be performed by a system.
It represents the theoretical maximum of the achievable throughput for arithmetic operations per second. It determines the height of the "compute roof" in a roofline model of the hardware.
There are many arithmetic bandwidths in a complete system — one for each grouping of hardware units that provide bandwidth for executing arithmetic operations.
On many GPUs, the most important arithmetic bandwidth is the bandwidth of the CUDA Cores for floating point arithmetic. GPUs generally provide more bandwidth for floating point operations than for integer operations, and the key to the Compute Unified Device Architecture (CUDA) is that the CUDA Cores and supporting systems provide a unified computing interface for GPU applications (unlike prior GPU architectures).
But in recent GPUs, the unity of the architecture has been lessened by the introduction of Tensor Cores, which perform only matrix multiplication operations but do so at a much higher arithmetic bandwidth than the CUDA Cores -- a ratio of 100:1 between Tensor Core and CUDA Core bandwidth is a good rule of thumb. That makes the Tensor Core arithmetic bandwidth the most important for kernels that wish to maximize performance.
Contemporary GPUs have Tensor Core arithmetic bandwidths measured in petaFLOPS — quadrillions of floating point operations per second. For example, B200 GPUs have a bandwidth of nine PFLOPS when running 4-bit floating point matrix multiplications.
Representative bandwidth numbers for NVIDIA data center GPUs between the Ampere and Blackwell Streaming Multiprocessor architectures are listed in the table below.
| System (Compute / Memory) | Arithmetic Bandwidth (TFLOPs/s) | Memory Bandwidth (TB/s) | Ridge Point (FLOPs/byte) |
|---|---|---|---|
| A100 80GB SXM BF16 TC / HBM2e | 312 | 2 | 156 |
| H100 SXM BF16 TC / HBM3 | 989 | 3.35 | 295 |
| B200 BF16 TC / HBM3e | 2250 | 8 | 281 |
| H100 SXM FP8 TC / HBM3 | 1979 | 3.35 | 592 |
| B200 FP8 TC / HBM3e | 4500 | 8 | 562 |
| B200 FP4 TC / HBM3e | 9000 | 8 | 1125 |
相关词条
本词条改编自 Modal GPU Glossary(CC BY 4.0)· 中文翻译 miter6/gpu-glossary-zh,MAE 整理排版。