Au niveau de la consommation mémoire, les développeurs Firefox ont identifié ce qui semble être un gros problème qui concerne plus précisément le moteur JavaScript. Un problème de fragmentation de la mémoire dû au fait que le tas JavaScript est divisé en morceaux de 1 Mo.

" Souvent, vous vous retrouvez avec beaucoup de morceaux presque vides, mais il y a un petit nombre d'objets à longue durée de vie qui sont conservés, et cela les empêche d'être libérés ", explique le développeur Nicholas Nethercote.

Sur l'idée du dénommé Gregor Wagner, un patch a ainsi été élaboré afin de réduire la fragmentation en tenant mieux compte des objets système. " Des parties de Firefox sont implémentées en JavaScript, et beaucoup d'objets appartiennent à Firefox lui-même. Gregor a ajouté une ségrégation des morceaux. Les objets appartenant à Firefox sont mis dans un groupe de morceaux, et tous les autres objets ( dont ceux des sites ) sont mis dans un second groupe. Cela fait une énorme différence ".

D'après certains tests, la taille du tas JavaScript est jusqu'à cinq fois plus petite, passant par exemple de 108 Mo à 21 Mo après la fermeture d'un certain nombre d'onglets et la sollicitation du sous-système de gestion automatique de la mémoire ( garbage collector ; ramasse-miettes ). Un ramasse-miettes qui même sans être forcé intervient de manière périodique.

Le patch devrait donc conduire Firefox à consommer moins de mémoire. Des changements qui ne seront a priori visibles qu'à partir de Firefox 7 ( la version actuelle est Firefox 5 ; la bêta de Firefox 6 est imminente ).

Cette amélioration fait partie de l'initiative MemShrink lancée le mois dernier.