Perché kernel_task utilizza così tanta CPU?


26

Ho un Macbook Pro Retina con il seguente hardware:

Model Name: MacBook Pro
Model Identifier:   MacBookPro11,1
Processor Name: Intel Core i5
Processor Speed:    2.4 GHz
Number of Processors:   1
Total Number of Cores:  2
L2 Cache (per Core):    256 KB
L3 Cache:   3 MB
Memory: 8 GB
Boot ROM Version:   MBP111.0138.B15

Di recente ho aggiornato a OS X El Capitan; Ho avuto lo stesso problema che mi si presenta due volte ora e mi sta preoccupando leggermente.

Ho casualmente picchi di utilizzo della CPU da kernel_task, il più alto dei quali ho visto era il 660% di CPU. Questa è francamente un'impostazione inaccettabile e innaturale per la mia CPU (in genere ho un utilizzo totale di circa il 2-3%). Lo screenshot più alto che ho è questo:

inserisci qui la descrizione dell'immagine

La prima volta, non ho registrato ciò che avevo aperto. La volta successiva, tuttavia, ero pronto e questo è l'elenco esatto di ciò che avevo aperto:

  • Due pagine di video di YouTube (utilizzando i processi Safari Networking con un massimo di circa il 44% di CPU, in genere stabilizzati all'8-10% e https://www.youtube.com, che hanno raggiunto circa il 51% di CPU max, in genere circa il 10-12%)
  • Messaggero. Dubito che ciò abbia avuto un effetto, ma, ehi, non lo sai mai.
  • Skype. Questo tipo era in esecuzione con un utilizzo costante della CPU del 50%.

Vale la pena notare che ho dovuto chiudere entrambe le finestre di YouTube per ottenere effettivamente il controllo sufficiente del mio computer per aprire Activity Monitor. Nessuno dei processi sopra menzionati era impetuoso, solo kernel_task.

Vale anche la pena notare i miei fan: i fan erano al massimo, soffiando aria fredda. Anche se kernel_task stava girando al 660% di CPU, per quanto potessi vedere non si produceva calore reale .

È a questo punto che forza lo spegnimento del computer - avevo circa 5 fotogrammi al secondo (1 fotogramma ogni 2 secondi, guardavo l'orologio) e non andavo da nessuna parte quando si trattava persino di tentare di ripararlo.

Se c'è un bug correlato a questo che ho perso o qualcosa di strano con OS X in generale che mi manca, per favore fatemelo sapere, poiché questo è estremamente frustrante e più che un po 'inquietante.

Risposte:


23

Hai sintomi classici che problemi termici stanno causando all'attività del kernel di utilizzare preventivamente la CPU per prevenire il surriscaldamento. Se non hai ripristinato SMC, prova una volta . Se il controller di gestione del sistema è effettivamente bloccato, la risposta al cambiamento delle misurazioni termiche potrebbe ritardare o lasciare i ventilatori più alti di quanto dovrebbero essere.

Le risposte indicano soprattutto le cose che puoi fare per misurare lo scambio, i processi, ecc ... ma ti concentri sui sensori termici (problema hardware) o sulla temperatura esterna (ambiente) che puoi raffreddare artificialmente per rimuovere il rallentamento progettato per gestire il calore .

Se non riesci a misurare accuratamente la temperatura del case con un termometro a infrarossi, prova software come https://bjango.com/mac/istatmenus/ per controllare i singoli sensori di temperatura e correlarli con i "picchi nell'uso della CPU" di kernel_task . Inoltre, ripristinare la SMC una volta potrebbe valere la pena. Se è bloccato, la risposta al cambiamento delle misurazioni termiche potrebbe ritardare o lasciare i ventilatori più alti di quanto dovrebbero essere.


Questo non sembra essere il problema, però - i fan stavano soffiando aria perfettamente fresca dalle prese d'aria. Inoltre, durante i test con un avvio esterno Ubuntu 15.04, non si sono verificati picchi nell'uso della ventola o letture termiche. Stai suggerendo che a) i termometri non calcolano correttamente o che b) si sia verificato un errore nella risposta della ventola? O qualcos'altro interamente?
Addison Crump,

