Por que o kernel_task está usando tanta CPU?

26

Eu tenho um Macbook Pro Retina com o seguinte 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

Atualizei recentemente para o OS X El Capitan; Eu já tive o mesmo problema duas vezes agora e isso está me deixando levemente preocupado.

Eu aleatoriamente tenho picos de uso da CPU do kernel_task, o maior dos quais eu vi foi 660% da CPU. Esta é francamente um cenário inaceitável e não natural para o meu CPU (I normalmente têm um total de uso de cerca de 2-3%). A captura de tela mais alta que eu tenho é esta:

insira a descrição da imagem aqui

Na primeira vez, não gravei o que havia aberto. Na próxima vez, no entanto, eu estava pronto, e esta é a lista exata do que eu tinha aberto:

  • Duas páginas de vídeo do YouTube (usando os processos Safari Networking com um máximo de cerca de 44% da CPU, normalmente estabilizado em 8 a 10% e https://www.youtube.com, que atingiu cerca de 51% da CPU, normalmente entre 10 e 12%)
  • Mensageiro. Duvido que isso tenha algum efeito, mas nunca se sabe.
  • Skype. Esse cara estava rodando com um uso consistente de 50% da CPU.

Vale a pena notar que eu tive que fechar as duas janelas do YouTube para obter controle suficiente do meu computador para abrir o Activity Monitor. Nenhum dos processos acima mencionados estava disparando, apenas o kernel_task.

Também digno de nota são os meus fãs - os fãs estavam no máximo, soprando ar frio. Embora o kernel_task estivesse girando a 660% da CPU, não havia calor real sendo produzido , até onde eu pude ver.

É nesse ponto em que forço o desligamento do computador - eu tinha cerca de 0,5 quadros por segundo (1 quadro a cada 2 segundos, olhava para o relógio) e não chegava a lugar algum quando tentava consertá-lo.

Se houver algum erro relacionado a isso que eu tenha perdido, ou alguma coisa maluca do OS X em geral que esteja faltando, entre em contato, pois isso é extremamente frustrante e mais do que um pouco perturbador.

Addison Crump
fonte

Respostas:

23

Você tem sintomas clássicos de que problemas térmicos estão fazendo com que a tarefa do kernel use preventivamente a CPU para evitar superaquecimento. Se você não redefiniu o SMC, tente isso uma vez . Se o System Management Controller estiver realmente travado, a resposta à alteração das medições térmicas poderá atrasar ou deixar os ventiladores mais altos do que deveriam.

As respostas acima apontam para coisas que você pode fazer para medir trocas, processos, etc ... mas se concentrar em sensores térmicos (problema de hardware) ou temperatura externa (ambiente) que você pode esfriar artificialmente para remover a desaceleração projetada para gerenciar o calor .

Se você não pode medir a temperatura da caixa com precisão com um termômetro infravermelho, tente um software como https://bjango.com/mac/istatmenus/ para verificar os sensores de temperatura individuais e correlacioná-los com os "picos no uso da CPU" por kernel_task . Além disso, redefinir o SMC uma vez pode valer a pena. Se estiver travado, a resposta à alteração das medições térmicas poderá ficar atrasada ou deixar os ventiladores mais altos do que deveriam.

bmike
fonte
Porém, esse não parece ser o problema - os fãs estavam soprando um ar perfeitamente fresco pelas aberturas de ventilação. Além disso, ao testar com uma inicialização externa do Ubuntu 15.04, não houve picos no uso de ventiladores ou leituras térmicas. Você está sugerindo que a) os termômetros estão calculando mal ou que b) há uma falha na capacidade de resposta do ventilador? Ou algo completamente diferente?
Addison Crump #
@VTCAKAVSMoACE Sim - o ar frio reforça que os sensores estão com defeito na minha estimativa. É possível que o SMC esteja bagunçado, então tente redefinir isso uma vez.
bmike
Eu reiniciei o SMC e o verifiquei (o LED mudou, então, definitivamente aconteceu). Se o kernel_task sair do controle novamente nos próximos dois dias, eu o informarei. Caso contrário, vou marcar isso como a resposta.
Addison Crump #
2
Posso dizer com quase total certeza que a redefinição do SMC funcionou. Empurrei meu computador para limites muito distantes da CPU para gerar calor e estava totalmente bom, além do uso normal. Vou fazer uma edição final para tornar isso mais acessível e mais fácil de encontrar e marcar como resposta.
Addison Crump
Redefinir o SMC funcionou para mim.
Julian A.
2

