Sim, você está correto, eu que viajei legal e escrevi errado: Queria dizer que
"voltaríamos a ter 128 FP32" (como nas Pascal), no caso sem ser compartilhado com o INT32 (datapaths separados). Basicamente iria dobrar o FP32 de forma real, e ter 64 ou mais INT32 por SM.
---
Para quem ainda não entendeu o que estamos falando, a NVIDIA no decorrer das suas uArch mudou a proporção de núcleos e suas especializações (descartei as Titans e 3090):
| uArch | GPU | SM | FP32 | INT32 | Núcleos |
|---|
| Tesla | GTX 285 | 30 | 8 por SM | | 240 CUDAs |
| Fermi | GTX 580 | 16 | 32 por SM | | 512 CUDAs |
| Kepler | GTX 780 Ti | 15 | 192 por SM | | 2880 CUDAs |
| Maxwell | GTX 980 Ti | 22 | 128 por SM | | 2816 CUDAs |
| Pascal | GTX 1080 Ti | 28 | 128 por SM | | 3584 CUDAs |
| Turing | RTX 2080 Ti | 68 | 64 por SM | 64 por SM | 4352 CUDAs |
| Ampere | RTX 3080 Ti * | 82 | 64 por SM | 64 por SM ** | 5248 à 10496 CUDAs |
| Lovelace | ??? | 144 | ?? | ?? | 18432 CUDAs |
Perceberam que essa minha tabela tem algo de estranho nela? Então, as Ampere não têm realmente 128 FP32 por SM, ela tem 64 núcleos totalmente FP32 e 64 núcleos compartilhados, onde estes podem calcular FP32
ou INT32, então dependendo do programa uma RTX 3090 pode ter 10496 CUDAs (perf. ~2x acima da 2080Ti) ou 5248 CUDAs (perf. ~30% acima da 2080Ti) para usar, logo o desempenho da Ampere varia muito e depende de como a engine do jogo a utiliza. Vale constar que o processo de RTRT utiliza FP32, e alguns cálculos também, então usar RT automaticamente reduz a quantidade de núcleos CUDA/FP32 dela, logo o desempenho máximo em jogos de uma 3090 equivale a uns 7348 FP32 (perf. ~70% acima de uma 2080Ti).
Para ficar mais fácil ainda:
- Da Tesla à Pascal = CUDA
- Turing = CUDA + INT
- Ampere = CUDA + CUDA
ou CUDA + INT
PS: O caso de desempenho da 3090 em cima da 3080 não ser proporcional ao aumento de núcleos é que, até onde conseguiu ser constatado, falta largura de banda na 3090 :v
Asteriscos: A 3080Ti ainda não existe oficialmente, mas as specs são iguais à da 3090 em núcleos; Os 64 núcleos INT32 podem ser FP32 também (datapath compartilhado).
É exatamente isso, o driver limita o clock das Ampere para evitar crash, se o motivo do clock alto causar crash é dos capacitores ou não ainda é passível de discussão.
Rapaz, dá para discordar disso, o chip Ampere esquenta bem mais que o Turing, e justamente por causa disso as placas estão vindo um monstro em dissipação e tamanho, resultando em temperaturas baixas. Se você colocar um cooler dessas 30XX em uma 20XX vai ver o quão mais fria ficará a série passada