@VTCAKAVSMoACE Sì - l'aria fredda rafforza che i sensori sono difettosi nella mia stima. È possibile che SMC sia incasinato, quindi prova a ripristinarlo una volta.
bmike

Ho ripristinato SMC e verificato (il LED è cambiato, quindi è sicuramente successo). Se kernel_task si spegne di nuovo entro due giorni, ti farò sapere. Altrimenti, lo segnerò come risposta.
Addison Crump,

2
Posso dire con quasi piena certezza che il ripristino dell'SMC ha funzionato. Ho spinto il mio computer per lontane limiti della CPU per generare calore ed era del tutto bene, così come l'utilizzo normale. Farò una modifica finale per renderlo più accessibile e più facile da trovare e contrassegnarlo come una risposta.
Addison Crump,

Il ripristino di SMC ha funzionato per me.
Giuliano A.

2

Dai un'occhiata ai tuoi fan! Per il mio Macbook Pro (2015) non è stato un problema software. Il Mac era completamente inutilizzabile. Ho aperto il Macbook spolverato i fan con uno spazzolino da denti. Ho anche pulito il dissipatore di calore. Dopo aver rimosso il dissipatore di calore, ho scoperto che la pasta termica era asciutta. Ho pulito la vecchia pasta termica e ne ho messo una nuova, con cura. Risultato: non più problemi con kernel_task. I fan sono passati da una velocità costante di 6000 RPM a 2000 RPM (silenzio totale).


1

La mia esperienza supporta la teoria secondo cui un uso eccessivo della CPU causa un kernel elevato. Nel mio caso, succede spesso quando ho troppe finestre del browser aperte o video di YouTube in riproduzione.

La chiusura di finestre o app di solito risolve il problema.

Altri modi per raffreddare le cose:

  • Maggiore velocità della ventola. Uso Mac Fan Control da CrystalIdea per aumentare manualmente la velocità della mia ventola di base a 2500 rpm costanti, o 3000 rpm se necessario.

  • Utilizzando un pad di raffreddamento per il tuo laptop.

  • Aria condizionata! La temperatura esterna influisce anche sulla temperatura del computer.

EDIT: in precedenza ho detto "surriscaldamento" anziché "utilizzo eccessivo della CPU". È più preciso dire "surriscaldamento previsto in base alla CPU attuale e alla velocità della ventola", poiché anche il sistema di controllo della temperatura del Mac tiene conto di questi.


Il mio computer non era caldo quando kernel_task stava prendendo enormi percentuali di CPU, come menzionato nella domanda. : P In realtà soffiava aria fredda .
Addison Crump,

Il sistema di controllo della temperatura sui Mac tiene conto anche del surriscaldamento previsto, in base all'utilizzo corrente della CPU. Lancia attacchi preventivi, per così dire.
jkdev,

Modificherò la mia risposta per cambiare il "surriscaldamento" in "uso eccessivo della CPU".
jkdev,

1

L'alta temperatura in una parte dello chassis dovuta alla ricarica insieme alle periferiche collegate può causare questo problema, almeno su un MBP 2017. Spostare semplicemente il cavo di ricarica dalle porte sinistra a destra può essere sufficiente per raffreddare l'hotspot e risolvere il problema. Su una macchina con ricarica MagSafe, provare a scollegare le periferiche dalle porte di sinistra fino a quando la batteria è carica.

L'utilizzo della CPU non ha nulla a che fare con questo, poiché una CPU calda viene ridotta riducendo la sua velocità di clock non pianificando il carico a vuoto.

Consulta /apple//a/363933/27135 per la prova.


0

Ecco qualcosa che puoi provare:

  1. Riavvia (potresti averlo già fatto)
  2. Reinstallare OS X da Recovery HD
  3. Elimina le cache eseguendo questi comandi nel Terminale rm -rf ~/Library/Caches
  4. Elimina tutte le cache di Safari (poiché sembra che Safari possa essere la causa)

Modifica: sembra che la risposta di bmike sia molto più accurata.


L'ho appena installato l'altro giorno. La rimozione delle cache funzionerà teoricamente ? (non sono state apportate modifiche a nulla che El Capitan ha inserito)
Addison Crump,

