Colindo schrieb:
[...]
@Locuza haben wir doch hier im Forum. Kannst du die Veränderungen, die du aus dem Treiber gelesen hast, noch weiter erläutern? Ist irgendwo schon erkennbar, was die Veränderungen bewirken?
Ich antworte mal allgemein von Kopf bis Fuß der Folie.
- Der Graphics Command Processor unterstützt den Patches nach zwei 3D Pipes.
Das ist an der Stelle auch ein wenig verwirrend, wenn man sich andere Patches anguckt bzw. Kommentare liest.
Z.B. hat der GCP seit GCN2 schon zwei 3D Pipes bzw. zwei Pipes.
Eine Pipe kann 3D(Draw) und Compute (Dispatch)-Befehle an das Shader-Array versenden, während die andere nur 3D(Draw)-Befehle ausführen kann.
Bei Navi10 finden sich auch patches zu zwei Pipes mit jeweils einer Queue, die eine Queue stellt die primäre Warteschlange dar, die andere eine Asynchrone.
Aber bei den Patches zu Sienna Cichlid wird bei der Featureauflistung der ME (Micro Engine = Graphics Command Processor) bei Navi10,12 und 14 von einer ME mit nur einer Pipe gesprochen und bei SC von zwei Pipes.
Ich interpretiere das an der Stelle mal so, dass die Hardware zwei gleichwertige Pipes besitzen wird und potentiell unter DX12/Vulkan zwei 3D-Queues zur Verfügung stehen könnten.
Wie bei Async Compute könnten Softwareentwickler zwei unabhängige 3D-Befehlsschlangen an die GPU senden und potentiell die durchschnittliche Auslastung erhöhen.
- Die Asynchronous Engines sind fast die gleichen, aber anstatt das jede Pipe 8 Queues unterstützt, sind es nur noch 4.
Wieso AMD das jetzt reduziert und vor allem bei einer großen GPU, erschließt sich mir nicht, ist aber auch praktisch egal.
- Die Kern-IP des Graphics Core ist auf 10.3 aktualisiert worden, gegenüber aktuellen Navis mit 10.1.
An der Stelle ist es auch interessant das es auch wirklich Hardware mit 10.0 und 10.2 gibt, die wurden extra im Code erwähnt.
Zumindest ab 10.3 sollte das Marketing von RDNA2 reden.
Die GFXID scheint mit dem IP-Level übereinzustimmen.
So lautet die bei Navi10 = GFX 1010, bei Navi 12 = GFX1011, Navi 14 = GFX1012, während Sienna Cichlid GFX1030 sein sollte.
- Bei xGMI/Infinity Fabric Link bin ich mir nicht ganz sicher, ob Navi21 das haben wird.
Im Gegensatz zu bisherigen Navi-Ablegern finden sich xGMI-Einträge beim Powerplay-Table und Referenzen zur Link-Geschwindigkeit.
Aber es gibt kein "setXGMI"-Eintrag, welcher eindeutig sagen würde, wenn Sienna Cichlid, dann gibts xGMI.
Ich habe es dennoch mal auf die Folie gepackt.
Nachfolgende Patches bringen vielleicht mehr Klarheit an der Stelle.
- Es gibt eindeutig nur GDDR6-Einträge bei Sienna Cichlid/Navi21, gut zu wissen und vielleicht teils überraschend, da es Gerüchte gab, dass AMD wieder HBM2 für den Topdog einsetzen würde, dass ist nicht der Fall.
Navi12 (RDNA1 mit 2560 ALUs wie Navi10) verwendet aber zwei HBM2-Stacks (=2048-Bit Interface).
- Es gibt zwei asymmetrische VCN-Instanzen, wo nicht genau ausgeführt wurde, welche Formate bei wem unterstützt werden.
VCN Instance 0 hat dabei scheinbar alles in Bezug auf De/Encode, während Instance 1 weniger Formate unterstützt und kein JPEG decoding beherrscht.
Aktuell (kann sich ändern) werden alle Decode-Befehle an Instanz 0 geschickt, während Encoding immer auf Instance 1 geschoben wird.
- Es gibt ganze 67 AVFS-Module gegenüber Navi10 mit 36.
Das werte ich primär als Fingerzeig Richtung breite GPU.
Ein Excavator-Core hatte z.B. 10 AVFS-Module, welche die Spannung und Frequenz beobachtet und gesteuert haben.
Sagen wir mal vereinfacht das pro WGP ein AVFS-Modul verwendet wird, dann sind das bei einer doppelt so breiten GPU, alleine deswegen schon deutlich mehr auf dem die.
In Bezug auf Power gibt es ein neues GPO-Bit (Graphics Power Optimizer), ich habe das bei kurzen Crosschecks nicht bei Navi10 gefunden, dass scheint neu zu sein.
- MxGPU bzw. SR-IOV für mehrere virtuelle Instanzen auf einer GPU wird unterstützt und es gab ein paar IP-Updates zum ATHUB, GFXHUB und in Bezug auf die SDMA-Engines, von denen es jetzt ganze vier gibt.
ATHUB scheint dabei ein Hub für I/O zu sein, welcher sich um die Adressen und Kommunikation bei PCIe und SDMA kümmert.
GFXHUB wird wohl irgendwelche 3D-IP angebunden haben und da ein bisschen verwalten.
Was genau da jetzt anders oder besser läuft weiß ich allerdings nicht.