Qu'est-ce qui déclenche les crises de CPU de mon Finder?

13

Quelques fois par semaine, le Finder sur mon Macbook tire jusqu'à environ 100% d'utilisation du processeur, et les fans commencent à exploser.

J'ai fait tout ce à quoi je pouvais penser: autorisations réparées, redémarrage, préférences supprimées, désactivation de l'option "Afficher l'aperçu" dans les options d'affichage, vérification du moniteur d'activité pour les processus inutiles, nettoyage de la console pour les erreurs, redémarrage du Finder et bien plus encore . Finalement, cela disparaît, et je suppose que la source de l'erreur a été la dernière chose que j'ai modifiée.

Mais ça recommence maintenant, et je suis perdu. J'aimerais qu'il y ait un moyen de «pénétrer dans la tête du Finder» et de voir ce qu'il fait. J'ai essayé d'exécuter un échantillon du processus du Finder dans le moniteur d'activité, mais honnêtement, je ne sais pas ce qu'il fait, et encore moins comment interpréter la sortie.

C'est vraiment mon espoir: que quelqu'un puisse expliquer une meilleure façon d'enquêter sur les pics de processeur comme celui-ci, non seulement dans le Finder, mais tout processus galopant. Il y a certainement beaucoup de détails qui pourraient vous aider à diagnostiquer ce cas spécifique, mais avant de débiter des informations encore plus sans pertinence, j'ai pensé que je verrais si quelqu'un a des conseils généraux pour diagnostiquer ce genre de chose.

Ceci est mon premier post Stack-n'importe quoi, alors soyez gentil. Merci d'avance!

Jesse Baer
la source
La prochaine fois, il sera exécuté à top -o cpupartir de Terminal pour mieux comprendre ce qui se passe.
phwd
Vous pouvez utiliser lsofpour répertorier les fichiers ouverts. Cela pourrait également être utile fuser.
Par curiosité, avez-vous activé FileVault? Ou une corbeille vide sécurisée?
Nathan Greenstein
Peut-être mieux que lsofou fuserest fs_usage. Une combinaison de ces trois, limitée au processus qui monopolise le CPU (trouvé via le haut), devrait aider, en supposant que les E / S soient impliquées.
lsof semble très utile. Vous n'avez pas trouvé de fichier suspect spécifique pour essayer l'unité de fusion. Essayer fs_usage en ce moment sur configd (voir la réponse à NSGod ci-dessous). @Nathan - non, non plus.
Jesse Baer

Réponses:

6

"Je souhaite qu'il y ait un moyen de" pénétrer la tête du Finder "et de voir ce qu'il fait. J'ai essayé d'exécuter un exemple du processus du Finder dans Activity Monitor, mais honnêtement, je ne sais pas ce qu'il fait, encore moins comment pour interpréter la sortie. "

Prendre un échantillon dans le moniteur d'activité est exactement cela: entrer dans la tête du Finder pour voir ce qu'il fait. Bien que cela puisse sembler grec, moi ou d'autres ici pouvons l'interpréter pour vous. Il suffit de le poster ou de le rendre disponible pour le téléchargement ou la visualisation (car ils ont tendance à être assez gros).

Quelle version d'OS X utilisez-vous? Dans OS X 10.5.x et versions antérieures, je pense que le contenu multimédia s'exécutait dans le Finder lui-même, plutôt que de le déléguer à un processus de type agent / assistant, de sorte que l'utilisation du processeur peut apparaître plus élevée. Par exemple, la prévisualisation d'un film QuickTime peut faire passer le Finder 10.5.x et versions antérieures à 60% du processeur, tandis qu'en 10.6, il pourrait être divisé en quelque chose comme 10% de CPU pour le Finder, 30% de CPU pour le processus d'arrière-plan QTKitHelper.

