NEWS

Mantle-API soll Videospeicher im Multi-GPU-System verdoppeln (Update)

Portrait des Authors


Mantle-API soll Videospeicher im Multi-GPU-System verdoppeln (Update)
71

Werbung

Mit der Mantle-API konnte AMD beweisen, dass die Grafik-Schnittstelle einen großen Einfluss auf die Performance haben kann. Eine Reduzierung überschüssiger Befehle kann Leistungsschübe bis in den zweistelligen Prozentbereich bringen. Diese Vorteile macht sich auch Microsoft mit DirectX 12 zu Nutze. In Kürze also wird jeder Spieler vermutlich in den Genuss einer deutlich besseren Nutzung der zur Verfügung stehenden Ressourcen kommen.

Zwei AMD Radeon R9 290X

Zwei AMD Radeon R9 290X

Doch mit der Mantle-API will AMD noch weiter gehen und auch Probleme in Angriff nehmen, an die bisher noch niemand so recht gedacht hat. So mag ein Multi-GPU-System den zur Verfügung stehenden Speicher verdoppeln, davon ist in der Praxis aber meist wenig zu spüren, da Zuteilungen von Texturen und weiteren Daten jeder GPU gegenüber gemacht werden. Zwei AMD Radeon R9 290X mit jeweils 4.096 MB an Grafikspeicher müssen in Sachen Speicher also weiterhin wie eine Grafikkarte mit 4.096 MB Speicher behandelt werden. Grund hierfür ist die verwendete Technik zur Aufteilung der Render-Aufgaben namens Alternate Frame Rendering (AFR). Beim AFR rendern zwei oder mehr GPUs jeweils im Wechsel einen kompletten Frame, was auch erklärt, warum alle notwenigen Daten jeder GPU zur Verfügung stehen müssen und damit eventuell doppelt im Multi-GPU-System vorhanden sind. Hier unterscheiden sich CrossFire und SLI nicht. Weitere Nachteile von AFR sind das Entstehen von Mikrorucklern und einem Input-Lag.

Eine überarbeitete Version des dazugehörigen SDKs für Mantle wurde den Spieleentwicklern bereits zugänglich gemacht. Darin kann für ein CrossFire-System auch das Split Frame Rendering (SFR) verwendet werden, was nicht neu ist, nun aber von einigen Tricks profitierien soll. Zwei gleichstarke GPUs können sich im SFR einen ebenso in allen Bereichen ähnlich kompakte Renderszene entsprechend aufteilen. Bei zwei GPUs rendert die erste beispielsweise den oberen Bereich des Frames und die zweite GPU den unteren. Am Ende werden beide Teile zusammengesetzt und der fertige Frame ist im Idealfall in der Hälfte der Zeit berechnet worden. SFR reduziert ein eventuell vorhandenes Input-Lag deutlich. Auch Mikroruckler sind damit weniger ein Problem.

AMD GPU14 Tech Day: Mantle

AMD GPU14 Tech Day: Mantle

Beim aufgeteilten Rendering eines Frames kommt nun auch die Mantle-API ins Spiel, die jeder GPU und dem dazugehörigen Speicher nun nur noch die Daten zukommen lässt, die auch benötigt werden. Theoretisch kann damit der zur Verfügung stehende Grafikspeicher verdoppelt werden. Wird eine Textur aber beispielsweise von beiden GPUs benötigt, muss sie natürlich auch in den jeweils verwendeten Grafikspeicher dieser beiden GPUs geladen werden. Aber selbst wenn der Idealfall nicht eintritt, bedeutet diese Zuteilung der Daten eine wesentliche Vergrößerung des zur Verfügung stehenden Grafikspeichers.

Spieleprogrammierer müssen ihre Spiele aber auf diesen neuen Modus anpassen. Sowohl das Split Frame Rendering als auch das neue SDK müssen verwendet werden, damit die Methodik funktionieren kann. Derzeit ist nicht bekannt, welches Entwicklerstudio bereits an einer konkreten Umsetzung arbeitet. Erwähnt wird auch eine eventuelle Umsetzung der Technik für DirectX 12.

Update:

John Kloetzli, Grafik-Programmierer bei Firaxis Games und bei Civilization Beyond Earth für die Grafik-Engine verantwortlich, hat sich in einem Blogpost ausführlicher zum Thema Speichernutzung und Mantle-Support geäußert. An dieser Stelle wollen wir noch einmal auf einen Grafik-Vergleich verweisen, in dem auch erste Mantle-Benchmarks zu Civilization Beyond Earth enthalten sind. Laut Kloetzli eines der Hauptargumente für die Verwendung von Split Screen Rendering war demnach der Input-Lag. Dier geringere Framerate im Vergleich zu AFR habe man in Kauf genommen. Außerdem sei die SFR-Implementation derzeit auf die Verwendung von zwei GPUs limitiert. Die deutlich komplexere Methodik ein SFR sinnvoll auf zwei GPUs zu verteilen, sei aber ein Teil der Mantle-Umsetzung und daher immer im Hinterkopf gewesen.

Um Civilization Beyond Earth im SFR zu verwenden, muss das Spiel in seiner Mantle-Version gestartet und im "Graphics Initialization File" der Wert "Enable MGPU" auf 1 gesetzt werden.

Quellen und weitere Links KOMMENTARE (71) VGWort