AMD Mantle vs. DirectX 11 : Mit AMD Mantle bekommt Microsoft zum ersten Mal seit langer Zeit Konkurrenz zu seiner DirectX-Schnittstelle. In unserem Benchmark-Duell wird sich zeigen, ob und wenn ja wie stark sich AMDs API von DirectX absetzen kann. Mit AMD Mantle bekommt Microsoft zum ersten Mal seit langer Zeit Konkurrenz zu seiner DirectX-Schnittstelle. In unserem Benchmark-Duell wird sich zeigen, ob und wenn ja wie stark sich AMDs API von DirectX absetzen kann.

Ob ein Spiel flüssig läuft, hängt von vielen verschiedenen Faktoren ab. Einer davon ist die Programmierschnittstelle (englisch: »Application Programming Interface«, abgekürzt »API«). Sie stellt vereinfacht ausgedrückt das Bindeglied zwischen der Hardware (wie dem Prozessor, der Grafikkarte oder der Soundkarte) und der Software (wie einem Computerspiel) dar. Auf Windows-PCs ist dieses Bindeglied mittlerweile seit fast zwanzig Jahren größtenteils DirectX, Microsoft kümmert sich allerdings schon länger nur noch eingeschränkt um dessen Weiterentwicklung. Genau an diesem Punkt kommt AMDs Mantle ins Spiel: Wo DirectX (beziehungsweise das darin integrierte Direct3D für die Grafikberechnung) Leistungsreserven moderner PC-Hardware brachliegen lässt, soll die Mantle-API das vorhandene Potenzial so gut wie möglich ausschöpfen und so deutlich mehr Bilder pro Sekunde liefern als die Microsoft-Schnittstelle.

Zum Thema » AMD Catalyst 14.1 Beta Mantle-Treiber für Battlefield 4 und Star Swarm » AMD Mantle »verändert Multicore-Landschaft« Video der Tech-Demo von Oxide Games veröffentlicht Battlefield 4 ab 2,49 € bei Amazon.de Battlefield 4 für 11,99 € bei GamesPlanet.com Um als Spieler von Mantle profitieren zu können, sind verschiedene Voraussetzungen zu erfüllen, wobei eine besonders schwer wiegt: Das jeweilige Spiel muss in einer Mantle-Version vorliegen. Momentan ist das nur bei Battlefield 4 und der kostenlos über Steam erhältlichen Techdemo Star Swarm der Fall, es sind aber bereits weitere Mantle-Titel angekündigt (unter anderem das bald erscheinende Thief). Neben dem jeweiligen Spiel müssen außerdem Treiber- und Grafikkarte Mantle-kompatibel sein, letzteres ist nur bei AMDs hauseigenen Grafikkarten mit »Graphics Core Next«-Architektur (»GCN«) ab der Radeon HD 7000er-Serie der Fall.

Da es sich bei dem Catalyst-Treiber 14.1 genau wie bei Mantle selbst noch um eine Beta handelt, profitieren bei den Desktop-Karten laut AMD momentan nur Radeon R9 290X, R9 290 und R7 260X in größerem Umfang von der alternativen Mantle-API, bei anderen GCN-Karten wird das erst mit späteren Treiberversionen der Fall sein. Die letzte Hürde stellt das Betriebssystem dar, Mantle funktioniert nur unter den 64-Bit-Versionen von Windows 7 und Windows 8. Auf welchem Weg AMD die Leistungsgewinne mit Mantle realisieren will und wie groß sie bei verschiedenen Kombinationen aus Grafikkarte und Prozessor ausfallen, klären wir auf den folgenden Seiten.

Mantle im Detail

Schnittstellen nutzen entweder die Leistung einer ganz bestimmten Hardware besonders gut aus (»low level« API), oder sie sind kompatibel zu vielen verschiedenen Hardware-Konstellationen (»high level« API) - beides gleichzeitig ist naturgemäß nur bedingt möglich. Entwickler von Konsolenspielen können beispielsweise meist auf eine »low level«-API zurückgreifen, da in jedem Endgerät exakt die gleiche Hardware steckt. Das vereinfacht die Programmierung deutlich und sorgt dafür, dass möglichst viel Leistung aus den vorhandenen Komponenten geholt werden kann. DirectX für Windows-PCs ist dagegen eher eine »high level«-API, weil sich nahezu alle Komponenten wie der Prozessor, das Mainboard, die Grafikkarte und so weiter von PC zu PC völlig unterscheiden können, was die Programmierung tendenziell erschwert.

