Dlaczego kernel_task zużywa tak dużo procesora?

26

Mam Macbook Pro Retina z następującym sprzętem:

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

Niedawno zaktualizowałem system OS X El Capitan; Miałem teraz ten sam problem dwa razy i to mnie lekko niepokoi.

Losowo mam skoki wykorzystania procesora z kernel_task, z których najwyższy widziałem to 660% procesora. Jest to, szczerze mówiąc, niedopuszczalne i nienaturalne ustawienie dla mojego procesora (zazwyczaj mam całkowite zużycie około 2-3%). Najwyższy zrzut ekranu to:

wprowadź opis zdjęcia tutaj

Za pierwszym razem nie nagrałem tego, co miałem otwarte. Jednak następnym razem byłem gotowy i to jest dokładna lista tego, co otworzyłem:

  • Dwie strony z filmami na YouTube (przy użyciu procesów Safari Networking z maks. Około 44% CPU, zwykle stabilizowane na 8-10% i https://www.youtube.com, które osiągnęły maks. 51% CPU, zazwyczaj około 10-12%)
  • Posłaniec. Wątpliwe, że to miało wpływ, ale, hej, nigdy nie wiadomo.
  • Skype. Ten koleś działał przy stałym 50% zużyciu procesora.

Warto zauważyć, że musiałem zamknąć oba okna YouTube, aby faktycznie uzyskać wystarczającą kontrolę nad komputerem, aby otworzyć Monitor aktywności. Żaden z wyżej wymienionych procesów nie powodował gwałtownego wzrostu, tylko zadanie_ jądra.

Warto również zwrócić uwagę na moich fanów - fani byli na maksimum, wiejąc zimne powietrze. Mimo że kernel_task obracał się przy 660% CPU , o ile mogłem zobaczyć , nie wytwarzano rzeczywistego ciepła .

Właśnie w tym momencie wymuszam wyłączenie komputera - miałem około .5 klatek na sekundę (1 ramka co 2 sekundy, patrzyłem na zegar) i nic nie osiągnąłem, nawet jeśli próbowałem go naprawić.

Jeśli występuje błąd związany z tym, który przeoczyłem, lub jakiś zwariowany problem z OS X, którego brakuje, daj mi znać, ponieważ jest to bardzo frustrujące i bardziej niż niepokojące.

Addison Crump
źródło

Odpowiedzi:

23

Masz klasyczne objawy, że problemy termiczne powodują, że zadanie jądra z wyprzedzeniem zużywa procesor, aby zapobiec przegrzaniu. Jeśli nie zresetowałeś SMC, spróbuj raz . Jeśli kontroler zarządzania systemem rzeczywiście utknął, reakcja na zmieniające się pomiary termiczne może opóźnić się lub pozostawić dmuchawy włączone wyżej niż powinny.

Odpowiedzi przede wszystkim wskazują na rzeczy, które możesz zrobić, aby zmierzyć swap, procesy itp. ... ale skup się na czujnikach termicznych (problem ze sprzętem) lub temperaturze zewnętrznej (środowisko), które możesz sztucznie schłodzić, aby usunąć spowolnienie zaprojektowane do zarządzania ciepłem .

Jeśli nie możesz dokładnie zmierzyć temperatury obudowy za pomocą termometru na podczerwień, wypróbuj oprogramowanie takie jak https://bjango.com/mac/istatmenus/, aby sprawdzić poszczególne czujniki temperatury i skorelować je z „skokami zużycia procesora” przez kernel_task . Warto raz zresetować SMC. Jeśli utknie, reakcja na zmieniające się pomiary termiczne może opóźnić się lub pozostawić dmuchawy włączone wyżej, niż powinny.

bmike
źródło
Nie wydaje się to jednak problemem - fani wydmuchiwali idealnie chłodne powietrze z otworów wentylacyjnych. Ponadto podczas testowania przy użyciu zewnętrznego rozruchu systemu Ubuntu 15.04 nie zaobserwowano gwałtownego wzrostu zużycia wentylatora ani odczytów temperatury. Sugerujesz, że a) termometry źle się obliczają lub b) wystąpiła usterka w reakcji wentylatora? A może coś zupełnie innego?
Addison Crump,
@VTCAKAVSMoACE Tak - zimne powietrze wzmacnia, że ​​czujniki są wadliwe w mojej ocenie. Możliwe, że SMC jest pomieszane, więc spróbuj raz zresetować.
bmike
Zresetowałem SMC i zweryfikowałem (dioda LED się zmieniła, więc na pewno tak się stało). Jeśli kernel_task znowu nie działa w ciągu najbliższych dwóch dni, dam ci znać. W przeciwnym razie zaznaczę to jako odpowiedź.
Addison Crump,
2
Mogę powiedzieć z prawie całkowitą pewnością, że resetowanie SMC zadziałało. Mam pchnął mój komputer do najdalszych granic CPU do wytwarzania ciepła i było całkowicie w porządku, jak również normalnego użytkowania. Dokonam ostatecznej edycji, aby uczynić to bardziej dostępnym i łatwiejszym do znalezienia i oznaczenia tego jako odpowiedzi.
Addison Crump,
Resetowanie SMC działało dla mnie.
Julian A.
2

