Benchmarks: original contra desbloqueado
Todas as medições antes/depois na mesma placa publicadas pelo fork GPU Unlock Ada, incluindo os modos tensoriais que não mudaram e o par FP8 CUTLASS que mediu 1,0029×.
Como foram feitas
As linhas da RTX 4090 vêm de um laço de taxa de emissão MMA residente em registradores executado com 20.000 iterações e três repetições por modo, relatando o melhor de três. As linhas da RTX 4070 Ti SUPER vêm do tensor-modes-comparison.json do fork: 66 SMs, driver 580.178.04, limite de 240 W, 20.000 iterações e três repetições, com entradas todos-uns em oito cadeias independentes. O par FP8 é uma execução separada do profiler CUTLASS 4.8.1 sobre um kernel sm_89.
GeForce RTX 4090
| Modo | Original | Desbloqueado | Ganho |
|---|---|---|---|
f16/f16 | 325.70 TF/s | 331.60 TF/s | 1.02× |
f16/f32 | 165.60 TF/s | 330.80 TF/s | 2.00× |
bf16/f32 | 165.50 TF/s | 330.30 TF/s | 2.00× |
s8/s32 | 661.60 TF/s | 659.50 TF/s | 1.00× |
dp4a | 164.50 TF/s | 164.10 TF/s | 1.00× |
ffma | 79.10 TF/s | 79.10 TF/s | 1.00× |
GeForce RTX 4070 Ti SUPER
| Modo | Original | Desbloqueado | Ganho |
|---|---|---|---|
f16/f32 | 94.96 TFLOP/s | 188.97 TFLOP/s | 1.99× |
tf32 | 47.49 TFLOP/s | 94.51 TFLOP/s | 1.99× |
u4/s32 | 754.81 TOP/s | 754.68 TOP/s | 1.00× |
GeForce RTX 2080 Ti
| Modo | Original | Desbloqueado | Ganho |
|---|---|---|---|
f16/f32 | 50.30 TFLOP/s | 68.30 TFLOP/s | 1.36× |
f16/f32 | 55.70 TFLOP/s | 91.40 TFLOP/s | 1.64× |
f16/f32 | 53.70 TFLOP/s | 81.70 TFLOP/s | 1.52× |
f16/f32 | 52.80 TFLOP/s | 77.90 TFLOP/s | 1.48× |
O par FP8 que não se moveu
O fork mediu um GEMM 4096³ com entrada E4M3 FP8 pareada, acumulação FP32, na 4070 Ti SUPER com o mesmo binário do profiler CUTLASS, um único kernel, 10 aquecimentos e 20 iterações de profiling, exigindo verificação contra a referência do dispositivo. Ambas as execuções passaram em suas checagens de referência.
| Execução | ms | GFLOP/s |
|---|---|---|
| original | 2.31724 | 59325.8 |
| desbloqueado | 2.31066 | 59495.0 |
Como ler uma razão de 1,00×
Uma linha de 1,00× não é um desbloqueio falho. Ela diz que aquele caminho específico nunca foi limitado, então a substituição não tinha nada a restaurar. Se você medir sua própria placa e ver 1,00× no modo que lhe importa, o desbloqueio pode ter sido aplicado corretamente e simplesmente não ajudar aquela carga de trabalho.