Smart Access Memory: Ryzen 3000 und Vorgängern fehlt es an Hardware-Support

Update 2 Michael Günsch
315 Kommentare
Smart Access Memory: Ryzen 3000 und Vorgängern fehlt es an Hardware-Support
Bild: AMD

Nachdem AMD mit Smart Access Memory (SAM) für mehr FPS in Spielen durch Vollzugriff der Ryzen-5000-CPUs auf den Videospeicher der Radeon RX 6000 sorgt, stellte sich die Frage, ob dies auch mit älteren CPUs funktioniert. Auf Seiten von AMD ist dies zu verneinen. Bei Intel geht es nur theoretisch weiter zurück.

Zen 2 fehlt es an Hardware-Support

Während AMD zwar sagt, dass SAM nur von den Ryzen 5000 (Test) auf Basis der Zen-3-Architektur unterstützt wird, blieb zunächst unklar, ob es nicht doch auf älteren Prozessoren wie Ryzen 3000 (Test) mit Zen 2 laufen könnte. Mit Verweis auf einen älteren Tweet vom Software-Entwickler CapFrameX, der wiederum auf Hinweise von Community-Mitglied foo_1337 verweist, beide sind auch im ComputerBase-Forum aktiv, nahm das Thema jetzt auf reddit wieder Fahrt auf. Die Aussage lautet, dass ältere AMD-Prozessoren mit „_pdep_u32“ eine für SAM nötige Funktion nicht vollständig unterstützen.

PDEP steht für „Parallel bit deposit“ und ist ein Befehl des Bit Manipulation Instruction Set 2 (BMI2), einer Befehlssatzerweiterung, die Intel zuerst bei Prozessoren der Haswell-Generation (in späterer Revision) eingeführt hat. AMD unterstützt BMI2 zwar bereits seit der Excavator-Generation, doch wurde der PDEP-Befehl nur über Microcode emuliert und entsprechend langsam umgesetzt.

PDEP-Befehl auf Zen 2 nur langsam
PDEP-Befehl auf Zen 2 nur langsam (Bild: AnandTech)

Erst mit der Zen-3-Architektur (Family 19h) folgte die volle Unterstützung von PDEP in Hardware, worauf AMDs Dokumentationen für Entwickler hinweisen und von Wikichip treffend als Neuerung für Zen 3 zusammengefasst wird: „Hardware implementation of BMI2 PDEP/PEXT bit scatter/gather operations, compared to prior microcode emulation.

The AMD family 19h processor has native ALU support for PDEP/PEXT, so one such instruction can be sustained per cycle, with a three-cycle latency for producing the result. Software that uses different codepaths for processors with fast and slow PDEP/PEXT instructions should choose the fast PDEP/PEXT codepath for family 19h processors.

AMD

Aufgrund dieses Umstands würde SAM auf älteren Zen-Prozessoren (Family 17h) wenn überhaupt, wohl nur langsam funktionieren. Daher ist auch nicht zu erwarten, dass die Funktion für Ryzen 3000 nachgereicht wird.

Das Pendant bei Intel

Bei Intel-Prozessoren wäre dies zwar augenscheinlich bis hinab zu Haswell möglich. Doch vorerst wird es ein Pendant zu AMDs Smart Access Memory nur für die LGA1200-Plattform mit den Prozessoren der Comet-Lake-Generation geben. Erste Mainboard-Hersteller wie Asus und MSI haben BIOS-Updates für Hauptplatinen mit Chipsätzen der 400-Serie veröffentlicht oder in Aussicht gestellt, mit denen die Funktion „Resizable BAR“ nutzbar wird, die es Intel-Prozessoren ermöglicht, auf den gesamten Videospeicher der Radeon RX 6000 zuzugreifen.

Künftig könnte dies auch mit GeForce-Grafikkarten funktionieren, Nvidia arbeitet bereits an einer Umsetzung. Letztlich dürfte die Funktion aber zumindest vorerst auch bei den Grafikkarten auf die jeweils neue Generation begrenzt bleiben, da mit nötigen Anpassungen bei Treibern auch ein gewisser Aufwand verbunden ist, wie es auch bei BIOS-Updates der Fall ist.

Update

Gegenüber Tech-Autor Ian Cutress hat sich AMD zum Thema geäußert. Demnach hängt die Funktion Smart Access Memory nicht von der Leistung des PDEP-Befehls ab, wie AMD auf Twitter zitiert wird. Unklar bleibt, ob ältere AMD-Prozessoren SAM damit doch unterstützen könnten oder es anderweitige Limitierungen gibt.

Update

Inzwischen ist bestätigt, dass sich Re-Sizable BAR alias Smart Access Memory auch bei älteren Zen-Prozessoren nutzen lässt.