Shoryuken94 schrieb:
Das sollte dann eine ähnliche Startegie sein, den Nvidia mit Turing gemacht hat? Bzw eine Rückbesinnung richtung GCN.
Ich glaube nicht, dass mit UDNA "GCN" zurück kommt vom Aufbau her.
Leider hat sich in den letzten Jahren durch die Aufsplittung von GCN in CDNA und RDNA da ein Narrativ gebildet, dass so nicht richtig ist: GCN wäre gut für Compute, RDNA gut für Grafik. Das ist so aber nicht richtig. RDNA 1 war damals in OpenCL und Co langsamer, was zu großen Teilen den "fehlenden" Shadern geschuldet war. Mit 2560 Shandern in den neuen Vec32 konnten weniger Wave64-Fronten allgemein abgearbeitet werden und noch mal weniger durch den neuen Aufbau. Gleichzeitig ist aber der FP-Output auf die Anzahl der Shader nicht wirklich gesunden.
2560 / 32 = 80 Wave64-Fronten,
2560 / 16 = 160 Wave64-Fronten. Aber 2 Takte gegen 4 Takte. Vega 64 und Vega 7 waren primär schneller, weil sie mit den 4096 Kernen eben 256 Wavefronten bearbeiten konnten in 4 Taktzyklen, statt "nur" 80 in 2 Taktzyklen. Der Output war allgemein größer.
Allerdings arbeitet Nvidia mit Warp32 und viele - auch im HPC-Markt - viele Workloads eben auf Warp32 optimiert und bei Warp32 - AMD nennt das dann Wave32 - ist RDNA gegenüber GCN im Vorteil. Dazu kommt, dass Wave64 in 1 - 2 Takten bearbeitet werden - je nach Belegung der Operation.
AMD hatte 2019 mit Erscheinen von RDNA bereits angekündigt, dass früher oder später CDNA und RDNA wieder zusammen geführt wird und RDNA eben keine "HPC"-Schwäche hat.
Wir werden also bei RDNA 5 / UDNA also eher sehen, dass die CU/WGP von RDNA übernommen werden, und aktuell die CDNA-Entwicklungen in die mit RDNA geschaffene Struktur übergehen.
Das sind natürlich nur Vermutungen, will AMD aber auch im HPC-Markt Nvidia stärker angreifen, müssen sie eine gewisse strukturelle Nähe zu Nvidia einhalten, damit Code mit HIP und ROCm relativ einfach auch transformiert werden kann. Denn die vielen Entwickler werden nicht für "GCN" und "RTX" optimieren, die werden im Zweifel immer RTX wählen und AMD müsste dann mit dem Hip-Transpiler den Code von Warp32 auf Wave64 optimieren und DAS funktioniert immer nur bis zu einem gewissen Grad gut.