Die theoretische FP-Peak-Performance über die regulären ALUs bei beiden GPUs ist exakt wie oben beschrieben.
Übrigens auch recht schön bei Doom Ethernal zu sehen, denn die id Engine macht umfangreichen Gebrauch davon.
Mir scheinst du hast falsch/über/gelesen oder es nicht ganz verstanden. Ich sprach ausschließlich von der FP16-Performance über die regulären ALUs und dein eigener Screenshot bestätigt den von mir bereits zuvor ausgewiesenen Wert an FP16-Performance.
Dagegen das Sparsity-Feature in Verbinfung mit den Tensor Cores v3 habe ich nicht einmal erwähnt, denn damit würde sich deren theoretischer FP16-Durchsatz gleich noch mal verdoppeln.
Und wenn die Tensor Cores genutzt werden könne, wird es gar ein vielfaches schneller als auf RDNA2, was schlicht daran liegt, weil RDNA2 keine speziellen Funktionseinheiten besitzt (konkret gemäß Peak-TFlops rd. 3,1x schneller über die Tensor Cores v3).
256 GFlops/Tensor Core v3/GHz (mit Sparsity gar bis zu 512 GFlops/Tensor Core v3/GHz)
4 GFlops/ALU/GHz auf Ampere (5248 ALUs * 1,7 GHz) *)
4 GFlops/ALU/GHz auf RDNA2 (5120 ALUs * 2,25 GHz)
Wie ich schon bereits zuvor erwähnte, ist möglicherweise nur eine der FP32-Einheiten in Ampere FP16-fähig, dewegen kann man "1x" schreiben, der architektonsiche FP16-Durchsatz ist jedoch in beiden gleich (wenn man das Vorhandensein der Tensor Cores ignoriert).
*) Oder aber nVidia hat die Komplexität deutlich reduziert und lädt nun ein FP16-Format einfach in die FP32-Register und prozessiert diese als solche, sodass beide Einheiten tatsächlich nur in 1:1 rechnen können, was aber immer noch zum gleichen Endergebnis führt, d. h. entweder sind es 2 Flops/Core/Clock als 10496 ALUs * 1,7 GHz oder es sind halt 4 Flops/Core*/Clock als 5248 ALUs * 1,7 GHz. Am Ende haben hier Turing/Ampere/RDNA1/RDNA2 weiterhin den gleichen Durchsatz.
RDNA hat "keine verdoppelten Cores" und hat wie schon seit Vega-Zeiten den unverändert gleichen Durchsatz von 2 Flops/ALU/Clock FP32 oder 4 Flops/ALU/Clock in FP16.
Übrigens auch recht schön bei Doom Ethernal zu sehen, denn die id Engine macht umfangreichen Gebrauch davon.
Mir scheinst du hast falsch/über/gelesen oder es nicht ganz verstanden. Ich sprach ausschließlich von der FP16-Performance über die regulären ALUs und dein eigener Screenshot bestätigt den von mir bereits zuvor ausgewiesenen Wert an FP16-Performance.
Dagegen das Sparsity-Feature in Verbinfung mit den Tensor Cores v3 habe ich nicht einmal erwähnt, denn damit würde sich deren theoretischer FP16-Durchsatz gleich noch mal verdoppeln.
Und wenn die Tensor Cores genutzt werden könne, wird es gar ein vielfaches schneller als auf RDNA2, was schlicht daran liegt, weil RDNA2 keine speziellen Funktionseinheiten besitzt (konkret gemäß Peak-TFlops rd. 3,1x schneller über die Tensor Cores v3).
256 GFlops/Tensor Core v3/GHz (mit Sparsity gar bis zu 512 GFlops/Tensor Core v3/GHz)
4 GFlops/ALU/GHz auf Ampere (5248 ALUs * 1,7 GHz) *)
4 GFlops/ALU/GHz auf RDNA2 (5120 ALUs * 2,25 GHz)
Wie ich schon bereits zuvor erwähnte, ist möglicherweise nur eine der FP32-Einheiten in Ampere FP16-fähig, dewegen kann man "1x" schreiben, der architektonsiche FP16-Durchsatz ist jedoch in beiden gleich (wenn man das Vorhandensein der Tensor Cores ignoriert).
*) Oder aber nVidia hat die Komplexität deutlich reduziert und lädt nun ein FP16-Format einfach in die FP32-Register und prozessiert diese als solche, sodass beide Einheiten tatsächlich nur in 1:1 rechnen können, was aber immer noch zum gleichen Endergebnis führt, d. h. entweder sind es 2 Flops/Core/Clock als 10496 ALUs * 1,7 GHz oder es sind halt 4 Flops/Core*/Clock als 5248 ALUs * 1,7 GHz. Am Ende haben hier Turing/Ampere/RDNA1/RDNA2 weiterhin den gleichen Durchsatz.
RDNA hat "keine verdoppelten Cores" und hat wie schon seit Vega-Zeiten den unverändert gleichen Durchsatz von 2 Flops/ALU/Clock FP32 oder 4 Flops/ALU/Clock in FP16.
Zuletzt bearbeitet: