Theorie und Testsystem
Mantle bietet einen verringerten Overhead und mehr Kontrolle: Die Command Buffer, welche die Schnittstelle auf Wunsch selbstständig anlegt, ermöglichen zusammen mit der nahezu linearen Skalierung über viele CPU-Kerne ein besseres Multithreading. Ein Command Buffer ist einer von vielen Speicherbereichen, die vom Prozessor erstellt, in einer Warteschlange verschachtelt und sortiert werden.
Anschließend führt die GPU die gespeicherten Befehle als sogenannten Draw Call - also Aufrufe, ein Objekt zu rendern - aus. Unter Direct3D bestimmt der Treiber, welcher Teil des Chips angesprochen wird, unter Mantle hingegen definiert der Entwickler, welche Command Buffer parallel berechnet und synchronisiert werden.
Die CPU ist kein Flaschenhals mehr
Jeder Draw Call kostet die CPU Rechenzeit, unter Direct3D sind diese Befehle zudem nicht sonderlich gut parallelisiert. Mantle ermöglicht eine drastisch höhere Anzahl an Draw Calls, um entweder mehr Befehle pro Frame vorzugeben oder bei gleicher Bildrate mehr Objekte darzustellen. Mantle ermöglicht es der CPU also, in der gleichen Zeit mehr Draw Calls an die Grafikkarte zu schicken.
Dadurch, dass die CPU mehr Command Buffer und Draw Calls zugleich auf vielen Kernen ausführen kann, beliefert sie die GPU schneller mit Daten und die Geschwindigkeit des Systems steigt messbar an. Hinzu kommen weitere Verbesserungen wie beispielsweise der Verzicht auf eine Neukompilierung von Runtime-Shadern. Mantle sorgt somit in prozessorlimitierten Spielen oder Szenen für eine höhere Bildrate, also beispielsweise in den Mehrspielergefechten von Battlefield 4.
Weniger Leistungszuwachs bei hoher Grafiklast
Der beste Prozessor bringt nur wenig, wenn er zwar Daten aufbereiten, die Grafikkarte diese aber nicht schnell genug berechnen kann. Daher hat AMD mit Mantle den DMA-Zugriff ("Direct Memory Access") auf den Speicher entkoppelt, dieser arbeitet also asynchron. Gleiches gilt für die Warteschlangen von Grafik- und Compute-Befehlen, dadurch wird die GPU etwas besser ausgelastet.
Hinzu kommt die auf zwei Ressourcen vereinfachte Verwaltung, wodurch im Endeffekt auch die Leistung im Grafiklimit etwas steigt. Zugleich bietet Mantle mehr Kontrolle über die Frame-Ausgabe, diese erfolgt bei entsprechender Programmierung gleichmäßiger als unter Direct3D.
Die Testplattform
Als Basis unserer Messungen dienen ein Core i7-3770K mit 16 GByte DDR3-1333-Arbeitsspeicher und eine Sapphire Radeon R9 290X, die wir auf die Referenzfrequenzen von 1.000/2.500 MHz (Uber-Mode) heruntertakten. Als Betriebssystem kommt Windows 8.1 in der 64-Bit-Version zum Einsatz, der Grafikkarten-Treiber Catalyst 14.1 Beta liefert die Mantle-Unterstützung.
Das für Messungen der Bildrate beliebte Programm Fraps funktioniert unter Mantle nicht. Bei Battlefield 4 nutzen wir daher den spieleigenen Konsolenbefehl "PerfOverlay.FrameFileLogEnable". Dieser gibt aus, wie viele Millisekunden es dauert, bis ein Frame berechnet ist - dadurch ist die Bildrate pro Sekunde ableitbar. Star Swarm verfügt über eine integrierte Benchmark-Funktion.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
AMDs Mantle-API im Test: Der Prozessor-Katalysator | Battlefield 4 Multiplayer-Benchmarks |
Ist vielleicht immer noch ein Rätsel - aber witzig ist, dass 3Dfx damals für Glide das...
Viele Fehler in CPUs merkt man auch nicht direkt. Mal fällt z.B. der Temperatursensor...
Ja, das sehe ich genauso. Ich wollte nur darauf hinaus, dass die Berichterstattung über...
Same here - das wird allerdings kommen und zwar wahrscheinlich recht bald. AMD ist da ja...