Software::Grafik
Valve will 3D-Geschwindigkeit von Mesa verbessern
Der Spiele-Hersteller Valve finanziert Arbeiten, die die Geschwindigkeit der freien OpenGL-Implementation Mesa deutlich erhöhen soll.
LunarG - lunarg.com
Architektur von Glassy Mesa
Der Spiele-Hersteller Valve unternimmt erhebliche Anstrengungen, um Linux als Spiele-Plattform zu etablieren. Mehr als 500 Linux-Titel findet man inzwischen auf der Spiele-Plattform
Steam. Jetzt hat Valve eine Entwicklung in Auftrag gegeben, um die Geschwindigkeit der freien OpenGL-Implementation
Mesa deutlich zu steigern. Den Auftrag erhielt die Firma
LunarG, die mit
Lunar Glass bereits eine Technologie entwickelt hat, die die Entwicklung neuer Grafiktreiber signifikant vereinfachen soll.
Im Projekt Glassy Mesa geht es darum, die Lunar Glass Technologie in Mesa zu integrieren. Die Geschwindigkeit, gemessen in Frames pro Sekunde, soll gesteigert werden, indem der Shader-Code schneller gemacht wird.
Lunar Glass besteht aus einem Frontend glslang und dem LLVM-Compiler mit einigen Änderungen, womit Programme für Shader compiliert werden können. glslang liest Programme, die in der von der Khronos Group standardisierten Shader-Spezifikation GLSL geschrieben sind, validiert sie und meldet eventuelle Fehler. glslang ist freie Software.
Glassy Mesa besteht im Wesentlichen aus einem Übersetzer, der die Lunar Glass-Code-Repräsentation in eine Form übersetzt, die die GLSL-Komponente von Mesa versteht. Die Arbeit ist noch lange nicht abgeschlossen, erste Tests konnten aber mittlerweile durchgeführt werden und zeigen, dass mit bemerkenswerten Ergebnissen zu rechnen ist. Eine Steigerung der Framerate in Left 4 Dead 2 um 15 bis 22% wurde gemessen, wobei komplexere Frames offenbar mehr profitieren. Die Messung wurde auf einem i965 Haswell-Grafikprozessor durchgeführt. Dieses Ergebnis wurde in nur zehn Wochen von einem einzigen Entwickler erzielt und lässt nach Angaben von LunarG darauf hoffen, dass noch weitere Steigerungen möglich sind.
Auch wenn der Code noch lange nicht fertig ist, kann er jetzt schon auf Github begutachtet werden. Eine kurze Präsentation mit weiteren Informationen ist als PDF-Datei verfügbar.