Le 12 septembre dernier, le blog de l’équipe de développement du moteur javascript V8 annonçait l’optimisation de ses performances. Et les résultats annoncés sont loin d’être anodins notamment sur la mémoire et à fortiori sur la web performance qui est un sujet de plus en plus abordé.
Quésaco le moteur JavaScript V8 ?
V8 JavaScript engine est un moteur JavaScript.
Un moteur JavaScript interprète et exécute du code en langage JavaScript généralement intégré dans les navigateurs Web. A noter que le premier moteur JavaScript a été créé par Brendan Eich dont on vous a déjà parlé. Le moteur JavaScript V8 est libre et open source. En plus d’être intégré dans les navigateurs Chromium et Google Chrome, il est aussi utilisé sur la plateforme node.js.
Pourquoi on vous en parle ?
Nous ne cessons de le répéter : le JavaScript a une part trop importante dans les baisses de performance de nos pages web (même si c’est aujourd’hui avec JavaScript qu’on obtient des mesures in situ). Déjà Il y a un an, le poids du JavaScript représentait en moyenne 350ko. Ce qui représente 17,5% d’une page web moyenne d’environ 2Mo… Et encore, je me permets de souligner que nous croisons énormément de cas où l’on dépasse largement ces chiffres.
Mais au delà du poids, l’exécution du code JavaScript est tout aussi problématique. En effet, il est certainement celui qui sollicite le plus le CPU et la mémoire. Or, c’est donc sur ce dernier point que les équipes de V8 nous promettent des résultats intéressants. D’autant plus que l’on sait que les navigateurs ont de plus en plus besoin de mémoire.
Les gains attendus
Initialement prévues au sein d’une version dédiée au mobile, plusieurs optimisations ont été finalement intégrées au moteur JavaScript V8 pour tous. Elles portent entre autres, comme jolis noms : « Feedback Vector », « Lazy source positions » et « Bytecode flushing » (en voilà de jolis anglicismes qui vous permettront de briller à la machine à café !). Ces optimisations ont pour but de rendre plus léger le moteur et d’utiliser moins de mémoire.
Et les chiffres annoncés sont les suivants :
- 22% en moins d’utilisation de la mémoire que les versions précédentes,
- 12% de temps de chargement en moins grâce une vitesse d’exécution accrue,
- en moyenne la taille du moteur JavaScript a été réduite de 18 %.
- Ce qui correspond à une diminution moyenne de 1,5 Mo pour les appareils mobiles Android de bas de gamme qui disposent de 1Go de RAM ou moins.
Forcément on espère donc que cela aura un réel impact sur notre navigation mais aussi sur la planète. En effet, en faisant en sorte que le JavaScript sollicite moins le CPU et moins la mémoire, on pourrait penser que les développeurs de V8 auraient intégré l’écoconception dans leur façon de coder…
Dans tous les cas, cette avancée pour le navigateur le plus répandu ne doit pas nous absoudre de l’optimisation de notre code JavaScript, voire même de sa non-utilisation comme le prône depuis toujours notre agence web rennaise : “sobriété est mère de qualité”.
Sources : devellopez.com, v8.dev.
Photo parTim Mossholder via Unsplash