PCIe Resizable BAR im Test: AMD SAM beschleunigt die RX 6800 XT teils deutlich
Umfangreiche Benchmarks in Full HD, WQHD und Ultra HD mit neuesten BIOS-Versionen und Treibern auf einem Gaming-PC mit AMD Radeon RX 6800 XT und Ryzen 9 5950X zeigen: Die Leistungszugewinne durch AMD Smart Access Memory (SAM) auf Basis von PCIe Resizable BAR fallen teils deutlich aus. Kein Wunder, dass Nvidia bald nachzieht.
Mit „Smart Access Memory“ (SAM) hat AMD den Radeon-RX-6000-Grafikkarten mit RDNA 2 zum Start im 4. Quartal 2020 als erster Hersteller überhaupt eine Funktion spendiert, die als „Resizable BAR“ schon länger im PCI-Express-Protokoll vorhanden war, aber bis dato nicht genutzt wurde. Unterstützt wurde sie zum Auftakt lediglich von Radeon RX 6000 in Kombination mit Ryzen 5000 auf Mainboards mit entsprechend angepasstem BIOS.
Doch AMD hat mit Smart Access Memory eine Lawine ausgelöst. Nicht nur haben alle Mainboard-Hersteller SAM inzwischen auch für Platinen abseits der AMD-Empfehlungen inklusive Threadripper und mit Intel-Chipsatz freigegeben, auch Nvidia wird im März bei der GeForce-RTX-3000-Serie nachziehen – die neuen GeForce RTX 3000 Laptop GPUs unterstützten die Funktion bereits.
ComputerBase hat sich SAM bisher lediglich im ersten Test der Radeon RX 6800 XT angesehen und dort nur in wenigen Spielen in Ultra HD, die Zugewinne fielen wenig überzeugend aus. Und trotzdem geben alle Hersteller Gas?
Erste umfangreiche Benchmarks der Redaktion in mehr Auflösungen, mehr Spielen und mit neuen BIOS-Versionen sowie Treibern liefern den Grund: Zum Teil fallen Leistungszugewinne durch AMD SAM größer aus, als der Griff zu einer Grafikkarten-Klasse höher bringen würde.
Was ist AMD SAM alias PCIe Resizable BAR?
Doch was ist „Smart Access Memory“ auf Basis von PCIe Resizable BAR überhaupt? Bis dato konnte der Prozessor auf lediglich 256 MB des Grafikkarten-Speichers direkt zugreifen und dort Daten ablegen, auf die die GPU danach Zugriff hatte, ohne sich die Daten erst „langsam“ aus dem RAM zu besorgen. In Anbetracht der geringen Kapazität des verfügbaren Adressbereiches konnten GPU und CPU vom direkten Kommunikationskanal allerdings kaum profitieren.
AMD war jetzt der erste Hardware-Hersteller, der diesen Engpass beseitigt hat, indem auf eine bereits in PCI Express implementierte Funktion zurückgegriffen wurde. Die Rede ist von Resizable BAR, einem Standard, der bereits vor mehreren Jahren mit dem PCIe-3.0-Protokoll umgesetzt worden ist, bis jetzt aber in der Windows-Welt völlig ignoriert worden ist. AMD hat die eigene Umsetzung von Resizable BAR „Smart Access Memory“ (SAM) getauft.
Mit Resizable BAR kann der Prozessor auf den kompletten Speicher der Grafikkarte zugreifen, der Datentransfer erfolgt über das PCIe-3.0- oder das doppelt so schnelle PCIe-4.0-Interface, der Umweg der GPU über den Arbeitsspeicher ist nicht notwendig.
Was sind die Voraussetzungen für AMD SAM?
Trivial war die Umsetzung dabei für AMD offensichtlich nicht, denn nicht nur der Treiber muss die Funktion unterstützen, sondern auch die Grafikkarte und das Mainboard müssen per BIOS/Firmware mitspielen.
Bei Nvidia bedarf es einer neuen Firmware
Die Firmware ist zum Beispiel der Grund, warum Nvidias noch nicht erhältliche GeForce RTX 3060 mit 12 GB Resizable BAR vom ersten Tag an unterstützen können wird und die erst kürzlich veröffentlichen GeForce RTX 3000 Laptop GPUs es bereits tun, die bereits „älteren“ GeForce RTX 3090, GeForce RTX 3080, GeForce RTX 3070 und GeForce RTX 3060 Ti aber erst im März folgen, wenn neben einem neuen Treiber auch Firmware-Updates zur Verfügung stehen. Offenbar hat AMD Nvidia mit Resizable BAR überrascht, andernfalls hätten sämtliche GeForce-RTX-3000-Karten vom ersten Tag an ein angepasstes BIOS aufgespielt.
Vermutlich nur für RX 6000 und RTX 3000
Nvidia hat Resizable BAR aktuell für die Ampere-Generation angekündigt, GeForce RTX 2000 und damit Turing werden vermutlich keine Anpassung erhalten. AMD spricht aktuell nur von SAM bei der Radeon RX 6800, Radeon RX 6800 XT und Radeon RX 6900 XT. Auch hier erscheint es eher unwahrscheinlich, dass die Funktion noch für die älteren Modelle offiziell folgen wird. In der ComputerBase-Community wollen einige Leser SAM auf AMD-GPU abseits von RDNA 2 ans laufen gebracht haben, dass kann die Redaktion aber nicht bestätigen – ein Versuch auf einer Radeon RX 5700 XT schlug fehl, die Leistung änderte sich nicht.
Auch ein passendes Mainboard-BIOS muss her
Neben der Grafikkarte bedarf es eines angepassten Mainboard-BIOS und damit indirekt auch eines entsprechenden Prozessors sowie Mainboard-Chipsatzes. Offiziell unterstützen derzeit einzig die Ryzen-5000-CPUs in Verbindung mit einem X570- beziehungsweise einem B550-Chipsatz und einem neuen BIOS das Feature. Das liegt aber nicht daran, dass andere CPUs oder Mainboards mit SAM nicht umgehen könnten. Zur Vorstellung der Radeon-RX-6000-Serie fehlte schlicht ein angepasstes BIOS.
Und dies gibt es mittlerweile. Resizable BAR wird mittlerweile von zahlreichen älteren AMD-Mainboards unterstützt und diverse Intel-Platinen sind ebenfalls mit dabei. Inzwischen ist es eher schon komplizierter, ein aktuelles Mainboard zu finden, das Resizable BAR nicht unterstützt, auch wenn es offiziell immer noch ein B550- oder X570-Modell sein muss. ComputerBase hat sich eine solche inoffizielle Kombination nicht angesehen, laut Internetberichten funktioniert dort SAM aber zumindest generell. Erfahrungsberichte der ComputerBase-Leser zu dem Thema sind gerne im Forum gesehen.
Ist SAM nun aktiv oder nicht?
Ist eine kompatible BIOS-Version aufgespielt, muss Resizable BAR noch aktiviert werden, ab Werk ist die Funktion derzeit nicht aktiv. In einem ersten Schritt ist es wichtig, dass die Option „CSM Support“ (ein Kompatibilitätsmodus für ältere Hardware) deaktiviert ist. Das ist für gewöhnlich der Fall, was gut ist, denn CSM kann auf einem bestehenden System nicht so ohne Weiteres abgeschaltet werden, da Windows dann womöglich nicht mehr startet. Darüber hinaus müssen die Optionen „Above 4G Decode“ und „Resizable Bar Support“ aktiviert werden – je nach Hersteller können die Punkte leicht anders benannt sein, sie sind aber normalerweise einfach (in den PCI-Express-Menüpunkten) zu finden.
Ist die Funktion im BIOS aktiv, muss auf einer kompatiblen Grafikkarte nur noch ein entsprechender Grafikkarten-Treiber installiert werden, und SAM sollte seine Arbeit aufnehmen. Aber tut es das auch? Die Frage ist gar nicht so leicht zu beantworten, denn aktuell liefert nicht einmal AMDs Treiber einen Hinweis darauf.
Wer allerdings im Geräte-Manager bei der Grafikkarte auf den Reiter „Ressourcen“ geht, findet bei auf dem System aktiviertem SAM unter dem Punkt „Ressourcentyp“ einen Punkt mit der Bezeichnung „Großer Speicherbereich“. Ohne SAM stehen dort nur Einträge mit „Speicherbereich“.
Die Anzeige ist aber wohl nur die halbe Wahrheit, denn auch auf einer Radeon-RX-5000-Grafikkarte findet man auf einem „SAM-System“ dort den Eintrag des erweiterten Speicherbereichs, Benchmarks zeigen jedoch keinerlei positive Auswirkungen bei einer Nicht-RDNA-2-Grafikkarte. Passend dazu weist ein von AMD der Redaktion zur Verfügung gestelltes Tool darauf hin, dass SAM auf einer Radeon RX 5000 nicht aktiv ist.
Nun könnte es natürlich sein, dass das Tool nur mit einer Radeon RX 6000 korrekt funktioniert, doch in Verbindung mit den Benchmark-Ergebnissen ist es wahrscheinlicher, dass der Geräte-Manager eine generelle Kompatibilität mit Resizable BAR bescheinigen kann, mehr aber auch nicht. So ist es denkbar, dass dieser zwar erkennt, dass die Hardware-Kette generell mit Resizable BAR umgehen kann, doch solange der Grafikkarten-Treiber nicht das finale „Go“ erteilt, gibt es dann eben doch kein Resizable BAR. Und genau diesen Schritt scheint der Geräte-Manager nicht mitzubekommen.
Der Grafikkarten-Treiber spielt eine große Rolle
Der Grafikkarten-Treiber spielt bei Resizable BAR generell eine große Rolle. AMD selbst gibt zwar kaum Details bekannt, jedoch soll die Implementierung alles andere als einfach gewesen und kein Einmalaufwand gewesen sein. Offenbar ist eine andauernde Treiberpflege notwendig, denn zumindest derzeit scheint AMD mit einer Whitelist zu arbeiten. Das heißt: Wenn ein Spiel nicht darauf vermerkt ist, bleibt SAM inaktiv. So gibt es laut AMD Titel, die mit SAM langsamer laufen als ohne – entsprechend sind sie dann nicht auf der Whitelist. Genauere Angaben, warum dies so ist und welche Spiele derzeit mit SAM funktionieren, gibt es nicht.