Présentation de WebGPU

François Beaufort
François Beaufort

Publié le 20 juillet 2023, dernière mise à jour le 11 août 2025

WebGPU est une API graphique Web qui offre des avantages considérables, tels qu'une charge de travail JavaScript considérablement réduite pour les mêmes graphiques et des améliorations de plus de trois fois dans les inférences de modèles de machine learning. Cela est possible grâce à la programmation flexible des GPU et à l'accès à des fonctionnalités avancées que WebGL ne fournit pas.

L'API est conçue pour la plate-forme Web. Elle propose une API JavaScript idiomatique, une intégration avec les promesses, la possibilité d'importer des vidéos et une expérience de développement soignée avec des messages d'erreur clairs.

WebGPU est le fruit d'un effort de collaboration du groupe communautaire "GPU for the Web" du W3C, qui inclut des contributions de grandes entreprises telles que Mozilla, Apple, Intel et Microsoft.

Prise en charge des navigateurs

Cette version initiale de WebGPU a été mise à disposition dans Chrome 113, sur les appareils ChromeOS compatibles avec Vulkan, les appareils Windows compatibles avec Direct3D 12 et macOS. La prise en charge d'Android a été ajoutée ultérieurement dans Chrome 121 sur les appareils équipés d'Android 12 ou version ultérieure et de GPU Qualcomm et ARM. Linux et une compatibilité étendue pour les plates-formes existantes seront bientôt disponibles.

WebGPU est disponible dans Firefox 141 sur Windows et Safari 26, en plus de l'implémentation dans Chrome.

Pour connaître les dernières informations sur l'état d'implémentation de WebGPU, vous pouvez consulter la page sur l'état d'implémentation de gpuweb.

Compatibilité avec les bibliothèques

De nombreuses bibliothèques WebGL largement utilisées sont en train d'implémenter la prise en charge de WebGPU ou l'ont déjà fait. Cela signifie que l'utilisation de WebGPU peut ne nécessiter qu'une seule modification de ligne.

  • Babylon.js est entièrement compatible avec WebGPU.
  • PlayCanvas a annoncé la prise en charge initiale de WebGPU.
  • TensorFlow.js est compatible avec les versions optimisées pour WebGPU de la plupart des opérateurs.
  • La prise en charge de Three.js WebGPU est en cours. Consultez les exemples.

La bibliothèque Dawn pour Chromium et la bibliothèque wgpu pour Firefox sont disponibles en tant que packages autonomes. Ils offrent une excellente portabilité et des couches ergonomiques qui font abstraction des API GPU du système d'exploitation. L'utilisation de ces bibliothèques dans des applications natives facilite le portage vers WASM via Emscripten et Rust web-sys.

Ressources

WebGPU est une technologie importante. Pour en savoir plus, nous vous recommandons les ressources suivantes :