En optimisant son moteur JavaScript V8, Google améliore la gestion de la mémoire vive de son navigateur Chrome. Des changements déjà disponibles dans la version Developer 55 du navigateur.
Ceux qui utilisent un tant soit peu Chrome de manière intensive le savent bien : le navigateur consomme beaucoup de mémoire vive, surtout lorsque de nombreux onglets et fenêtre sont ouverts. Google est bien conscient du problème et travaille dessus depuis des années. Avec la version 55 de Chrome, les choses vont s'améliorer, affirme une nouvelle fois le géant du Net.
Il explique en effet qu'il est en train de revoir la gestion de la mémoire vive de son moteur JavaScript V8. Deux axes de développement sont annoncés. Le premier concerne essentiellement les machines avec peu de mémoire vive (moins de 512 Mo) et consiste à mettre en place un ramasse-miettes (garbage collector) plus efficace et surtout plus fréquent. D'après des tests internes, le gain serait de l'ordre de 50 % en moyenne par rapport à Chrome 53.
Le second changement concerne toutes les machines. Pendant que la page est en train de se charger, V8 peut commencer à analyser le code JavaScript pour gagner du temps. Il utilise donc de la mémoire vive, « qu'il conserve longtemps après que le code a été compilé ». En libérant ces zones immédiatement, cela permet de faire baisser la consommation mémoire. Là encore, le gain serait important puisque Google annonce 40 % en moyenne suivant les sites :
Les changements avec le ramasse-miettes / la libération de la mémoire immédiatement après la compilation
La société de Mountain View explique qu'elle va continuer à plancher sur son moteur JavaScript V8 afin de continuer à réduire sa consommation en ressource, principalement pour les machines avec moins de 1 Go de mémoire vive. Pour rappel, elle a également présenté son projet Ignition cet été, qui simplifie le pipeline d'exécution. Le but est le même : réduire la consommation de mémoire vive sur des terminaux Android avec peu de mémoire vive.
En attendant, Chrome 55 est disponible sur le canal Developer, alors qu'il faudra attendre le 6 décembre pour qu'il arrive sur la banche stable, du moins selon le calendrier officiel :