性能实测:解锁前后

GPU Unlock Ada 分支公布的全部同卡前后对比数据,包括没有变化的张量模式,以及实测 1.0029× 的 FP8 CUTLASS 一组。

数据是怎么测的

RTX 4090 的数据来自寄存器驻留的 MMA 发射率循环,每种模式 20,000 次迭代、重复三次,取三次最好值。RTX 4070 Ti SUPER 的数据来自分支的 tensor-modes-comparison.json:66 个 SM、驱动 580.178.04、240 W 功耗上限、20,000 次迭代、重复三次,全 1 输入、8 条独立链。FP8 那组是另一次 CUTLASS 4.8.1 profiler 运行,单个 sm_89 内核。

GeForce RTX 4090

AD102 · 128 个 SM · 驱动 unrecorded in the evidence file

模式解锁前解锁后提升
f16/f16325.70 TF/s331.60 TF/s1.02×
f16/f32165.60 TF/s330.80 TF/s2.00×
bf16/f32165.50 TF/s330.30 TF/s2.00×
s8/s32661.60 TF/s659.50 TF/s1.00×
dp4a164.50 TF/s164.10 TF/s1.00×
ffma79.10 TF/s79.10 TF/s1.00×
  • f16/f16: stock run includes one slow sample (306.3); best-of-three
  • s8/s32: already at full rate before the unlock
  • ffma: FP32 was never rate-limited

本次测试的原始文件

GeForce RTX 4070 Ti SUPER

AD103 · 66 个 SM · 驱动 580.178.04

模式解锁前解锁后提升
f16/f3294.96 TFLOP/s188.97 TFLOP/s1.99×
tf3247.49 TFLOP/s94.51 TFLOP/s1.99×
u4/s32754.81 TOP/s754.68 TOP/s1.00×
  • u4/s32: integer path, unaffected

本次测试的原始文件

GeForce RTX 2080 Ti

TU102 · 68 个 SM · 驱动 575.51.03

模式解锁前解锁后提升
f16/f3250.30 TFLOP/s68.30 TFLOP/s1.36×
f16/f3255.70 TFLOP/s91.40 TFLOP/s1.64×
f16/f3253.70 TFLOP/s81.70 TFLOP/s1.52×
f16/f3252.80 TFLOP/s77.90 TFLOP/s1.48×
  • f16/f32: M.N.K 1024: 88.4% to 120.0% of the 56.9 TFLOP/s peak
  • f16/f32: M.N.K 2048: 97.9% to 160.6% of peak
  • f16/f32: M.N.K 4096: 94.4% to 143.6% of peak
  • f16/f32: M.N.K 8192: 92.8% to 136.9% of peak

本次测试的原始文件

没有变化的 FP8 一组

分支在 RTX 4070 Ti SUPER 上用同一份 CUTLASS profiler、单个内核、10 次预热与 20 次测量,对 E4M3 FP8 输入、FP32 累加的 4096³ GEMM 做了匹配测量,并要求设备参考校验。两次运行都通过了参考校验。

运行毫秒GFLOP/s
解锁前2.3172459325.8
解锁后2.3106659495.0

RTX 4070 Ti SUPER · cutlass_tensorop_s16832gemm_e4m3_128x128_64x3_tn_align16 · 1.0029×

如何理解 1.00×

1.00× 不代表解锁失败。它说明那条路径本来就没有被限速,覆盖没有可恢复的东西。如果你在自己的卡上测出你关心的模式是 1.00×,解锁很可能确实生效了,只是对这个负载没有帮助。