快速优化检查清单
了解 MT GPU 程序性能优化的基本概念和技术
性能瓶颈分析:屋顶模型(Roofline Model)
屋顶模型(Roofline Model)是可视化 GPU 性能上限的有效方式。它直观地显示内核性能与硬件极限之间的关系 ,帮助开发者快速定位性能瓶颈类型(计算受限或内存受限)。
核心指标是 算术强度(Arithmetic Intensity):指每从内存中读取一个字节的数据,程序可以执行多少浮点运算,单位为 FLOP/Byte。
性能 (每秒浮点运算次数)
↑
│ ╭─────────────── 峰值计算性能
│ ╱│
│ ╱ │
│ ╱ │
│ ╱ │
│ ╱ │
│ ╱ │
│ ╱ 内存带宽极限
│ ╱ │
│ ╱ │
│╱ │
└───────────────────┴────────────→ 算术强度
0 脊点 (FLOP/Byte)
| 区域 | 诊断 | 优化策略 |
|---|---|---|
| 脊点左侧 | 内存瓶颈 | 增加算术强度(共享内存、数据重用、合并访问) |
| 脊点右侧 | 计算瓶颈 | 减少浮点运算 或使用更低精度(如 FP16、INT8) |
| 脊点位置 | 内存/计算平衡点 | 算法设计的理论目标 |
算术强度计算公式:
算术强度 = 每秒浮点运算数 / 每秒内存带宽总数 (Bytes)