Lorsque je laisse plusieurs onglets ouverts dans Google Chrome pendant des heures / jours, je remarque que certaines pages finissent par utiliser d'énormes quantités de RAM, au point où l'ensemble du système d'exploitation (XP) ne répond plus en raison de la pagination. Quand j'ai de la chance, je peux enfin mettre en signet la liste des URL ouvertes, fermer Chrome et recommencer; Lorsque je ne le suis pas, je dois simplement tuer Chrome et espérer pouvoir récupérer la liste des URL ouvertes.
- Pourquoi donc? Des fuites de mémoire dans les plug-ins?
- Existe-t-il un moyen de configurer Chrome de sorte qu'un seul onglet / page n'utilise pas plus qu'une quantité définie de RAM?
Merci.
google-chrome
OverTheRainbow
la source
la source
Réponses:
Je pense que vous devriez simplement choisir d'acheter autant de RAM que votre système d'exploitation peut gérer. Vous ne devez pas limiter l'utilisation de la RAM de Chrome, car cela ne fera que ruiner votre expérience de navigation sur le Web. En supposant que vous utilisez votre ordinateur pour surfer sur Internet la plupart du temps, vous devez laisser Chrome obtenir toutes les ressources dont il a besoin afin de fournir les performances que vous souhaitez pour que vous puissiez "profiter" de l'exécution de ces onglets en même temps.
Je ne pense pas qu'il existe un moyen de limiter l'utilisation de la RAM de chaque onglet, mais vous pouvez limiter complètement l'utilisation de Chrome. Regardez ici:
/programming/192876/set-windows-process-or-user-memory-limit
Je préférerais ne pas faire ça, si j'étais toi, si je veux surfer sur le web en douceur.
la source
J'ai écrit un programme Python 2.5 qui tue les moteurs de rendu de chrome lorsqu'ils utilisent une quantité de mémoire définie. Je lance ce programme sous
watch
. (notez qu'il utilise le module psutil qui n'est pas inclus avec Python.)Je compte sur Session Buddy pour récupérer les onglets ouverts lorsque Chrome ne parvient pas à les restaurer.
la source
Last Tabs
fichier, il n'est pas possible de restaurer les onglets de ce fichier. J'ai essayé de déterminer le format et d'en extraire les URL depuis longtemps. Cela n'a pas réussi. Et j'ai plus confiance en SQLite qu'en le format binaire que Chrome utilise pour stocker les onglets de la session en cours, c'est pourquoi SB est meilleur.La seule chose que j'ai vue à ce jour qui puisse le faire est d' exécuter du chrome dans un conteneur et de limiter la RAM des conteneurs .
Cependant, cela a quelques mises en garde majeures,
L'exécution de Chrome est compliquée par la configuration de dockerize et la séquence de lancement
d'une part, Chrome utilise déjà des conteneurs de noyau pour sandboxer ses threads; vous devez donc exécuter le conteneur avec une sorte de privilège root qui permet à cela de fonctionner. Cela peut être contourné, et le modèle de conteneur lié le fait. (il fait pratiquement tout ce dont il a besoin)
Vous perdrez presque certainement l'accélération du GPU
faire fonctionner l'audio est compliqué, mais géré dans le modèle de conteneur lié.
Quoi que vous pensiez de mal lorsque vous annulez votre garantie, Chrome n'aime pas violemment qu'on lui dise de ne pas utiliser plus de RAM, et agira en conséquence.
Mais cela fonctionne finalement.
Je suis plus intéressé à appliquer ces limites de RAM aux applications Electron Shell qui n'ont pas d'images Docker prédéfinies pour les classer pour vous.
Hors sujet mais je tiens à noter que Firefox se comporte très bien sur un matériel limité, mais je ne considère pas cela comme une vraie réponse.
la source
Ce n'est pas nécessairement un plugin. Notez que les pages Web ne sont plus statiques. Certaines pages Web ont juste une quantité non négligeable d'activité asynchrone en cours. Ajoutez l'activité des plug-ins et vous obtenez des inconnues.
Le meilleur remède que j'ai trouvé est de tuer la page Web et de la recharger. AFAIK, il n'y a aucun moyen de limiter la quantité de RAM qu'une page Web utilise.
la source
Utilisez l'extension TabsOutliner - cela vous donnera un moyen facile de "fermer" les onglets sans les supprimer de votre contexte et de la liste de sessions en cours. Très utile.
Extension Tabs Outliner
la source
Tuez le processus de tabulation qui utilise la grande quantité de mémoire (je remarque que tout ce qui a tendance à utiliser Flash a tendance à utiliser 500 Mo +). Vous pouvez simplement recharger les onglets morts plus tard lorsque vous souhaitez reprendre leur travail.
la source
TabMemFree suspendra automatiquement les onglets inactifs. Vous pouvez déterminer combien de temps il suspend les onglets inactifs, avec un minimum de 15 minutes. Vous pouvez également lui demander d'ignorer les onglets épinglés.
Tab Wrangler est une autre extension à considérer qui suspend automatiquement les onglets inactifs si vous recherchez un peu plus de contrôle. Comme TabMemFree, vous pouvez déterminer la durée avant qu'un onglet soit considéré comme inactif et le paramétrer pour ignorer les onglets épinglés, mais vous avez la possibilité supplémentaire de verrouiller des onglets supplémentaires et de synchroniser vos paramètres d'onglet entre différents ordinateurs.
la source