AMD Mantle vs. DirectX 11 : Bei Battlefield 4 gibt es nicht nur in Sachen 3D-Leistung Unterschiede zwischen DirectX 11 und Mantle, sondern auch in Sachen Optik. Das betrifft vor allem die Weitsicht...

Batttlefield 4 - DirectX
Bei Battlefield 4 gibt es nicht nur in Sachen 3D-Leistung Unterschiede zwischen DirectX 11 und Mantle, sondern auch in Sachen Optik. Das betrifft vor allem die Weitsicht...

Mantle ist zwischen Konsolen-APIs und DirectX einzuordnen, AMD selbst bezeichnet es deshalb als »lower level«-API. Es soll primär die Architektur moderner Grafikchips optimal ausnutzen, allen voran natürlich AMDs hauseigene GCN-Karten. Hauptansatzpunkt für die Leistungssteigerung durch Mantle ist die Entlastung des Prozessors, wodurch AMD verhindern will, dass der in prozessorlastigen Szenarios zum Flaschenhals wird. Dazu ermöglicht Mantle den Entwicklern von Spiele-Engines in bestimmten Fällen direkteren Zugriff auf die GPU, was den unter Direct3D oft nötigen Umweg über den Prozessor erspart.

Die dadurch frei gegebenen Ressourcen sorgen unter anderem dafür, dass mit Mantle wesentlich mehr der so genannten »draw calls« möglich sind als beispielsweise mit DirectX. Ein »draw call« ist immer dann gegeben, wenn CPU und GPU miteinander kommunizieren müssen, um ein bestimmtes Objekt auf dem Bildschirm darstellen zu können. AMD spricht im hauseigenen Blog-Eintrag zum Mantle-Treiber davon, dass DirectX in der Regel nicht mehr als 5.000 dieser »draw calls« gleichzeitig erreicht. Wenn in einem Spiel oder einer Szene deutlich mehr »draw calls« anfallen und die Grafikkarte eigentlich auch in der Lage dazu wäre, diese zu berechnen, dann wird der Prozessor unter DirectX zum Flaschenhals. Mit Mantle sind dagegen bis zu 100.000 simultane »draw calls« möglich, in CPU-lastigen Anwendungen wie der Techdemo Star Swarm sind die Vorteile durch die Schnittstelle von AMD deshalb besonders groß.

AMD Mantle vs. DirectX 11 : Da Mantle vor allem CPU-Flaschenhälse aus dem Weg räumt, ist der mögliche Leistungszuwachs gegenüber DirectX mit einem schnellen Prozessor wie dem Core i7 4770K geringer als mit einer langsamen CPU. Da Mantle vor allem CPU-Flaschenhälse aus dem Weg räumt, ist der mögliche Leistungszuwachs gegenüber DirectX mit einem schnellen Prozessor wie dem Core i7 4770K geringer als mit einer langsamen CPU. Dabei spielt auch das unter Mantle optimierte »Multithreading« eine wichtige Rolle, also der Umgang mit mehreren Prozessorkernen (beziehungsweise Threads). Um es deutlich zu verbessern, verändert die API von AMD unter anderem den Umgang mit den so genannten »command buffern« (zu deutsch »Befehls-Puffer«). Diese Speicherbereiche werden vom Prozessor erstellt, um anfallende Rechenaufgaben zu verwalten und nacheinander abzuarbeiten. Unter DirectX regelt der Treiber, wann welcher »command buffer«-Inhalt berechnet wird, bei Mantle legen das die Entwickler selbst fest. Dieser optimierte Umgang mit den »command buffern« bringt potenziell eine bessere Skalierung mit sich, wenn die Puffer auf mehrere CPU-Kerne verteilt sind - was sich wiederum positiv auf die Anzahl der »draw calls« auswirkt. Leistung und Ressourcennutzung der Grafikkarte hat AMD mit Mantle zwar ebenfalls optimiert, die Vorteile gegenüber DirectX sollten in GPU-lastigen Spielszenen alllerdings auch laut AMD selbst deutlich geringer ausfallen, als bei Szenarien, in denen die CPU der limitierende Faktor ist.

