Udostępnij za pośrednictwem


Wskazówki dotyczące rozwiązywania problemów z wysokim użyciem procesora CPU

Ten artykuł pomaga zidentyfikować przyczynę trwałego wysokiego użycia procesora CPU. Należy pamiętać, że możesz oczekiwać, że użycie procesora CPU zwiększy się w miarę przetwarzania lub aplikacja obsługuje żądania. Jednak jeśli stale widzisz, że użycie procesora CPU pozostanie na wysokim poziomie (80 procent lub więcej) przez dłuższy czas, wydajność systemu lub aplikacji będzie cierpieć. Z tego powodu ważne jest, aby zrozumieć przyczynę trwałego wysokiego użycia procesora CPU, aby w miarę możliwości rozwiązać problem.

Narzędzia do rozwiązywania problemów

Menedżer zadań

Użyj Menedżera zadań, aby wyświetlić użycie procesora CPU, aby ułatwić zidentyfikowanie procesu lub aplikacji powodującej wysokie użycie procesora CPU:

  1. Wybierz pozycję Start, wprowadź zadanie, a następnie wybierz pozycję Menedżer zadań w wynikach wyszukiwania.
  2. Domyślnie okno Menedżer zadań jest wyświetlane na karcie Procesy . Jeśli w kolumnie Nazwa zostanie wyświetlona jedna lista nazw procesów, możesz rozwinąć dowolne wystąpienia grupowanych procesów.
  3. Wybierz nagłówek kolumny procesora CPU, aby posortować listę według użycia procesora CPU. Upewnij się, że strzałka wyświetlana w nagłówku wskazuje w dół, aby posortować dane od najwyższego do najniższego użycia procesora CPU.

Jeśli proces można zatrzymać lub powiązaną usługę można wyłączyć, zatrzymaj proces lub usługę. Następnie sprawdź, czy to ogranicza problem.

Monitor zasobów

Użyj monitora zasobów, aby wyświetlić użycie procesora CPU:

  1. Wybierz pozycję Start, wprowadź resmon, a następnie wybierz pozycję Monitor zasobów w wynikach wyszukiwania.

  2. W oknie Monitor zasobów wybierz kartę Procesor CPU.

    Uwaga

    Może być konieczne zmaksymalizowanie okna, aby wyświetlić wszystkie dane.

  3. Wybierz nagłówek kolumny Average CPU ,aby posortować listę według ogólnego użycia procesora CPU. Upewnij się, że strzałka wyświetlana w nagłówku wskazuje w dół, aby posortować dane od najwyższego do najniższego użycia procesora CPU.

Jeśli którykolwiek z procesów pokazuje wyższą niż oczekiwaną stawkę zużycia środowiska, należy najpierw rozważyć te najważniejsze procesy podczas próby ustalenia przyczyny problemu.

Eksplorator procesów

Narzędzie Eksplorator procesów zawiera pełne omówienie procesów, które są obecnie uruchomione na komputerze, w tym szczegółowe informacje o tym, kto wywołał procesy i ile łącznych zasobów systemowych zużywają.

Jeśli chcesz zweryfikować proces związany z systemem operacyjnym (na przykład System), wykonaj następujące kroki:

  1. Uruchom Eksploratora procesów jako administrator.
  2. Kliknij prawym przyciskiem myszy proces, wybierz pozycję Właściwości, a następnie wybierz kartę Wątki .
  3. Wybierz wątek, który zużywa wysokie użycie procesora CPU, a następnie wybierz pozycję Stack , aby wyświetlić uruchomione funkcje.

Uwaga

Aby uzyskać lepszy wynik informacji o stosie, skonfiguruj symbole w Eksploratorze procesów. W tym celu wykonaj następujące kroki:

  1. Zainstaluj narzędzia debugowania dla systemu Windows.
  2. Uruchom Eksploratora procesów jako administrator.
  3. Wybierz menu Opcje, a następnie wybierz pozycję Konfiguruj symbole.
  4. Zmień ścieżkę Dbghelp.dll na C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\dbghelp.dll, a następnie wybierz przycisk OK.

Typowe scenariusze rozwiązywania problemów

W tej sekcji przedstawiono scenariusze różnych procesów korzystających z wysokiego użycia procesora CPU.

Unikatowo nazwany pojedynczy proces firmy Microsoft

  1. Zbierz dziennik monitora wydajności. Użyj interwału migawki od 1 do 5 sekund.
  2. Zbierz dziennik narzędzia Windows Performance Recorder (WPR), gdy występuje wysokie użycie procesora CPU.

    Uwaga

    Nie pozwól, aby ten dziennik był uruchamiany przez długi czas, ponieważ plik bardzo szybko rośnie. Aby przechwycić wysokie użycie procesora CPU, należy uruchomić dziennik tylko przez kilka minut (od trzech do pięciu).

  3. Uruchom narzędzie ProcDump dwa razy podczas zgłoszonego wysokiego użycia procesora CPU. Odsuń od siebie przebiegi o kilka minut.