Spójrz na swoich fanów! W przypadku mojego Macbooka Pro (2015) nie był to problem z oprogramowaniem. Mac był całkowicie bezużyteczny. Otworzyłam Macbooka odkurzyła fanów szczoteczką do zębów. Wyczyściłem też radiator. Po usunięciu radiatora stwierdziłem, że pasta termiczna była sucha. Starannie wyczyściłem starą pastę termiczną. Wynik: koniec problemów z jądrem. Fani przeszli ze stałej prędkości 6000 obr / min do 2000 obr / min (całkowita cisza).

Fox5150
źródło
1

Moje doświadczenie potwierdza teorię, że nadmierne użycie procesora powoduje, że kernel_task działa na wysokim poziomie. W moim przypadku często zdarza się, gdy mam zbyt wiele otwartych okien przeglądarki lub odtwarzanych filmów z YouTube.

Zamykanie systemu Windows lub aplikacji zwykle rozwiązuje problem.

Inne sposoby na ochłodzenie rzeczy:

  • Wyższa prędkość wentylatora. Używam Macs Fan Control z CrystalIdea do ręcznego zwiększania mojej podstawowej prędkości wentylatora do stałej 2500 obr / min lub 3000 obr / min, jeśli to konieczne.

  • Korzystanie z podkładki chłodzącej do laptopa.

  • Klimatyzacja! Temperatura zewnętrzna wpływa również na temperaturę komputera.

EDYCJA: Wcześniej powiedziałem „przegrzanie” zamiast „nadmiernego użycia procesora”. Bardziej precyzyjnie jest powiedzieć „przewidywane przegrzanie na podstawie bieżącej prędkości procesora i wentylatora”, ponieważ system kontroli temperatury na komputerze Mac również je uwzględnia.

jkdev
źródło
Mój komputer nie był gorący, gdy kernel_task zajmował ogromne procenty procesora, jak wspomniano w pytaniu. : P Właściwie było dmuchanie zimnego powietrza.
Addison Crump
System kontroli temperatury na komputerach Mac bierze również pod uwagę przewidywane przegrzanie w oparciu o bieżące użycie procesora. Powoduje, że tak powiem, uderzenia zapobiegawcze.
jkdev
Zmienię swoją odpowiedź, aby zmienić „przegrzanie” na „nadmierne zużycie procesora”.
jkdev
1

Wysoka temperatura w części podwozia podczas ładowania wraz z podłączonymi urządzeniami peryferyjnymi może powodować ten problem, przynajmniej w przypadku MBP 2017. Wystarczy przesunąć kabel ładujący z lewego do prawego portu, aby schłodzić hotspot i rozwiązać problem. Na maszynie z ładowaniem MagSafe spróbuj odłączyć urządzenia peryferyjne od lewych portów, aż bateria będzie pełna.

Użycie procesora nie ma z tym nic wspólnego, ponieważ gorący procesor jest dławiony przez zmniejszanie prędkości zegara, a nie przez planowanie braku obciążenia.

Dowód można znaleźć na stronie /apple//a/363933/27135

Adam
źródło
0

Oto coś, czego możesz spróbować:

  1. Uruchom ponownie (być może już to zrobiłeś)
  2. Ponownie zainstaluj OS X z Recovery HD
  3. Usuń pamięć podręczną, wykonując te polecenia w terminalu rm -rf ~/Library/Caches
  4. Usuń wszystkie pamięci podręczne Safari (ponieważ wydaje się, że przyczyną może być Safari)

Edycja: wygląda na to, że odpowiedź bmike jest znacznie dokładniejsza.

At0mic
źródło
I właśnie zainstalowano go na drugi dzień. Czy po prostu usunięcie pamięci podręcznej teoretycznie zadziała? (nie wprowadzono żadnych zmian do niczego, co wprowadził El Capitan)
Addison Crump
Czekaj przepraszam Zdaję sobie sprawę, co masz na myśli teraz. Usuwam skrytki. Ten problem nie jest utrzymujący się, tylko czasami (dwa razy w ciągu trzech dni), aby wyjaśnić.
Addison Crump,
1
Żadne z nich nie są podstawowymi przyczynami zwiększania wydajności jądra. Usunięcie pamięci podręcznej pogorszy sytuację, ponieważ system wykonuje cykle procesora, aby odbudować buforowane dane.
bmike
Tak - zajrzałem do folderu Caches i zdecydowanie mogę zasugerować, aby tego nie usuwać. To może naprawdę rozerwać kilka ważnych rzeczy, jeśli nie będziesz ostrożny. Pamiętaj, że w tej odpowiedzi.
Addison Crump,
@VTCAKAVSMoACE usunięcie pamięci podręcznej niczego nie zepsuje.
At0mic,
0

Z mojego doświadczenia kernel_taskwynika, że ​​ponad 100% procesora na moim laptopie można rozwiązać, resetując blok zasilania. Mieszkam jednak na łodzi i czasami mam niespójne źródło prądu przemiennego. (Kolejnym objawem tego trybu awarii jest laptop, który wskazuje, że jest podłączony, ale nie ładuje się).

Jeśli zasilacz znajdzie niewiarygodny prąd przemienny, przestaje ładować laptopa. Aby rozwiązać ten problem, odłącz oba końce zasilacza na kilka sekund, a następnie podłącz go ponownie. To (w moim przypadku) powoduje, że laptop zaczyna ładować się ponownie i kernel_task przestaje jeść procesor, a wentylatory przestają wirować.

Najlepiej złapać go, zanim laptop (pozornie szybko) wyczerpie akumulator.

Tyler A.
źródło