Der Testablauf

Bei unseren Benchmarks beschränken wir uns auf die relevanten Desktop-Grafikkarten, die bereits von AMD für Mantle optimiert worden sind, also die R9 290X, die R9 290 und die R7 260X. Um die Leistungsgewinne von Mantle in unterschiedlichen Hardware-Konstellationen einschätzen zu können, testen wir die Karten jeweils in Kombination mit verschiedenen Prozessoren. Der auf 4,5 GHz übertaktete Core i7 4770K ist eine der leistungsstärksten Desktop-CPUs, die man sich als Spieler momentan kaufen kann, er wird deshalb in vergleichsweise seltenen Fällen zum Flaschenhals. AMDs Phenom II X4 970 Black Edition stellt mit der Standardtaktrate von 3,5 GHz dagegen einen in die Jahre gekommenen, aber weit verbreiteten Prozessor der unteren Mittelklasse dar, der öfter die Leistung moderner Spiele limitiert. Zusätzlich zur Standardtaktrate lassen wir die Benchmarks mit diesem Prozessor auch unter 2,5 GHz laufen, um einschätzen zu können, wie viel Mantle aus noch älteren Prozessoren - wie etwa den beliebten Core 2 Quads von Intel - mit Taktraten von unter 3 GHz herausholen kann.

Alle Tests haben wir unter Windows 8.1 und mit der Beta-Version des Catalyst-Treibers 14.1 vorgenommen. AMD empfiehlt dringend, bereits vorhandene Treiber vor der Installation komplett zu entfernen, da es sonst teilweise zu Problemen kommt. Bislang unterstützen nur Battlefield 4 und Star Swarm die Mantle-API, daher konnten wir ausschließlich in diesen Titeln Benchmarks durchführen. Beide Anwendungen testen wir zur Vergleichbarkeit jeweils unter DirectX 11 und unter Mantle, in der Techdemo Star Swarm nutzen wir die integrierte Benchmarkfunktion.

Unsere Benchmark-Sequenz beginnt am zweiten Checkpoint der »Singapur«-Mission. Sobald wir unser Schlauchboot verlassen haben, können wir hinter einem Felsen Deckung nehmen und die ersten Gegner attackieren.

Um möglichst hohe Ähnlichkeit zwischen den verschiedenen Testdurchläufen in Battlefield 4 zu gewährleisten, messen wir die Leistung hier in der Anfangssequenz der Singleplayer-Mission »Singapur«. Dazu gehen wir bei der Erstürmung des Strands immer den etwa gleichen Weg und stoppen die Messung nach zwei Minuten (siehe auch die Bildergalerie). Weil Fraps unter Mantle nicht funktioniert (da es auf DirextX zurückgreift), gehen wir zur Messung stattdessen einen anderen Weg: Der Konsolenbefehl »PerfOverlay.FrameFileLogEnable 1« gibt in einer CSV-Datei die Frametimes an, aus denen sich wiederum die Bilder pro Sekunde berechnen lassen.

Die Auflösung unserer Benchmarks liegt stets bei den weit verbreiteten Full-HD-Maßen von 1920x1080 Pixeln. Im Falle von Star Swarm kommt das »Extreme«-Setting zum Einsatz, Battlefield messen wir zwei mal in »Ultra«: einmal mit vierfacher Kantenglättung und einmal ohne. Bei dieser Auflösung und mit solchen Einstellungen ist häufig die Grafikkarte der limitierende Faktor, was Mantle weniger entgegen kommt. Unsere Benchmarks auf der nächsten Seite klären, wie gut sich die API in solchen Szenarien noch gegenüber DirectX schlägt und in wann Sie als Spieler besonders stark von Mantle profitieren können.