Login
Newsletter
Werbung

Di, 11. August 2015, 13:04

Software::Grafik

Khronos: Fortschritte bei Vulkan und Erweiterungen für OpenGL und OpenGL ES

Die Khronos Group, ein Branchenkonsortium zum Entwickeln von Grafik- und Parallelberechnungs-Standards, hat die Spezifikation OpenGL ES in Version 3.2 sowie Erweiterungen von OpenGL veröffentlicht. Zudem werden erste Implementationen des OpenGL-Nachfolgers Vulkan bis Ende dieses Jahres erwartet.

Vor fünf Monaten hatte die Khronos Group Vulkan als Nachfolger von OpenGL angekündigt, eine vereinheitlichte Spezifikation, die den Treiber-Overhead minimieren und die Parallelität maximieren soll. Es ermöglicht, wo nötig, die direkte Kontrolle über die GPU. Die Treiber sollen einfacher sein als bei OpenGL und die Parallelinstallation mehrerer Treiber ist bereits vorgesehen.

Die ersten Entwürfe der kommenden Spezifikation von Vulkan wurden bereits publiziert. Es handelt sich wie beim Vorgänger um eine offene Schnittstelle, die den Zugriff auf die Grafik- und Hochleistungsberechnungs-Hardware moderner Rechner noch effizienter und besser steuerbar machen soll. Dazu nutzt sie unter anderem die neu herausgegebene SPIR-V-Spezifikation, die erstmals eine standardisierte Sprache für Shader, die Prozessorelemente von GPUs, definiert. Vulkan ist allerdings noch einige Monate von der Fertigstellung entfernt.

Wie die Khronos Group jetzt aber schreibt, soll die Spezifikation und erste Implementationen von Vulkan bis zum Ende des Jahres vorliegen. Dazu wendet sich die Organisation an Entwickler auch außerhalb von Khronos, um Feedback zu erhalten. Eine freie Testsuite, um die Konformität zu Vulkan zu testen, ist geplant, die auf die Arbeit aufbauen soll, die im Android Open Source Project (AOSP) bereits mit dem Framework »drawElements Quality Program« (dEQP) geleistet wurde. Ferner soll eine Architektur für Vulkan-Tools entstehen, die auch das Debuggen und Profilerstellen ermöglicht, ohne die Geschwindigkeit der endgültigen Produkte zu beeinträchtigen. Das erste freie und herstellerübergreifende Vulkan-SDK wird von Valve zusammen mit LunarG entwickelt. Auch die grundlegenden SPIR-V-Werkzeuge sollen als freie Software entstehen, darunter Übersetzer von GLSL, OpenCL C und C++, ein Validator zur Prüfung der Korrektheit einer SPIR-V-Datei und ein SPIR-V Assembler/Disassembler.

Neues gibt es auch bei OpenGL ES. Version 3.2 der Teilmenge von OpenGL für eingebettete und mobile Systeme fügt die Funktionalität des AEP (Android Extension Pack) zur Spezifikation hinzu. Es handelt sich dabei um Erweiterungen, die ein Spielerlebnis wie auf Konsolen auf Android bringen.

Als weitere Neuerung wurden neue Erweiterungen für OpenGL spezifiziert,, die die gestiegenen Fähigkeiten der Grafikprozessoren reflektieren und nutzbar machen. Dazu gehören ein besserer Umgang mit dünn besetzten Texturen, Sperren zwischen Shadern, die garantieren, dass Algorithmen mit mehreren Durchläufen in der korrekten Reihenfolge ausgeführt werden, Handhabung von 64 Bit-Ganzzahlen in Shadern, verbeserte atomare Zähler, ein 64-Bit-Zähler, der monoton hochzählt, Kontrolle über die Zahl der Threads, die bei der Compilierung von Shadern verwendet werden, und änderbare Orte der Samples in einem Pixel, um die Antialias-Qualität mit mehreren Samples zu erhöhen. Außerdem wurde eine OpenGL ES 3.2 Kompatibilitätserweiterung definiert, die es ermöglicht, mit der Desktop-Variante von OpenGL Mobilanwendungen zu entwickeln.

Nvidia hat gleichzeitig mit der Khronos-Ankündigung bereits eine Betaversion der proprietären Treiber veröffentlicht, die die genannten Neuerungen von OpenGL und OpenGL ES implementiert. Als möglicherweise erster Hersteller hat Imagination eine provisorische Implementation von Vulkan vorgestellt, die für die PowerVR Rogue-Chips verfügbar ist.

Das Video von Imagination vergleicht beide Technologien, indem es in der linken Hälfte Vulkan und in der rechten Hälfte OpenGL ES 3.0 zeigt. Beide Seiten sollen mit äquivalentem Code erzeugt worden sein und ohne Erweiterungen laufen. Jedes Objekt wurde dabei individuell berechnet. Nach diesem Video erreicht Vulkan deutlich höhere Frameraten bei niedrigerer CPU-Last. Bei großem Detailreichtum, wo OpenGL ES in die Knie geht, kann Vulkan zudem mehr CPU-Leistung in die Waagschale werfen, um auch solche Szenen noch flüssig darzustellen.

Die Khronos Group ist ein Branchenkonsortium, in dem verschiedene Hersteller sich auf offene Standards einigen. Alle Khronos-Mitglieder können sich an der Entwicklung der spezifizierten Schnittstellen beteiligen und diese Spezifikationen später in ihrer Hardware unterstützen. Zu den von der Khronos Group verabschiedeten Standards zählen unter anderem OpenGL und sein Nachfolger Vulkan, OpenGL ES, WebGL, EGL, OpenCL, OpenMAX, OpenVG, OpenSL ES, OpenKODE und COLLADA.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung