Veröffentlicht am 7. Februar 2024, zuletzt aktualisiert am 17. Oktober 2025
In diesem Dokument wird erläutert, warum WebGPU im Chrome-Browser möglicherweise nicht funktioniert oder nicht wie erwartet funktioniert. Außerdem werden klare Schritte zur Behebung der Probleme beschrieben, sofern dies möglich ist.
navigator.gpu ist nicht definiert
Das folgende Beispiel zeigt einen JavaScript-Fehler, der auftreten kann, wenn gpu
in navigator
nicht verfügbar ist:
const adapter = await navigator.gpu.requestAdapter();
cancel Uncaught TypeError: Cannot read properties of undefined (reading 'requestAdapter')
Das kann einen der folgenden Gründe haben. Prüfen Sie die folgenden Punkte in dieser Reihenfolge:
Für WebGPU ist Chrome 113 oder höher unter ChromeOS, macOS und Windows sowie Chrome 121 oder höher unter Android erforderlich. Prüfen Sie Ihre Version unter
chrome://version
und aktualisieren Sie sie gegebenenfalls.WebGPU ist nur in sicheren Kontexten verfügbar. Wenn Sie Ihren Code über ein unsicheres Protokoll (z. B.
http:
,file:
) bereitstellen, verwenden Sie entweder das sichere Protokollhttps:
oder beheben Sie das Problem während der Entwicklung Ihrer Web-App auf eine der folgenden Arten:Stellen Sie Ihren Code lokal auf
http://localhost
oderhttp://127.0.0.1
mit einem der folgenden Befehle bereit:npx http-server
oderpython3 -m http.server
.Fügen Sie die Quelle der Liste „Unsichere Quellen, die als sicher behandelt werden“ von
chrome://flags/#unsafely-treat-insecure-origin-as-secure
hinzu und starten Sie Chrome neu.Installieren Sie Node.js und führen Sie
npx servez --ssl
aus, um Ihren Ordner über HTTPS mit einem gefälschten Zertifikat bereitzustellen. Sie erhalten in Chrome weiterhin eine Warnung, die Sie umgehen können, indem Sie auf „Erweitert“ und dann auf „Trotzdem fortfahren“ klicken.Stellen Sie Ihren lokalen Webserver mit ngrok im Internet bereit.
Der GPU-Adapter ist null
Das folgende Beispiel zeigt einen JavaScript-Fehler, der auftreten kann, wenn der Adapter, den Sie durch Aufrufen von requestAdapter()
erhalten, null ist:
const adapter = await navigator.gpu.requestAdapter();
const device = await adapter.requestDevice();
cancel Uncaught TypeError: Cannot read properties of undefined (reading requestDevice)
Das kann einen der folgenden Gründe haben. Prüfen Sie die folgenden Punkte in dieser Reihenfolge:
WebGPU ist deaktiviert, wenn der Nutzer in
chrome://settings/system
die Option „Grafikbeschleunigung verwenden, falls verfügbar“ deaktiviert hat. Prüfen, ob diese Einstellung deaktiviert ist, und sie wieder aktivierenWebGPU wird auf dieser Plattform noch nicht unterstützt. Sie können das Flag
chrome://flags/#enable-unsafe-webgpu
aktivieren und Chrome neu starten. Für die experimentelle Linux-Unterstützung müssen Sie auch das Flagchrome://flags/#enable-vulkan
aktivieren. Weitere Informationen finden Sie unter WebGPU-Unterstützung in Headless Chrome.Die GPU-Hardware wurde explizit auf die Sperrliste gesetzt. Wenn in
chrome://gpu
die Meldung „WebGPU has been disabled via blocklist or the command line“ (WebGPU wurde über die Sperrliste oder die Befehlszeile deaktiviert) angezeigt wird, können Sie die Sperrliste für WebGPU-Adapter deaktivieren, indem Sie das Flagchrome://flags/#enable-unsafe-webgpu
aktivieren und Chrome neu starten. Sie können die integrierte Liste für das Software-Rendering auch überschreiben, indem Sie das Flagchrome://flags/#ignore-gpu-blocklist
aktivieren und Chrome neu starten.Für die in
requestAdapter()
übergebenen Optionen ist kein passender GPU-Adapter vorhanden.requestAdapter()
mit verschiedenen Optionen aufrufen:Für WebGPU ist eine GPU (entweder Hardware oder softwareemuliert) erforderlich. Unter
chrome://gpu
können Sie prüfen, ob Chrome eine GPU erkennt.Der GPU-Prozess ist mehrmals abgestürzt. Sie können die Seite neu laden oder Chrome neu starten. Weitere Informationen finden Sie unter Best Practices für WebGPU-Geräteverlust.
WebGPU ist langsamer als WebGL
Öffnen Sie
chrome://gpu
und prüfen Sie, ob „WebGPU: Hardware accelerated“ angezeigt wird. Wenn Sie „WebGPU: Software only, hardware acceleration unavailable“ (WebGPU: Nur Software, Hardwarebeschleunigung nicht verfügbar) sehen, müssen Sie möglicherweise Ihre GPU-Treiber aktualisieren.Wenn Sie WebGL-Konzepte direkt in WebGPU übersetzen, nutzen Sie möglicherweise nicht alle einzigartigen Optimierungen von WebGPU. From WebGL to WebGPU
Windows-spezifische Einschränkungen
Beachten Sie die folgenden Einschränkungen bei der Verwendung von WebGPU auf Windows-Geräten:
Chrome unterstützt die gleichzeitige Verwendung mehrerer GPU-Adapter nicht. Weitere Informationen finden Sie unter chromium:329211593.
Chrome verwendet immer denselben GPU-Adapter, der für andere Chrome-Arbeitslasten zugewiesen wurde. Bei Laptops ist das in der Regel die integrierte Grafikkarte, da sie weniger Strom verbraucht. Das bedeutet, dass die Option
powerPreference
keine Auswirkungen hat, wennrequestAdapter()
aufgerufen wird. Sie können die Verwendung der leistungsstarken GPU erzwingen, sofern verfügbar, indem Sie das Flagchrome://flags/#force-high-performance-gpu
aktivieren und Chrome neu starten.