Google améliore sa machine virtuelle JavaScript V8

Dans un billet sur le blog de Chromium hier, des ingénieurs de Google ont annoncé une avancée significative en termes de performances dans un domaine bien précis : le ramasse-miettes.

chrome

Le ramasse-miettes, ou garbage collector en anglais, est un sous-système entièrement consacré au recyclage de la mémoire. Lorsqu’une application s’exécute, des zones de la mémoire vive lui sont allouées. Lorsque ces zones deviennent inutilisées, elles doivent être réclamées. Le ramasse-miettes a pour mission, dans les grandes lignes, de vérifier dans la mémoire que des zones libres n’y trainent pas, afin de les collecter et de les remettre dans le « pool » de mémoire disponible.

Le problème du ramasse-miettes est que son fonctionnement même influe sur les performances de l’application. Dans le cas du web, la poussée du WebGL et du HTML5 provoque de nouveaux besoins en termes de rapidité, ce que Google nomme « performances interactives ». Traduction : pas le temps d’attendre.

Dans le cas de machine virtuelle JavaScript V8 de Chrome, c’est la mise en place d’un ramasse-miettes incrémentiel qui doit changer la donne. Par incrémentiel, il faut comprendre qu’il collecte progressivement les zones libérées de mémoire, en alternant les cycles de ce travail avec ceux de l’application, pour ne pas provoquer de coupures dans cette dernière.

Ainsi, Google s’est basé sur les tests de performance les plus intensifs de la V8 Benchmark Suite et a obtenu un temps d’affichage d’une image de 50 ms en incluant les pauses engendrées par le ramasse-miettes, au lieu de 272 ms précédemment.

Les développeurs qui voudraient tester les nouvelles performances devront d’abord récupérer la dernière version dev de Chrome depuis cette page.

Vous n'avez pas encore de notification

Page d'accueil
Options d'affichage
Abonné
Actualités
Abonné
Des thèmes sont disponibles :
Thème de baseThème de baseThème sombreThème sombreThème yinyang clairThème yinyang clairThème yinyang sombreThème yinyang sombreThème orange mécanique clairThème orange mécanique clairThème orange mécanique sombreThème orange mécanique sombreThème rose clairThème rose clairThème rose sombreThème rose sombre

Vous n'êtes pas encore INpactien ?

Inscrivez-vous !