Proces Svchost

Jeśli proces svchost zużywa wysokie użycie procesora CPU, a proces svchost zawiera więcej niż jedną usługę, należy przerwać każdą usługę do uruchomienia we własnym procesie svchost, aby określić, która usługa powoduje wysokie użycie procesora CPU. W tym celu wykonaj następujące kroki:

  1. Otwórz okno wiersza polecenia z podwyższonymi uprawnieniami.

  2. Podziel każdą usługę na własny proces svchost, jeśli jest to udostępniony proces svchost. Aby to zrobić, uruchom następujące polecenie:

    sc config <service name> type= own
    

    Uwaga

    W tym poleceniu zastąp <nazwę> usługi rzeczywistą nazwą usługi.

  3. Uruchom ponownie usługę

  4. W wierszu polecenia uruchom polecenie tasklist /svc , aby sprawdzić, czy usługa jest uruchomiona we własnym procesie svchost.

    Ważne

    Po rozwiązaniu problemu należy powrócić do kroku 2 i przywrócić to, co zrobiłeś.

    W tym celu zastąp ciąg sc config <service name> type= own ciągiem sc config <service name> type= share w poleceniu . Następnie uruchom ponownie usługę.

  5. Po podzieleniu każdej usługi na własny proces svchost należy teraz określić, która usługa napędzała użycie procesora CPU lub zużywała wysokie użycie procesora CPU.

  6. Zbierz dziennik monitora wydajności. Użyj interwału migawki od 1 do 5 sekund.

  7. Zarejestruj identyfikator PID procesu Svchost o przestępstwach.

  8. Zbierz dziennik funkcji WPR podczas występowania problemu.

  9. Uruchom narzędzie ProcDump dwa razy podczas zgłoszonego wysokiego użycia procesora CPU. Odsuń od siebie przebiegi o kilka minut.

Wiele wystąpień procesów o tej samej nazwie

Kilka wystąpień procesu może mieć taką samą nazwę. Na przykład ten problem może wystąpić z procesami explorer.exe na serwerze protokołu RDP (Remote Desktop Protocol).

Aby rozwiązać ten problem, wykonaj następujące kroki:

  1. Zbierz dziennik monitora wydajności. Użyj interwału migawki od 1 do 5 sekund.

  2. Zbierz dziennik funkcji WPR podczas występowania problemu.

  3. Uruchom narzędzie ProcDump dwa razy podczas zgłoszonego wysokiego użycia procesora CPU. Odsuń od siebie przebiegi o kilka minut.

  4. Zarejestruj identyfikator PID procesu naruszenia, uruchamiając następujące polecenie:

    tasklist /v /fo csv >Running_Process.txt

Proces aplikacji innej firmy

Jeśli trzeci proces zostanie zidentyfikowany jako przyczyna problemu, należy skontaktować się z dostawcą aplikacji, aby zrozumieć, dlaczego odpowiedni proces powoduje wysokie użycie procesora CPU na komputerze.

Zbieranie danych

Przed wystąpieniem problemu

Aby rozwiązać ten problem, możesz użyć narzędzia Debug Diagnostic 2.0. Aby użyć narzędzia, wykonaj następujące kroki.

  1. Zainstaluj narzędzie diagnostyczne debugowania w wersji 2 Update 2.

    Ważne

    Odinstaluj wszystkie inne wersje narzędzia diagnostycznego debugowania przed zainstalowaniem wersji 2.0.

  2. Wybierz pozycję Start, wprowadź monitor wydajności, a następnie kliknij prawym przyciskiem myszy monitor wydajności, aby uruchomić go jako administrator.

  3. Użyj monitor wydajności, aby zebrać dziennik licznika wydajności i uruchomić rejestrowanie.

Gdy wystąpi problem

  1. Otwórz kolekcję DebugDiag 2.
  2. Wybierz kartę Procesy , kliknij prawym przyciskiem myszy proces roboczy odpowiadający odpowiedniej puli aplikacji, a następnie wybierz pozycję Utwórz pełny użytkownik.
  3. Powtórz krok 2 trzy razy, gdy użycie procesora CPU jest wysokie.
  4. Zatrzymaj rejestrowanie monitor wydajności.
  5. Kompresuj dane przy użyciu narzędzia DebugDiag. W tym celu wybierz pozycję Narzędzia>Utwórz plik Cabinet przyrostu.

Zalecamy przechowywanie przydatnych informacji na wypadek, gdy musisz skontaktować się z pomoc techniczna firmy Microsoft.