3 votes

Firefox : navigateur plus rapide en déplaçant le cache vers la RAM... des inconvénients ?

J'ai lu un article de DownloadSquad, Accélérer le temps de chargement des pages Firefox sans utiliser de disque RAM Il a recommandé une option pour Mozilla Firefox qui déplace le cache dans la mémoire vive. Je comprends pourquoi cela accélérerait les choses ; pourquoi cette option n'est-elle pas activée par défaut alors ?

Y a-t-il un inconvénient ?

2voto

Daniel Von Fange Points 123

Je pense qu'il y a deux raisons pour lesquelles il n'est pas activé par défaut :

  • Les gens se plaignent déjà de la quantité de mémoire utilisée par Firefox.
  • Chaque processus dispose d'une quantité maximale de mémoire qu'il peut (facilement) allouer. L'utilisation d'une partie de cette mémoire pour un cache augmente le risque d'atteindre cette limite, ce qui peut entraîner le plantage du processus. (Ce n'est un problème que pour les systèmes 32 bits, mais c'est probablement le cas de la plupart des gens).

Ces problèmes sont exacerbés lorsque Firefox "perd de la mémoire", comme c'est apparemment le cas (ce qui conduit au premier problème).

Tant que Firefox tient tout seul dans la mémoire, je n'y vois pas trop d'inconvénients. Le système d'exploitation gère la quantité de mémoire de chaque processus dans la RAM et, si nécessaire, les pages sur le disque. Donc, dans le pire des cas, le cache de Firefox va sur le disque. Si vous allouez trop peu de mémoire au cache, vous risquez de voir les performances diminuer, puisqu'il sera obligé d'aller chercher les données sur le réseau, ce qui est plus lent que le disque.

L'interaction avec d'autres processus et ce qui est paginé quand est difficile à généraliser de manière empirique. Ainsi, si vous utilisez d'autres programmes en plus de Firefox, qui utilise désormais plus de mémoire, vous pourriez constater des effets à ce niveau.

Mais n'hésitez pas à l'essayer.

1voto

studiohack Points 13415

L'inconvénient partiel est qu'il consommera plus de RAM, en fonction du nombre d'onglets ouverts... De plus, si vous avez beaucoup d'onglets ouverts, et de nombreux programmes en cours d'exécution, Firefox ralentira probablement l'ouverture/le rafraîchissement des pages web...

même article sur Lifehacker.com : http://lifehacker.com/5687850/speed-up-firefox-by-moving-your-cache-to-ram-no-ram-disk-required

0voto

Giuseppe R Points 1325

Il ne peut s'agir de la valeur par défaut, car vous ne pouvez pas supposer que chaque utilisateur disposera de tonnes de mémoire vive et d'un système d'exploitation 64 bits. De plus, vous voudrez éventuellement synchroniser le cache sur le disque, afin de ne pas perdre tout votre cache lorsque vous éteignez Firefox ou votre ordinateur.

Je pense qu'une meilleure approche consiste à laisser le cache sur le système de fichiers, mais à utiliser un pilote de système de fichiers plus intelligent qui peut recevoir des indications sur les fichiers qui ont une faible priorité pour être synchronisés sur le disque, de sorte que de nombreuses modifications peuvent être accumulées en mémoire sur une longue période de temps sans que les modifications soient engagées sur un support physique. Cela permettrait d'obtenir des performances comparables à celles d'un disque RAM sans avoir à modifier l'application.

Si vous êtes sous Windows, vous risquez d'être bloqué à moins d'utiliser un pilote de système de fichiers tiers (ou d'essayer ReFS dans Windows Server 8 ; je ne suis pas sûr qu'il fasse des commits retardés). Si vous êtes sous Linux, vous pouvez essayer certaines fonctionnalités de ext4 telles que les commits retardés et l'allocation retardée ; vous pouvez également désactiver la fonctionnalité de sécurité qui empêche les fichiers d'être validés sur le disque jusqu'à ce que fsync() soit appelé sur eux. Cela réduit la sécurité des données dans le cas général, mais pour un cache, vous ne vous souciez vraiment pas de perdre les données à cause d'une panne de courant aléatoire, n'est-ce pas ? Ce n'est pas précieux et vous êtes plus intéressé par la performance que par l'intégrité des données. Si le cache est corrompu, FF peut simplement le supprimer et recommencer.

Quant à mon idée originale d'un système de fichiers capable d'accepter un "indice" indiquant que certains fichiers n'ont pas de valeur et n'ont pas besoin d'être transférés à moins qu'il n'y ait une pression de mémoire qui pousse les pages hors de la mémoire : ce serait bien, mais je ne sais pas si des systèmes de fichiers actifs sur n'importe quelle plate-forme le font. Cela ressemble à quelque chose qui doit être ajouté aux normes POSIX. La plupart des systèmes de fichiers actuels violent les normes en synchronisant automatiquement les données sur le disque toutes les N secondes (généralement entre 5 et 15 secondes) même si le programme n'appelle pas fsync(), nous avons donc besoin d'un moyen de lui dire "whoa whoa attendez une minute, je ne me soucie vraiment pas de ces fichiers et je préférerais que vous ne les synchronisiez PAS à moins que le système ne s'éteigne". C'est un détail de la conception du système de fichiers... je ne sais pas si vous êtes intéressé par ce genre de choses :)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X