Firefox 141 pour Windows intègrera l’API WebGPU
En retard, mais pas le dernier

La prochaine version du navigateur, prévue pour le 22 juillet, prendra en charge une API graphique dont le développement est le fruit d’un effort collectif. Bien que Chrome en soit doté depuis longtemps, l’arrivée de WebGPU dans Firefox reste un petit évènement.
« Après des années de développement, nous allons lancer WebGPU sur Windows dans Firefox 141 ! », s’est exclamé hier l’équipe Mozilla GFX. Cette API, qui prend la suite de WebGL, fournit un accès beaucoup plus direct aux capacités des GPU. À la clé, des améliorations importantes de performances, aussi bien sur les calculs graphiques que sur d’autres liés à l’IA, dont l’inférence.
Millefeuille graphique
Cette interface de programmation est le fruit d’un effort conjoint au sein du W3C et réunissant des entreprises comme Mozilla, Apple, Intel et Microsoft, l’ensemble étant largement tracté par Google. L’objectif était de donner aux navigateurs un accès plus moderne au matériel, dans le sillage des API de bas niveau apparues sur les différentes plateformes. WebGPU dépend d’ailleurs de ces dernières, en fournissant un lot de capacités, selon son implémentation bien sûr.
L’ensemble n’est pas si simple. Sur toute plateforme, on trouve ainsi le pilote responsable de l’exploitation du GPU. Charge à lui d’exposer de transmettre les instructions à la puce. Au-dessus, l’API graphique native (Vulkan sur Linux par exemple) est une autre brique essentielle. Dans un système d’exploitation, elle expose les capacités, dans lesquelles les applications vont venir piocher. Puis vient WebGPU dans le navigateur ou, plus précisément, son implémentation. C’est elle qui créera des appareils logiques (logiciels) pour chaque application en ayant besoin.
Si vous utilisez Chrome ou un navigateur basé sur Chromium, vous pouvez déjà observer les possibilités de WebGPU via le site dédié. Chrome fournit en effet cette capacité depuis deux ans. Pourquoi tout ce temps chez Mozilla ? On ne sait pas exactement, mais Google y a consacré davantage de moyens, la plateforme web représentant le cœur de ses activités. Apple, bien qu’ayant participé au développement de l’API, ne l’intègrera que dans Safari 26 cet automne.
Il reste « beaucoup de travail »
Selon Mozilla, WebGPU est une API « vaste et complexe ». Les effets ont été concentrés assez logiquement sur les fonctions les plus évidentes, afin « que les applications et démonstrations WebGPU à haute visibilité fonctionnent sans problème ». Selon Mozilla, tout devrait donc bien se passer dans la plupart des cas.
L’équipe explique également qu’il reste « beaucoup de travail », aussi bien sur les performances que la conformité avec la spécification. Par exemple, le navigateur utilise une communication inter-processus sans tampon pour transmettre les requêtes à la sandbox du GPU. Ce problème a déjà été corrigé, mais la solution ne sera déployée que dans Firefox 142, avec des gains significatifs de performances.
En outre, le navigateur ne dispose pas d’un moyen moderne de savoir quand un GPU a terminé une opération et introduit des intervalles pour vérifier, ce qui entraine des latences. Les développeurs se penchent actuellement sur le problème et explorent diverses solutions. De même, Firefox ne prend pas encore en charge la méthode importExternalTexture de WebGPU, qui permet au GPU la lecture vidéo décompressée directement depuis le décodeur.
Windows d’abord, les autres d’ici la fin de l’année
Le support de WebGPU ne sera également disponible que pour Windows lorsque Firefox 141 sera disponible le 22 juillet. Une question de priorité pour Mozilla : c’est là que se trouve l’écrasante majorité des utilisateurs. L’équipe précise cependant que des versions Mac et Linux sont prévues « dans les mois à venir » et qu’il est possible de les tester dans le canal Nightly du navigateur. Le support sera aussi étendu à Android.
Enfin, Mozilla indique que l’implémentation de WebGPU dans Firefox est basée sur WGPU, un projet indépendant et écrit en Rust. Il permet d’offrir une interface unifiée pour exposer les capacités sous-jacentes des API bas niveau en fonction de la plateforme utilisée : Direct3D 12 sur Windows, Metal sur macOS et Vulkan sur Linux. Mozilla contribue activement au projet, évoque une communauté très vivante et invite les personnes intéressées à se pencher sur WGPU pour participer à son développement.