Cosa sta innescando i binge della CPU del mio Finder?


13

Alcune volte a settimana, il Finder sul mio Macbook registra fino al 100% circa di utilizzo della CPU e le ventole iniziano a brillare.

Ho fatto tutto ciò che mi viene in mente: permessi riparati, riavviato, preferenze nel cestino, disattivato "mostra anteprima" nelle opzioni di visualizzazione, controllato Activity Monitor per processi non necessari, controllato la console per errori, riavviato il Finder e molto altro . Alla fine si attenua e presumo che la fonte dell'errore sia stata l'ultima cosa che ho cambiato.

Ma lo sta facendo di nuovo ora, e sono in perdita. Vorrei che ci fosse un modo per "entrare nella testa del Finder" e vedere cosa sta facendo. Ho provato a eseguire un esempio del processo Finder in Activity Monitor, ma onestamente non so cosa stia facendo, tanto meno come interpretare l'output.

Questa è davvero la mia speranza: che qualcuno possa spiegare un modo migliore per indagare su picchi di CPU come questo, non solo nel Finder, ma in qualsiasi processo in fuga. Ci sono certamente molti dettagli che potrebbero aiutare tutti voi a diagnosticare questo caso specifico, ma prima di rivelare informazioni ancora più probabilmente irrilevanti, ho pensato di vedere se qualcuno avesse suggerimenti generali per diagnosticare questo genere di cose.

Questo è il mio primo post Stack-qualunque cosa tra l'altro, quindi per favore sii gentile. Grazie in anticipo!


La prossima volta che arriva corri top -o cpudal Terminale per capire meglio cosa sta succedendo.
phwd,

È possibile utilizzare lsofper elencare i file aperti. Potrebbe essere utile anche fuser.

Per curiosità, hai FileVault abilitato? O Secure Cestino vuoto?
Nathan Greenstein,

Forse meglio di lsofo fuserè fs_usage. Una combinazione di questi tre, limitata al solo processo che sta controllando la CPU (trovata in alto), dovrebbe aiutare, supponendo che l'I / O sia coinvolto.

lsof sembra molto utile. Non è stato trovato un file sospetto specifico su cui provare il fuser. Prova subito fs_usage su configd (vedi la risposta a NSGod di seguito). @Nathan - no, nessuno dei due.
Jesse Baer,

Risposte:


6

"Vorrei che ci fosse un modo per" entrare nella testa del Finder "e vedere cosa sta facendo. Ho provato a eseguire un campione del processo Finder in Activity Monitor, ma onestamente non so cosa stia facendo, tanto meno come per interpretare l'output ".

Prendere un campione in Activity Monitor è esattamente questo: entrare nella testa del Finder per vedere cosa sta facendo. Anche se può sembrare greco, io o altri qui possiamo interpretarlo per te. Pubblicalo o rendilo disponibile per il download o la visualizzazione (in quanto tendono ad essere piuttosto grandi).

Quale versione di OS X stai usando? In OS X 10.5.x e precedenti, credo che i contenuti multimediali siano stati eseguiti all'interno del Finder stesso, piuttosto che delegarli a un processo di tipo agente / helper, quindi l'utilizzo della CPU potrebbe apparire più elevato. Ad esempio, l'anteprima di un filmato QuickTime potrebbe portare il Finder 10.5.x-precedenti al 60% di CPU, mentre in 10.6 potrebbe essere suddiviso in qualcosa come 10% di CPU per il Finder, 30% di CPU al processo in background QTKitHelper.

Altrimenti, a volte ho visto il codice utilizzato dal Finder per calcolare la dimensione del contenuto di una cartella che causa picchi temporanei della CPU. (Noterai qualcosa come TSomething::HFSSizerSomethingla traccia dello stack di un campione). Di solito sembra insistere nel portare a termine il suo calcolo anche se la vista aperta che giustificava il calcolo da allora è stata chiusa.

In ogni caso, vedere l'esempio dovrebbe aiutare a individuare il problema e sapere quale contesto ha portato al picco. Sarà più facile spiegare cosa sta facendo il prelievo di un campione una volta che lo avremo di fronte.


Avevo impostato il Finder per mostrare file invisibili e disattivarlo sembrava curare le cose. Avevo avuto quell'impostazione per un po ', quindi sono titubante supporre di aver risolto il problema per sempre. Come ho già detto, ci sono stati altri casi in cui pensavo di averlo risolto solo per vederlo accadere di nuovo.
Jesse Baer,

(intendevo aggiungere questo, ma la modifica è scaduta ...) Sembra che abbiamo un'altra opportunità per provarlo, ma all'improvviso la configurazione sta prendendo il 15-20% della mia CPU. Non terribile, ma insolito e apparentemente abbastanza, in collaborazione con Chrome e un ufficio caldo, per innescare il mio fan ... Ecco l'output della configurazione di campionamento: pastebin.com/aEaSN1zc
Jesse Baer,

3

