Nach jahrelangen Entwicklungen liefert das Chrome-Team WebGPU, die leistungsstarke 3D-Grafiken und parallele Datenberechnungen im Web ermöglicht.
Das Chrome-Team freut sich, Ihnen mitteilen zu können, dass WebGPU jetzt standardmäßig in Chrome 113 verfügbar ist, das sich derzeit in der Betaphase befindet. WebGPU ist eine neue Webgrafik-API, die erhebliche Vorteile bietet, zum Beispiel eine deutlich geringere JavaScript-Arbeitslast für dieselbe Grafik und mehr als dreimal Verbesserungen bei Inferenzen von ML-Modellen. Dies ist aufgrund einer flexibleren GPU-Programmierung und des Zugriffs auf erweiterte Funktionen möglich, die WebGL nicht bietet.
Diese erste Version von WebGPU ist für ChromeOS, macOS und Windows verfügbar. Weitere Plattformen werden im Laufe des Jahres folgen.
Webgrafiken neu definiert
WebGPU ist eine neue API für das Web, die moderne Hardwarefunktionen bietet und Rendering- und Rechenvorgänge auf einer GPU ermöglicht, ähnlich wie Direct3D 12, Metal und Vulkan. Im Gegensatz zur WebGL-Familie von APIs bietet WebGPU Zugriff auf erweiterte GPU-Funktionen und erstklassige Unterstützung für allgemeine Berechnungen auf der GPU. Die API wurde im Hinblick auf die Webplattform entwickelt und umfasst eine idiomatische JavaScript API, Integration mit Promise, Unterstützung für das Importieren von Videos und eine ausgefeilte Entwicklungsumgebung mit hervorragenden Fehlermeldungen.
Diese erste Version von WebGPU dient als Baustein für zukünftige Updates und Verbesserungen. Die API bietet erweiterte Grafikfunktionen und Entwickler können Anfragen für zusätzliche Funktionen senden. Außerdem plant das Chrome-Team, tieferen Zugriff auf Shading-Kerne für noch mehr ML-Optimierungen und zusätzliche Ergonomie in WGSL, der WebGPU Shading Language, bereitzustellen.
WebGPU ist das Ergebnis der gemeinsamen Initiative der "GPU for the Web" Community Group des W3C, zu der auch namhafte Unternehmen wie Mozilla, Apple, Intel und Microsoft beigetragen haben. Nach sechs Jahren Entwicklungsarbeit (90 Beitragende, 2.000 Commits, 3.000 Ausgaben) ab dem ersten Design im Jahr 2017 ist die erste Implementierung jetzt in Chrome verfügbar. Firefox und Safari werden bereits unterstützt.
Sowohl die Dawn-Bibliothek für Chromium als auch die Bibliothek wgpu für Firefox sind als eigenständige Pakete verfügbar und bieten hervorragende Portabilitäts- und ergonomische Ebenen, mit denen Betriebssystem-GPU-APIs abstrahiert werden. Die Verwendung dieser Bibliotheken in nativen Anwendungen erleichtert außerdem die Portierung zu WASM über Emscripten und Rust web-sys.
Unterstützte Browser
Diese erste Version von WebGPU ist in Chrome 113 auf ChromeOS-Geräten mit Vulkan-Unterstützung, auf Windows-Geräten mit Direct3D 12-Unterstützung und auf macOS-Geräten verfügbar. Linux und Android sowie eine erweiterte Unterstützung für bestehende Plattformen folgen bald.
Neben der ursprünglichen Implementierung in Chrome ist WebGPU auch in Firefox und Safari in der Entwicklung.
Bibliotheksunterstützung
Viele weit verbreitete WebGL-Bibliotheken arbeiten bereits an der Implementierung von WebGPU-Unterstützung oder haben dies bereits getan. Das bedeutet, dass bei der Verwendung von WebGPU möglicherweise nur eine einzige Zeilenänderung erforderlich ist:
- Babylon.js verfügt bereits über vollständige WebGPU-Unterstützung.
- PlayCanvas hat die anfängliche Unterstützung von WebGPU angekündigt.
- TensorFlow.js unterstützt WebGPU-optimierte Versionen der meisten Operatoren.
- Unterstützung für Three.js-WebGPU wird bald bereitgestellt, siehe Beispiele.
Ressourcen
WebGPU ist eine bedeutende Technologie. Wir empfehlen die folgenden Ressourcen, um mehr zu erfahren:
- Sie können sich die W3C-Spezifikationen für WebGPU und WGSL ansehen.
- Experimentiere mit Beispielen und entdecke WGSL bei einer Tour.
- Weitere Informationen finden Sie in der MDN-Dokumentation.
- Weitere Informationen finden Sie in der offiziellen Erklärung und den Best Practices.
- Weitere Informationen zu GPU-Computing und mehr.
Danksagung
Vielen Dank an alle Chromium-Beitragenden und insbesondere an die Intel-Mitarbeiter für ihre wertvolle Unterstützung bei der Umsetzung.