Dê uma olhada em seus fãs! Para o meu Macbook Pro (2015), não foi um problema de software. O Mac estava completamente inutilizável. Abri o Macbook espanou os ventiladores com uma escova de dentes. Também limpei o dissipador de calor. Depois de remover o dissipador de calor, descobri que a pasta térmica estava seca. Limpei a pasta térmica antiga e coloquei uma nova pasta, com cuidado. Resultado: não há mais problemas com o kernel_task. Os fãs passaram de uma velocidade constante de 6000 RPM para 2000 RPM (silêncio total).

Fox5150
fonte
1

Minha experiência apóia a teoria de que o uso excessivo da CPU faz com que o kernel_task seja executado alto. No meu caso, geralmente acontece quando tenho muitas janelas do navegador abertas ou vídeos do YouTube sendo reproduzidos.

Fechar janelas ou aplicativos geralmente resolve o problema.

Outras maneiras de esfriar as coisas:

  • Maior velocidade do ventilador. Eu uso o Macs Fan Control da CrystalIdea para aumentar manualmente a velocidade da ventoinha da linha de base para uma constante de 2500 rpm ou 3000 rpm, se necessário.

  • Usando uma almofada de resfriamento para o seu laptop.

  • Ar condicionado! A temperatura externa também afeta a temperatura do computador.

Edição: Eu disse anteriormente "superaquecimento" em vez de "uso excessivo da CPU". É mais preciso dizer "superaquecimento previsto com base na velocidade atual da CPU e da ventoinha", uma vez que o sistema de controle de temperatura do Mac também leva isso em consideração.

jkdev
fonte
Meu computador não estava quente quando o kernel_task estava ocupando grandes porcentagens de CPU, conforme mencionado na pergunta. : P Estava realmente soprando ar frio .
Addison Crump
O sistema de controle de temperatura nos Macs também leva em consideração o superaquecimento previsto, com base no uso atual da CPU. Ele lança ataques preventivos, por assim dizer.
Jkdev
Vou editar minha resposta para alterar "superaquecimento" para "uso excessivo da CPU".
Jkdev
1

A alta temperatura em uma parte do chassi, ao carregar junto com os periféricos conectados, pode causar esse problema, pelo menos em um MBP de 2017. Simplesmente mover o cabo de carregamento da esquerda para a direita pode ser suficiente para resfriar o ponto de acesso e resolver o problema. Em uma máquina com carregamento MagSafe, tente desconectar os periféricos das portas esquerdas até que a bateria esteja cheia.

O uso da CPU não tem nada a ver com isso, pois uma CPU quente é reduzida, reduzindo a velocidade do relógio, não agendando o carregamento sem operação.

Consulte /apple//a/363933/27135 para obter provas.

Adão
fonte
0

Aqui está algo que você pode tentar:

  1. Reinicialização (você já pode ter feito isso)
  2. Reinstale o OS X a partir do Recovery HD
  3. Exclua caches executando estes comandos no Terminal rm -rf ~/Library/Caches
  4. Exclua todos os caches do Safari (pois parece que o Safari pode ser a causa)

Editar: parece que a resposta de bmike é muito mais precisa.

At0mic
fonte
Eu apenas instalei ele no outro dia. Apenas remover os caches teoricamente funcionará? (há edições foram feitas a qualquer coisa que El Capitan colocar em)
Addison Crump
Espere desculpe. Eu entendo o que você quer dizer agora. Vou remover os caches. Esse problema não é persistente, apenas ocasionalmente (duas vezes em três dias), para esclarecer.
Addison Crump
1
Nenhuma delas é a causa raiz do aumento do kernel_task. A exclusão de caches tornará as coisas piores, à medida que o sistema faz ciclos de CPU para reconstruir os dados em cache.
bmike
Sim - eu espiei a pasta Caches e definitivamente posso sugerir não excluir isso. Isso pode realmente rasgar algumas coisas importantes se você não for cuidadoso. Observe que nesta resposta.
Addison Crump #
A exclusão de caches do @VTCAKAVSMoACE não estragará nada.
At0mic
0

De acordo com a minha experiência, a kernel_taskCPU superior a 100% no meu laptop pode ser resolvida restaurando meu bloco de energia. No entanto, eu moro em um barco e tenho uma fonte CA ocasionalmente inconsistente. (Outro sintoma desse modo de falha é que o laptop indica que está conectado, mas não está carregando.)

Se a fonte de alimentação encontrar uma CA não confiável, ela pára de carregar o laptop. Para resolver isso, desconecte as duas extremidades da fonte de alimentação por alguns segundos e conecte-a novamente. Isso (no meu caso) faz com que o laptop comece a carregar novamente e kernel_task para de comer CPU e os ventiladores param de girar muito.

É melhor pegá-lo antes que o laptop (aparentemente rápido) fique sem bateria.

Tyler A.
fonte