7 votes

Safari 8.0 sur Yosemite ne supprime pas les processus d'onglets fermés et monopolise la mémoire

Je viens de passer à Yosemite et j'ai commencé à utiliser le nouveau Safari 8.0. Pendant un certain temps, tout semblait aller bien, mais ensuite tout est devenu de plus en plus lent, surtout en changeant de bureau.

Après avoir perdu patience, j'ai ouvert le moniteur d'activité et, à ma grande surprise, j'ai trouvé une douzaine d'anciens processus Safari Web Content toujours en cours d'exécution et utilisant beaucoup de mémoire, bien que les onglets aient déjà été fermés.

Quelqu'un a-t-il remarqué quelque chose de similaire ? Ou connaît un moyen de forcer Safari à tuer le processus après la fermeture d'un onglet ?

(Macbook Pro, mi-2012, 13 pouces, 4GB RAM)

1voto

Kare Morstol Points 434

"Processus de contenu Web" = "Onglet" est une supposition erronée. Un processus de contenu Web peut contenir plus d'un onglet. Selon les détails de l'implémentation de Safari, il est possible qu'après avoir fermé le dernier onglet lié à un processus de contenu web particulier, cela ne signifie pas automatiquement qu'il faut fermer ce processus de contenu web. Il est possible que Safari laisse ce processus inactif en arrière-plan, prêt à accueillir un nouvel onglet en cas de besoin. Je pense que Safari Mavericks se comporte de la même manière.

En ce qui concerne votre expérience du "de plus en plus lent" : Il se peut que les 4 Go de mémoire vive soient insuffisants pour votre charge de travail normale. Par conséquent, la mémoire virtuelle est utilisée. Cela signifie que votre disque dur (ou SSD) est utilisé comme une extension de votre RAM, lorsque davantage de mémoire est nécessaire pour gérer tous les processus ouverts. L'utilisation du disque dur entraîne un ralentissement. Un disque SSD est plus performant à cet égard.

J'utilise Safari 7 sur Mavericks, je ne vais pas tester maintenant ce qui se passe quand on ferme un assez grand nombre d'onglets. Mais permettez-moi de décrire la situation normale sur mon MBP : En ce moment, mon Safari a 4 fenêtres ouvertes, chacune contenant 10 à 40 onglets, soit au total ~100 onglets ouverts. Dans le moniteur d'activité, je peux voir 20 processus de contenu Web, chacun contenant 9 à 12 threads. De plus, j'ai 13 processus de contenu web QTKitserver, chacun de 2 threads. Tous les processus de contenu Web ont un PID à 3 chiffres, ce qui signifie qu'ils ont été lancés au début après mon dernier redémarrage, c'est-à-dire il y a 3 jours. Les processus de contenu web sont donc réutilisés par Safari. S'il s'agissait de nouveaux processus, ils auraient obtenu un PID à 4 ou 5 chiffres. Cependant, j'admets que je n'ai pas ouvert et fermé autant d'onglets depuis le dernier redémarrage. J'ai 8GB de RAM et un SSD sur un MBP de fin 2009.

On peut lire à certains endroits que Yosemite a besoin d'un peu plus de RAM que Mavericks. C'est peut-être suffisant pour ralentir votre système de 4 Go par rapport à Mavericks. Cependant, les performances ne devraient pas être plus mauvaises que celles de Mavericks. D'ailleurs, une bonne lecture sur la gestion de la mémoire pour 10.9 peut être trouvée aquí .

En résumé : Envisagez d'installer 8 Go de RAM. C'est très bon marché pour un MBP non Retina.

Et vous pouvez le faire toi-même . Il suffit de déterminer au préalable quels modules RAM sont adaptés à votre modèle MBP : https://support.apple.com/kb/HT201165?viewlocale=en_US#1 .

Il semble que même les MBP les plus anciens puissent avoir une capacité de 16 Go si l'on a de la chance. Attention, le sujet des 16 Go doit être approfondi : https://forums.macrumors.com/showthread.php?t=1511196

Mais je ne sais pas si cela est nécessaire dans votre cas. À mon humble avis, 8 Go suffisent.

1voto

Andrew Hodgkinson Points 541

J'ai constaté ce phénomène depuis Safari 8 sur OS X 10.9.5, OS X 10.10.x toutes les versions avec Safari 8 et malheureusement aussi dans Safari 9 sur toutes les bêtas d'El Capitan à ce jour. Dans mon cas, la fuite de mémoire de Safari est importante et il faut souvent quitter complètement Safari et le redémarrer. Cela ne semble se produire que si vous avez tendance à avoir quelques fenêtres ouvertes souvent, que vous "réutilisez" ; mais dans l'ensemble, Safari ne fait que croître et croître (de plusieurs Go).

Les suggestions visant à "augmenter la mémoire" sont absurdes. J'ai un ordinateur portable Macbook Pro de 16 Go, ce qui correspond à la configuration maximale de l'ordinateur. soudé sur ("pro" mon cul !) qu'Apple fournit. Il n'est tout simplement pas possible d'en ajouter. La pression sur la mémoire et le ralentissement tendent à devenir critiques lorsque Safari dépasse 10 Go. Une fois, j'ai persisté jusqu'à ce qu'il utilise plus de 13 Go. Une fois redémarré avec tous les onglets revisités manuellement pour s'assurer que toutes les pages sont chargées, il est revenu à environ 2,5 Go. Une fuite de cette ampleur est tout à fait indéfendable.

Il s'agit d'un changement radical de comportement par rapport à Safari 7, qui se comportait très bien à cet égard, mais il y a étonnamment peu de rapports en ligne à ce sujet. Il ne s'agit pas d'un problème subtil et Safari 8 existe depuis longtemps. D'autres l'auraient remarqué, mais peu le signalent.

Je le vois sur ma machine 10.9.5, mon ordinateur portable domestique 10.10, mon ordinateur portable de test 10.11 et même, plus récemment, sur un ordinateur portable 10.10 au travail. J'en conclus qu'il doit s'agir d'une erreur de Safari lorsque des signets, des cookies, des caches et/ou d'autres données sont présents. et ces données doivent faire partie des éléments partagés sur iCloud - sinon je le ferais pas J'aurais espéré que mon ordinateur portable de travail, installé par le fournisseur informatique, et qui a été nettoyé de manière indépendante, présente exactement le même comportement.

En fin de compte, il semble qu'il s'agisse d'un problème lié aux données de l'utilisateur. En respirant profondément et en réinitialisant complètement Safari - en supprimant vos signets iCloud, en vidant tout de chaque instance de Safari sur le compte iCloud, en supprimant ~/Library/Safari et ainsi de suite - pourrait d'après les forums des développeurs. Mais comme toujours avec Apple depuis OS X 10.7, il s'agit d'une pagaille et il n'est pas garanti que la chasse aux poulets soit la solution à votre problème.

Les processus parasites des onglets fermés peuvent être dus à une "mauvaise extension", mais ce n'est pas une excuse - les extensions sont sous le contrôle de Safari, et une mauvaise extension ne devrait jamais être en mesure de briser le navigateur. Il s'agit simplement d'un code JavaScript qui s'exécute sous le contrôle du navigateur. Néanmoins, nous savons que Safari doit avoir un très mauvais code pour la prise en charge des extensions, compte tenu de l'historique des problèmes, et cela vaut donc la peine d'enquêter si vous ne l'avez pas déjà fait.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X