Поделиться через


Руководство по устранению неполадок с высоким потреблением ЦП

В этой статье показано, как определить причину устойчивого использования ЦП. Помните, что вы можете ожидать, что использование ЦП увеличивается как процесс или приложение обслуживает запросы. Однако если вы постоянно видите, что использование ЦП остается на высоком уровне (80 процентов или больше) в течение длительных периодов, производительность системы или приложения будет страдать. По этой причине важно понять причину устойчивого высокого использования ЦП, чтобы по возможности устранить проблему.

Средства диагностики

Диспетчер задач

Используйте диспетчер задач для просмотра потребления ЦП, чтобы определить процесс или приложение, вызывающее высокую загрузку ЦП:

  1. Нажмите кнопку "Пуск", введите задачу и выберите диспетчер задач в результатах поиска.
  2. Окно диспетчера задач по умолчанию используется на вкладке "Процессы ". Если в столбце "Имя " отображается один список имен процессов, можно развернуть все экземпляры сгруппированных процессов.
  3. Выберите заголовок столбца ЦП, чтобы отсортировать список по использованию ЦП. Убедитесь, что стрелка, которая отображается в заголовке, указывает вниз, чтобы отсортировать данные от максимального до минимального потребления ЦП.

Если процесс может быть остановлен или связанная служба может быть отключена, остановите процесс или службу. Затем проверьте, устраняет ли проблема.

Монитор ресурсов

Используйте монитор ресурсов для просмотра потребления ЦП:

  1. Нажмите кнопку "Пуск", введите resmon и выберите "Монитор ресурсов" в результатах поиска.

  2. В окне "Монитор ресурсов" выберите вкладку ЦП.

    Примечание.

    Чтобы просмотреть все данные, может потребоваться развернуть окно.

  3. Выберите заголовок среднего столбца ЦП, чтобы отсортировать список по общему использованию ЦП. Убедитесь, что стрелка, которая отображается в заголовке, указывает вниз, чтобы отсортировать данные от максимального до минимального потребления ЦП.

Если любой из процессов показывает более высокую, чем ожидалось, скорость потребления для вашей среды, сначала рассмотрите эти основные процессы при попытке определить причину проблемы.

Обозреватель процессов

Средство обозревателя процессов предоставляет полный обзор того, какие процессы в настоящее время выполняются на компьютере, включая сведения о том, кто вызвал процессы, и сколько из общих системных ресурсов, которые они используют.

Если вы хотите проверить процесс, связанный с операционной системой (например, System), выполните следующие действия:

  1. Запустите обозреватель процессов от имени администратора.
  2. Щелкните правой кнопкой мыши процесс, выберите пункт "Свойства" и перейдите на вкладку "Потоки ".
  3. Выберите поток, который потребляет высокий объем ЦП, а затем выберите Stack , чтобы просмотреть выполняемые функции.

Примечание.

Чтобы получить лучший результат сведений о стеке, настройте символы в обозревателе процессов. Для этого выполните следующие шаги.

  1. Установите средства отладки для Windows.
  2. Запустите обозреватель процессов от имени администратора.
  3. Выберите меню "Параметры" и выберите пункт "Настроить символы".
  4. Измените путь Dbghelp.dll на C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\dbghelp.dll и нажмите кнопку "ОК".

Распространенные сценарии устранения неполадок

В этом разделе описаны сценарии различных процессов, использующих высокую загрузку ЦП.

Уникально именованный процесс Майкрософт

  1. Сбор журнала монитора производительности. Используйте интервал моментального снимка от 1 до 5 секунд.
  2. Соберите журнал записей производительности Windows (WPR), пока происходит высокая загрузка ЦП.

    Примечание.

    Не позволяйте этому журналу работать долго, так как файл растет очень быстро. Чтобы записать высокую загрузку ЦП, необходимо запустить журнал только через несколько минут (три–пять).

  3. Запустите средство ProcDump два раза во время отчеты об использовании ЦП. Пространство между запусками на несколько минут.

Процесс Svchost

Если процесс svchost использует высокую загрузку ЦП, а процесс svchost содержит несколько служб, необходимо разбить каждую службу для запуска в собственном процессе svchost, чтобы определить, какая служба вызывает высокую загрузку ЦП. Для этого выполните следующие шаги:

  1. Откройте окно командной строки с повышенными правами.

  2. Разорвите каждую службу в собственный процесс svchost, если это общий процесс svchost. Для этого выполните следующую команду:

    sc config <service name> type= own
    

    Примечание.

    В этой команде замените <имя> службы фактическим именем службы.

  3. Перезапустить службу

  4. В командной строке выполните команду tasklist /svc , чтобы убедиться, что служба выполняется в собственном процессе svchost.

    Внимание

    После устранения проблемы необходимо вернуться к шагу 2 и вернуться к тому, что вы сделали.

    Для этого замените sc config <service name> type= own sc config <service name> type= share его в команде. Затем перезапустите службу.

  5. После разрыва каждой службы в собственный процесс svchost теперь необходимо определить, какая служба двигала к использованию ЦП или потребляла высокую загрузку ЦП.

  6. Сбор журнала монитора производительности. Используйте интервал моментального снимка от 1 до 5 секунд.

  7. Запишите идентификатор идентификатора обижающего процесса Svchost.

  8. Соберите журнал WPR во время возникновения проблемы.

  9. Запустите ProcDump два раза во время отчеты о высоком использовании ЦП. Пространство между запусками на несколько минут.

Несколько экземпляров процессов с одинаковым именем

Несколько экземпляров процесса могут совместно использовать одно и то же имя. Например, эта проблема может возникнуть с explorer.exe процессами на сервере протокола удаленного рабочего стола (RDP).

Чтобы устранить эту проблему, выполните следующие действия.

  1. Сбор журнала монитора производительности. Используйте интервал моментального снимка от 1 до 5 секунд.

  2. Соберите журнал WPR во время возникновения проблемы.

  3. Запустите ProcDump два раза во время отчеты о высоком использовании ЦП. Пространство между запусками на несколько минут.

  4. Запишите идентификатор идентификатора процесса обижания, выполнив следующую команду:

    tasklist /v /fo csv >Running_Process.txt

Сторонний процесс приложения

Если третий процесс определяется как причина проблемы, необходимо обратиться к поставщику приложений, чтобы понять, почему соответствующий процесс вызывает высокую загрузку ЦП на компьютере.

сбор данных

До возникновения проблемы

Для дальнейшего устранения этой проблемы можно использовать отладочную диагностику 2.0. Чтобы использовать средство, выполните следующие действия.

  1. Установите средство диагностики отладки версии 2 с обновлением 2.

    Внимание

    Удалите все остальные версии средства диагностики отладки перед установкой версии 2.0.

  2. Выберите "Пуск", введите монитор производительности и щелкните правой кнопкой мыши Монитор производительности, чтобы запустить его от имени администратора.

  3. Используйте Монитор производительности для сбора журнала счетчиков производительности и запуска журнала.

При возникновении проблемы

  1. Откройте коллекцию DebugDiag 2.
  2. Выберите вкладку "Процессы", щелкните правой кнопкой мыши рабочий процесс, соответствующий соответствующему пулу приложений, а затем выберите "Создать полный пользователь".
  3. Повторите шаг 2 три раза, пока загрузка ЦП высока.
  4. Остановите ведение журнала Монитор производительности.
  5. Сжатие данных с помощью DebugDiag. Для этого выберите "Средства>создания добавочного файла шкафа".

Мы рекомендуем сохранить информацию, которую вы собрали удобно, если вам нужно связаться с служба поддержки Майкрософт.