Aspetta, scusa. Capisco cosa intendi ora. Rimuoverò le cache. Questo problema non è persistente, solo occasionalmente (due volte in tre giorni), per chiarire.
Addison Crump,

1
Nessuna di queste sono cause alla radice del kernel kerneltask. L'eliminazione delle cache peggiorerà le cose in quanto il sistema esegue i cicli della CPU per ricostruire i dati memorizzati nella cache.
bmike

Sì, ho sbirciato nella cartella Caches e posso sicuramente suggerire di non eliminarlo. Questo potrebbe davvero strappare alcune cose importanti se non stai attento. Si prega di notare che in questa risposta.
Addison Crump,

@VTCAKAVSMoACE l'eliminazione delle cache non rovinerà nulla.
At0mic,

0

Nella mia esperienza, il kernel_tasksuperamento del 100% della CPU sul mio laptop può essere risolto ripristinando il mio blocco di alimentazione. Tuttavia, vivo su una barca e ho una fonte CA occasionalmente incoerente. (Un altro sintomo di questa modalità di errore è che il laptop indica che è collegato, ma non in carica.)

Se l'alimentatore rileva CA inaffidabile, interrompe la ricarica del laptop. Per risolvere questo problema, scollegare entrambe le estremità dell'alimentatore per alcuni secondi, quindi ricollegarlo. Ciò (nel mio caso) fa ricominciare a caricare il laptop e kernel_task smette di consumare CPU e le ventole smettono di girare così tanto.

Meglio prenderlo prima che il laptop (apparentemente rapidamente) si esaurisca la batteria.


0

Ho appena risolto l'incredibilmente fastidioso kernel_taskconsumo del 500% dei miei CPU!

Il problema ha a che fare con l'hardware.

Non è molto più semplice, ho aperto la quarta di copertina, ho un Macbook Pro di metà 2015, lavoro in remoto e ho un'elevata dipendenza dagli strumenti basati su browser, quindi Chrome è un HOG CPU, una parte del la soluzione è disabilitare tutte quelle estensioni che non si usano, che faciliterebbero un po '.

Tuttavia, la maggior parte delle mie scoperte riguardava i fan sporchi, direi, senza essere un esperto (ho fatto la manutenzione del laptop negli ultimi 25 anni ...), che queste macchine sono strumenti di precisione, delle dimensioni del i fan contro la potenza di cui hanno bisogno per raffreddarsi, tutto deve essere buono, non bloccato.

Sono sicuro che hanno costruito una stanza per questo, ma il mio ragionamento mi dice che c'è da qualche parte nel sistema operativo una logica che spiega la velocità delle ventole rispetto al flusso d'aria che forniscono.

Quindi il flusso d'aria insufficiente fa scattare i fan per lavorare di più. Dopodiché è tutto in discesa, o dovrei dire di più in salita ???.

Nella mia esperienza sarebbe una seconda linea di difesa.

Intasare la CPU per evitare un'esplosione in Thread, tenerlo occupato fino a quando non si raffredda, il computer è intelligente come è, non si può dire che c'è sporco intasato che impedisce il flusso d'aria. Quello che ha fatto il trucco per me sono due cose, la prima è PAZIENZA, le cose sono a dir poco fragili, quindi prenditi il ​​tuo tempo (mi ci sono voluti 20 minuti per l'intero processo). E non vuoi finire con un cavo di corto circuito perché sei tirato a bulloni duri o mancanti (non che mi sia mai successo nulla del genere). Quindi la seconda parte è uno strumento come questo? So che dovresti avere qualcosa del genere a casa, oppure puoi averne uno online o in farmacia: Un pennello per sopracciglia

È abbastanza robusto ma delicato sul posto per permetterti di spazzare via tutto lo sporco, quindi puoi combinarlo con una bomboletta di aria compressa o semplicemente soffiarci sopra.

Come ingegneri tendiamo a ingegnere ben oltre. La correzione è stata semplice per me. L'ho fatto in passato con 4 o 5 macchine con gli stessi risultati positivi. Condivido la mia risposta perché potrebbe far luce su quelle cime inspiegabili.

Così felice spazzolatura, saluti

IT

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.