Swiftshader: 3D-Grafik auf der CPU anstelle der GPU. PCGH macht den Test. [Quelle: siehe Bildergalerie]
Beim
Swiftshader handelt es sich um einen Software-
Rasterizer. "Software" bedeutet in diesem Fall, dass die Recheneinheiten der Grafikkarte unangetastet bleiben und die anfallende Arbeit stattdessen dem Hauptprozessor aufgebürdet wird. Und zwar alles: Die CPU kümmert sich nicht nur um Transformation, Beleuchtung (
T&L), sondern auch um die Texturfilterung, Pixel-Shading und natürlich die typischen Berechnungen für KI, Sound und Physik.
Sie ahnen sicher, dass dafür kein
Pentium II ausreicht. Der Hersteller
Transgaming wirbt jedoch damit, dass der Swiftshader 2.0 bis zu 50 Mal schneller arbeitet als Microsofts
Direct3D-Referenz-Rasterizer. Dank Mehrkernunterstützung und
SSE-Optimierungen soll so die Leistung von Low-End-GPUs erreicht werden. Die Haken: "Schnell" ist das gewiss immer noch nicht, zudem unterstützt die aktuelle Version maximal das
Shader Model 2.0. Natürlich ist die Software nicht als Grafikkarten-Ersatz für Spieler gedacht, sondern richtet sich primär an Entwickler. Diese können damit relativ schnell 3D-Rendering ausführen, selbst wenn keine 3D-Beschleunigung verfügbar ist.
Swiftshader in der Praxis Wenn Sie die Software testen möchten, dann laden Sie sich die Demo-Version des
Swiftshader 2.0 beim Hersteller herunter. Hierbei ist stets ein Wasserzeichen eingeblendet, außerdem ist die Konfiguration nur über Ini-Einträge möglich. Um die CPU zur GPU umzufunktionieren, ist es lediglich nötig, die im Download enthaltene d3d8.dll und d3d9.dll samt swiftshader.ini in das Hauptverzeichnis der angestrebten 3D-Anwendung zu kopieren. Letztere suchen oft zuerst im eigenen Verzeichnis nach diesen Dateien und nutzen sie anschließend. Haben Sie nach dem Start kein Wasserzeichen in der linken unteren Bildecke, nutzt das Spiel die Dateien aus dem System-Verzeichnis und die Grafikkarte rendert.
[index]
Benchmarks: Swiftshader Wir haben uns die Leistung des Software-Renderers genauer angesehen. Zum Einsatz kamen dabei der
3DMark2001SE,
3DMark03,
3DMark05 und
Crysis. Die Leistung ist auf den ersten Blick erschreckend schwach: Selbst der auf 3,9 GHz übertaktete
Core 2 Quad (
Yorkfield) schafft nur knapp über 2.500 Punkte im 3DMark2001 SE. Das ist etwa das Leistungsniveau neun Jahre alter Grafikkarten.
TNT 2,
Voodoo3 & Co. erreichten anno 1999 ähnliche Punktzahlen. Im 3DMark05 fällt bei mit diesem Takt die 1.000-Punkte-Marke.
Der Vergleich mit Unterstützung der GPU offenbart ebenfalls interessante Zahlen. Werden Transformation und Beleuchtung allein von der CPU übernommen, schafft unser High-End-Prozessor rund 24.500 3D Marks. Das entspricht dem Faktor 10 gegenüber reinem Software-Rendering mittels Swiftshader. Übernimmt die
Geforce 8800 GTX auch noch das
Vertex Shading, ist das System schon 27x mal schneller. Bei Crysis ist der Unterschied deutlich kleiner: Eine
Geforce 8500 GT schafft in 800x600 und niedrigen Details durchschnittlich 30 Fps, der 3,8-GHz-Yorkfield immerhin 4,6 Fps (Faktor 6,5).
Bildvergleich: GPU versus CPU Unsere Gegenüberstellung offenbart, dass der Swiftshader eine hohe Renderqualität ausgibt. Zwar filtert er in den Standardeinstellungen nur
bilinear, der Rest der Szenen ist aber mit den Berechnungen einer "echten" Grafikkarte vergleichbar. FSAA und anisotrope Filterung (AF) sind über den Prozessor übrigens nicht möglich.
Update vom 09. April:
Wir haben weitere Tests mit AMD-Systemen durchgeführt. Die Werte sind sehr niedrig, der Swiftshader scheint speziell auf Intels Architektur angepasst zu sein. Außerdem harmoniert das Programm nicht mit dem Phenom: Mit vier Threads funktioniert gar nichts, erst bei einem kommt es zu (ruckeliger) Darstellung. Die neuen Benchmarks (vorne in der Galerie) beschränken sich daher auf einen Athlon 64 X2 6000+. [index]
Bildergalerie zum Artikel