Hai DTrace disponibile.

man -k DTrace

Questi strumenti, oltre a fs_usage -f filesys, dovrebbero darti la risposta.


1

Un buon consiglio finora. Condividerò alcune esperienze che ho avuto con un Powerbook in Tiger (ma poiché Leopard ha anche un processo FatFinder, questo problema si verificherebbe anche in 10.5).

Ricordo di avere un AVI in una cartella. Il formato era un formato strano, non un semplice filmato Quicktime o altro; allora le fotocamere dei cellulari erano pessime e utilizzavano i peggiori codec possibili mai creati. Quindi ogni volta che sono andato in quella "cartella" con Finder, si bloccherà, perché stava cercando di "leggere" il file e il codec non funzionava.

Alla fine, o per fortuna o perché me ne sono dimenticato (o l'ho eliminato), questo ha smesso di accadere. Ma mi ci è voluto un po 'per capire cosa fosse. Ricordo questo comportamento esatto che mi succedeva su Leopard anche con un video formattato "male". Quicklook avrebbe appeso il mirino con quel pezzo di media.

Ho dovuto aprirlo con VLC per "ripararlo". E poi ha misteriosamente iniziato a funzionare di nuovo.

Ti suggerisco di provare a tenere d'occhio i tuoi schemi di utilizzo prima del picco della CPU per vedere se c'è qualcosa in comune. Un tipo di file, una cartella specifica , un'ora specifica , ecc.

Al momento della stesura di questo documento, non conosco la tua versione di OS X (10.x?), Quindi queste informazioni potrebbero essere leggermente obsolete se usi Snow Leopard.

Inoltre, segui il consiglio di provare a produrre fs_usage, top e strumenti simili. Potrebbe darci un suggerimento migliore. L'output da Console.app (/ Applicazioni / Utility) potrebbe far luce sul problema.


Grazie - come avrai notato dalla mia risposta a NSGod, l'utilizzo della CPU del Finder è diminuito, ma ora la configurazione sembra funzionare, anche se leggermente. Di solito non mi preoccuperei, ma vorrei che qui venisse pubblicato l'output della console dal
Jesse Baer il

all'incirca l'ultima ora, che comprende sicuramente quando configd ha iniziato a diventare occupato: pastebin.com/V8qpLuD2
Jesse Baer

1

Ho trovato solo due strumenti per essere ampiamente utili nella risoluzione di problemi di utilizzo elevato della CPU su un programma isolato. Sì, il monitor delle attività può campionare e dirti dove è stato interrotto / elaborato, ma trovo che Instruments sia più adatto a risolvere il problema se fs_usage non riesce. DTrace è fantastico - non ho mai avuto bisogno di passare il tempo ad impararlo - Gli strumenti funzionano abbastanza bene e la curva di apprendimento per me era molto più bassa.

  1. fs_usagee greprestringere i file a cui si accede spesso mi consente di sapere quali / dove si trovano i problemi in modo da poter intervenire per rimediare / ottimizzare.
  2. App di strumenti: Xcode 3 viene fornito agli sviluppatori gratuiti o Xcode 4 (acquistato nel Mac App Store o come sviluppatore a pagamento). Pensa a questo come un monitor di attività / campione sugli steroidi: puoi dare un'occhiata a cose come l'allocazione / perdite di memoria e avere una visione molto più chiara di ciò che sta accadendo all'interno di un processo lento mentre è in esecuzione.

1

Ero stato afflitto da un elevato utilizzo della CPU del Finder per alcune settimane (80-100%). Alla fine ho scoperto che era dovuto alla mia impostazione Finder per calcolare tutte le dimensioni in una cartella. Questa opzione non è abilitata per impostazione predefinita, ma vale la pena controllare per ogni evenienza

  1. Apri Finder
  2. Dalla barra dei menu, seleziona Visualizza -> Mostra opzioni di visualizzazione
  3. Assicurati che "Calcola tutte le dimensioni" sia deselezionato
  4. Fai clic su "Usa come valori predefiniti"

Una volta fatto questo, ho visto il mio utilizzo della CPU del Finder scendere immediatamente allo 0%.


1

Sono su un MacBook, OSX 10.6.8. Anch'io ho sperimentato innumerevoli "binges CPU Finder", accompagnato dalla ventola. La console riporta ogni sorta di lamentele sconcertanti, spesso moltiplicate ripetutamente [altre situazioni fanno anche girare la ventola e Console mostra lamentele multi-ripetizione].

Di recente ho scoperto che disattivando il mio aeroporto si calma Finder fino in fondo. Non è una cura molto utile, poiché in questo momento ho Airport in modo che io possa essere qui, e sì, Activity Monitor mostra che Finder consuma fino al 100% di CPU [qualunque cosa possa essere -?]


1

Modifica l'opzione finder> preferenze> Generale "Nuova finestra Shower Finder" a tutto tranne che a "Tutti i miei file". Questo aiuta molto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.