Sinon, j'ai parfois vu le code utilisé par le Finder pour calculer la taille du contenu d'un dossier provoquer des pics temporaires du processeur. (Vous remarquerez quelque chose comme TSomething::HFSSizerSomethingdans la trace de pile d'un échantillon). Habituellement, il semble insistant pour terminer son calcul même si la vue que vous aviez ouverte qui justifiait le calcul a depuis été fermée.

Dans tous les cas, voir l'échantillon devrait aider à identifier le problème et à savoir quel contexte a conduit à la pointe. Il sera plus facile d'expliquer ce que fait le prélèvement d'un échantillon une fois que nous l'avons devant nous pour le regarder.

NSGod
la source
J'avais le Finder configuré pour afficher des fichiers invisibles, et le désactiver semblait guérir les choses. J'avais eu ce réglage pendant un certain temps cependant, donc j'hésite à supposer que j'ai guéri le problème pour de bon. Comme je l'ai mentionné, il y a eu d'autres cas où je pensais avoir résolu ce problème seulement pour que cela se reproduise.
Jesse Baer
(destiné à ajouter ceci mais le montage a expiré…) Il semble que nous ayons une autre occasion d'essayer cela - soudainement, configd prend 15-20% de mon processeur. Pas horrible, mais inhabituel, et apparemment assez, en conjonction avec Chrome et un bureau chaleureux, pour déclencher mon fan… Voici la sortie de l'échantillonnage configd: pastebin.com/aEaSN1zc
Jesse Baer
3

Vous disposez de DTrace.

man -k DTrace

Ces outils, ainsi que fs_usage -f filesys devraient vous donner la réponse.

chiggsy
la source
1

Bon conseil jusqu'ici. Je partagerai une expérience que j'ai eue avec un Powerbook dans Tiger (mais comme Leopard a également un processus FatFinder, ce problème se produirait également dans 10.5).

Je me souviens avoir un AVI dans un dossier. Le format était un format bizarre, pas un simple film Quicktime ou quoi que ce soit; à l'époque, les caméras des téléphones portables étaient mauvaises et utilisaient les pires codecs possibles jamais créés. Donc, chaque fois que je me rendais dans ce "dossier" avec le Finder, il se bloquait, car il essayait de "lire" le fichier et le codec était mauvais.

Finalement, soit par chance, soit parce que je l'ai oublié (ou supprimé), cela a cessé de se produire. Mais il m'a fallu un certain temps pour comprendre de quoi il s'agissait. Je me souviens de ce comportement exact qui m'est arrivé sur Leopard avec une vidéo "mal" formatée aussi. Quicklook accrocherait le chercheur avec ce média.

J'ai dû l'ouvrir avec VLC pour le "réparer". Et puis il a mystérieusement recommencé à fonctionner.

Je vous suggère d'essayer de garder un œil sur vos modèles d'utilisation avant la pointe du processeur pour voir s'il y a quelque chose en commun. Un type de fichier, un dossier spécifique, une heure spécifique , etc.

Au moment de la rédaction, je ne connais pas votre version OS X (10.x?), Donc ces informations peuvent être légèrement obsolètes si vous utilisez Snow Leopard.

De plus, suivez les conseils pour essayer de sortir fs_usage, top et des outils similaires. Cela peut nous donner un meilleur indice. La sortie de Console.app (/ Applications / Utilities) pourrait éclairer le problème.

Martin Marconcini
la source
Merci - comme vous l'avez peut-être remarqué dans ma réponse à NSGod, l'utilisation du processeur du Finder a diminué, mais maintenant configd semble agir, quoique légèrement. Je ne m'inquiéterais pas normalement à ce sujet, mais j'aimerais voici la sortie de la console du
Jesse Baer
dernière heure environ, ce qui englobe définitivement le moment où configd a commencé à être occupé: pastebin.com/V8qpLuD2
Jesse Baer
1

Je n'ai trouvé que deux outils largement utiles pour résoudre les problèmes d'utilisation élevée du processeur sur un programme isolé. Oui, le moniteur d'activité peut échantillonner et vous dire où il est bloqué / traitement - mais je trouve que les instruments sont mieux adaptés pour vraiment résoudre le problème si fs_usage ne le peut pas. DTrace est génial - je n'ai jamais eu besoin de passer du temps à l'apprendre - les instruments fonctionnent assez bien et la courbe d'apprentissage pour moi était beaucoup plus basse.

  1. fs_usageet greprestreindre les fichiers auxquels on accède me permet souvent de savoir où / où se trouvent les problèmes afin que je puisse prendre des mesures pour y remédier / régler.
  2. Application Instruments - Xcode 3 est fourni aux développeurs gratuits ou Xcode 4 (acheté dans le Mac App Store ou en tant que développeur payant). Pensez à cela comme un échantillon / moniteur d'activité sur les stéroïdes - vous pouvez fouiller dans des choses comme l'allocation / les fuites de mémoire et obtenir une vue beaucoup plus claire de ce qui se passe dans un processus lent pendant son exécution.
bmike
la source
1

J'étais en proie à une utilisation élevée du processeur du Finder pendant quelques semaines (80-100%). Finalement, j'ai découvert que c'était dû à mon paramètre Finder pour calculer toutes les tailles dans un dossier. Cette option n'est pas activée par défaut, mais il vaut la peine de la vérifier au cas où

  1. Ouvrir le Finder
  2. Dans la barre de menus, sélectionnez Affichage -> Afficher les options d'affichage
  3. Assurez-vous que "Calculer toutes les tailles" n'est pas coché
  4. Cliquez sur "Utiliser comme valeurs par défaut"

Une fois que j'ai fait cela, j'ai vu mon utilisation du processeur Finder tomber immédiatement à 0%.

Kyle Cronin
la source
1

Je suis sur un MacBook, OSX 10.6.8. Moi aussi, j'ai connu d'innombrables «beuveries de CPU du Finder», accompagné par le ventilateur. La console signale toutes sortes de plaintes déroutantes, souvent multipliées et répétées [dans d'autres situations, le ventilateur tourne également et la console affiche des plaintes à répétitions multiples].

J'ai récemment découvert que la désactivation de mon outil de recherche de silence d'aéroport se poursuivait tout de suite. Pas un remède très utile, car en ce moment j'ai Airport sur pour que je puisse être ici, et oui, le moniteur d'activité montre que le Finder consomme plus de 100% de CPU [quoi que ce soit -?]

gherrick
la source
1

Remplacez l'option Finder> Préférences> Général "Nouvelle fenêtre du Finder" par autre chose que "Tous mes fichiers". Cela aide beaucoup.

aziwaan
la source