lundi 15 octobre 2007

Firefox : Mémoire RAM et astuces

firefox ram

Firefox, et ce n'est pas un secret, est une application assez gourmande en RAM (mémoire vive). Malgré de sensibles améliorations apportées à ce niveau par les dernières versions de Firefox (et notamment les versions 2), un petit coup d'oeil sur le Gestionnaire des tâches sous XP nous indique fréquemment une occupation mémoire supérieure à 100 Mo, ce que d'aucuns pourront trouver excessif.


Sans rentrer dans le détail de la gestion de la mémoire sous Windows, il faut savoir que lorsque la quantité de RAM nominale (les barrettes installées sur l'ordi) devient insuffisante pour les applications en cours, Windows crée un espace de mémoire virtuelle (le swap) sur le disque dur, et échange donc en permanence entre la RAM et le disque, ce qui peut, à force, être source de ralentissements.

Les causes de cette gourmandise en mémoire chez Firefox sont multiples, et bien listées dans le Reducing memory usage [en] de la MozillaZine Knowledge Base, dans lequel on trouve une astuce simple et efficace pour libérer ponctuellement de la mémoire :

- Tapez about:config dans la barre d'adresse et validez, vous accédez ainsi aux paramètres de configuration,
- Sur une ligne quelconque, faites un clic droit => "Nouvelle" =>"Valeur boléenne" => entrez config.trim_on_minimize et donnez comme valeur true
- Validez et redémarrez Firefox.

Dès lors, et à chaque fois que vous minimiserez la fenêtre de Firefox, Windows libérera temporairement une importante quantité de RAM (en l'envoyant sur le swap), cette quantité étant rapatriée en RAM lorsque que l'on réouvre cette fenêtre. Par exemple et sous Windows XP SP2, la simple réduction d'une fenêtre avec une trentaine d'onglets ouverts permet de faire chuter l'occupation de la RAM de 210 Mo à moins de 30 Mo ! Cette manip peut donc s'avérer fort précieuse pour les petites configs (RAM 512 Mo), notamment pour l'utilisation ponctuelle d'applications sans fermer Firefox.

D'autres astuces permettent aussi, mais dans une moindre mesure bien sûr, d'économiser la RAM sous Firefox. On en trouvera le détail dans l'excellent billet "comment limiter l’utilisation de mémoire RAM" de l'ami Argancel, ou encore dans le très bon tuto de libellules.ch consacré à la gestion de la mémoire sous Firefox. Les extensions sont bien évidemment aussi une source importante de consommation, voire même parfois de fuites de mémoire (que l'extension Leak Monitor permet alors de déceler) et en limiter le nombre, quitte à utiliser plusieurs profils, est donc également un bon moyen d'économiser la mémoire.

Il est clair que la baisse de consommation de mémoire est l'un des objectifs majeurs des Moz Devs. Firefox 3 devrait, comme Jesse Ruderman (gourou de la sécurité chez Mozilla) l'annonce sur son blog dans ses Firefox memory usage and memory leak news [en], être plus performant sur ce point, et particulièrement après plusieurs heures d'utilisation. Une bonne nouvelle pour l'utilisateur, mais aussi en terme d'image, Firefox traînant cet appétit en mémoire un peu comme un boulet pratiquement depuis les premières versions !

MàJ 09/11/2007 : depuis quelques jours circule sur le Web une proposition pour un programme miracle sensé réduire la consommation de mémoire de Firefox : Firefox Ultimate Optimizer. Tout comme le Forum de Geckozone, je déconseille le téléchargement et l'installation de ce programme douteux.


10 commentaires:

Anonyme a dit…

Excellent billet sur Firefox, synthétique et très bien renseigné.

Gabuzo38 a dit…

Merci Fred pour ce commentaire acheument sympa ;-)

Anonyme a dit…

Ouais les problèmes de mémoire avec Firefox ça fait un bout de temps que ça dure, même si comme tu le dis ça a l'air d'aller mieux depuis la V2. J'ai essayé ton astuce, elle va bien chez moi (768 mo de ram):D

Anonyme a dit…

bonjour

J'aime bien firefox, mais j'ai toujours un problème de RAM. Avec mes 512 Mo,ça rame un peu, la consommation mémoire du processus atteignant parfois plus de 200 MO au bout de plusieurs heures. Merci pour ton astuce.

bisane a dit…

Et y a pas moyen d'enregistrer ça en permanent, en modifiant le profil par exemple ?
Ce serait plus pratique !!

Merci en tout cas pour cette astuce précieuse !

Gabuzo38 a dit…

Hello Bisane :)

Cette modif n'affecte que le profil dans lequel elle est réalisée. C'est une forme de sécurité, car en cas de problème (mémoire ou autre !) dans ton profil actuel, tu peux redémarrer avec un nouveau profil totalement vierge avec les réglages d'origine de Firefox.

bisane a dit…

Merci pour la réponse, Gabuzzo !
Mais justement, ne peut-on affecter cette modif définitivement à un profil ?

Gabuzo38 a dit…

Ben à partir du moment ou tu as créé la valeur dans about:config elle affecte directement et durablement le profil concerné. Et même définitivement, tant que tu ne mets pas la valeur à "false". Mais t'inquiètes, Firefox a bonne mémoire, il n'oubliera le réglage ;)

bisane a dit…

exact, Gabuzzo, ça s'est fixé dans le profil....
Dire que j'ai passé quelques semaines à recommencer systématiquement l'opération!!!

Merci !

Youssef R. a dit…

Merci beaucoup pour cet article , très impressionnant !