2013-01-03 03:52:20 +0000 2013-01-03 03:52:20 +0000
108
108

Устранение неполадок Высокое использование процессора "Системным" процессом

Я заметил, что с некоторого времени моя система зависает, и это, вероятно, вызвано высоким потреблением процессора, вызванным системным процессом.

Все приложения, которые я запустил, это Skype, TeamSpeak и Chrome, так что он определенно не должен съедать такое количество процессора.

Вы можете увидеть саму проблему и запущенные процессы на скриншоте ниже:

Иногда использование процессора достигает 90%, но в среднем оно составляет 40-65%.

Параметры моего ПК:

  • Windows 8 (пользовательский предварительный просмотр)
  • Intel Core i3 - 2350M
  • 8 Гб оперативной памяти

Буду признателен за любую попытку помочь! С уважением.

–UPDATE–

Как пользователь ниже опубликовал отличный ответ, я заметил, что процесс, который съедает большую часть процессора в системе называется Arthurx.sys, простой google говорит, что это TPLink драйвер (wifi адаптер, я купил около 2 недель назад!) драйверы были установлены с Windows MSDN, но также пытался установить драйверы с прилагаемого компакт-диска, но это не помогло. С самого начала система использует только 5% процессора, но после 2-4 часов работы она растет и достигает 40-60% использования процессора.

Название устройства: TPLink WN722N

Ответы (5)

107
107
107
2017-01-06 20:34:09 +0000

Для диагностики проблем использования процессора необходимо использовать Event Tracing for Windows (ETW) для считывания данных выборки процессора / профиля.

Для считывания данных установите Windows Performance Toolkit , который является частью Windows SDK .

Windows 10 WPT можно использовать в Windows 8/Server 2012, Windows 8.1/Server 2012R2 и Windows 10/Server 2016. Если вы все еще используете Windows 7, используйте SDK/WPT с Build 15086 .

(все остальные записи можно не выбирать)

Теперь запустите WPRUI.exe, выберите First Level, в разделе Ресурсы выберите использование ЦПУ и нажмите старт.

Теперь перехватите 1 минуту использования ЦПУ. Через 1 минуту нажмите на Save.

Теперь проанализировать сгенерированный ETL файл с Windows Performance Analyzer путем перетаскивания графика CPU Usage (sampled) на analysis pane и заказа столбцов, как вы видите на картинке:

Внутри WPA, загрузить отладочные символы и развернуть Стек процесса SYSTEM. В данной демонстрации, использование процессора происходит от драйвера nVIDIA.

  • *

В данной демонстрации, использование процессора происходит от драйвера NIC Realtek:

  • *

Когда вы видите звонки типа ntoskrnl.exe! Вид KeTrimWorkerThreadRoutine, ntoskrnl.exe! Мм Верификатор ТримПамять, ntoskrnl.exe! Верификатор KeLeaveCriticalRegion, это означает, что у вас включен Driver Verifier. Это также сильно снижает производительность и приводит к высокой нагрузке на систему. Отключите драйверный верификатор и перезагрузитесь.

  • *

В этой демонстрации драйвер iai2ce.sys (драйвер Intel Serial IO GPIO Controller) вызывает это:

  • *

В этом примере использование процессора происходит из файла rtsuvc.sys, который кажется Realtek UVC webcam Driver

  • *

Эта демонстрация показывает, что драйвер Bitdefender ignis.sys

В следующем примере, использование процессора кассируется драйвером сети Broadcom bcmwl664.sys

  • *

Когда вы видите ntoskrnl.exe!MiZeroWorkerPages как причину, это хитрее. Это означает, что функция ядра, которая обнуляет память перед повторным использованием, приводит к высокой загрузке процессора:

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

  • *

Когда вы видите эти ntoskrnl.exe!RtlpGenericRandomPatternWorker, ntoskrnl.exe!RtlpTestMemoryRandomUp вызывает

, использование процессора приходит от ядра, чтобы проверить память на наличие проблем (memtest). Это использование запускается с помощью задачи обслуживания в режиме ожидания Windows 8.1/10. Вы можете использовать планировщик задач для отключения холостой задачи.

В Windows 10, задача называется RunFullMemoryDiagnostics под Microsoft > Windows > MemoryDiagnostic > RunFullMemoryDiagnostic.

  • *

В этом случае использование процессора, кажется, происходит от Data Deduplication Feature (dedup.sys!DdpPostCreate) Windows Server:

  • *

В этой демонстрации, использование процессора вызвано драйвером WIFI карты athrx.sys

Поиск обновления драйвера, если вы видите это.

  • *

В следующей демо-версии задействован драйвер Citrix:

Так что свяжитесь с вашими ИТ-специалистами для решения проблем Citrix.

  • *

В этой демо-версии функция usbhub.sys!UsbhPortRecycle вызывает использование процессора:

Изменение портов USB2.0 на скорость 1.1 или подключение USB-накопителей к другим USB-накопителям 2. 0 портов помогли некоторым пользователям.

  • *

В этом случае, небольшое количество использования системы приходит от драйвера Acronis tdrpm251.sys:

  • *

В этой демонстрации, использование процессора ntoskrnl.exe!KeAcquireSpinLockRaiseToDpc и ntoskrnl.exe!KeReleaseSpinLock.

, поэтому драйвер использует SpinLocks очень интенсивно. Отключите некоторые устройства/драйверы до тех пор, пока не увидите драйвер, который их вызывает.

  • *

В этом случае, использование процессора вызвано драйвером L1C62x64.sys

Это драйвер qualcomm atheros AR8171/8175 PCI-E gigabit Ethernet. Обновите драйвер, если вы видите его в стеке.

  • *

Здесь, использование процессора происходит от сканирования файла хоста (netbt.sys!DelayedScanLmHostFile)

Убедитесь, что ваш файл хоста не слишком велик, чтобы избежать этого использования.

  • *

В этом случае, использование процессора происходит от SRTSP64.SYS от symantec.

Обновите ваш используемый продукт symantec до последней версии.

  • *

Здесь информация об использовании процессора поступает от AMD GPU драйвера (atikmdag.sys)

Если вы видите это, перейдите на сайт AMD и получите последнюю версию драйвера для вашей AMD карты.

  • *

Здесь драйверы TMXPFlt.sys и VsapiNt.sys приводят к высокой нагрузке на процессор.

Из того, что я вижу, эти файлы являются частью пакета Trend Micro AV. Обновите инструмент или удалите его.

  • *

В данном примере использование процессора происходит от функции ntoskrnl.exe!MmGetPageFileInformation

Эта функция получает информацию о файле страницы.

Описание маршрута: Эта рутина возвращает информацию об активных в данный момент файлах подкачки.

Отключите файл подкачки, перезагрузитесь и включите его снова и посмотрите, исправит ли это. Также, удаление служб Intel (например, Intel Content Protection HECI Service) кажется, исправило это для пользователя .

  • *

Здесь видно, что драйвер Netwtw04.sys (Intel Wifi driver) вызывает функцию flushCompleteAllPendingFlushRequests, и это приводит к высокой загрузке процессора.

Потому что при загрузке отладочных символов используется драйвер входящего почтового ящика Windows. Только здесь мы можем получить отладочные символы, чтобы увидеть callstack с именем функции flushCompleteAllPendingFlushRequests.

Здесь нужно установить последний драйвер от Intel , чтобы исправить это.

  • *

Самый сложный случай использования SYSTEM - это использование ACPI.sys в callstack:

Line #, DPC/ISR, Module, Stack, Count, Process, Weight (in view) (ms), TimeStamp (s), % Weight
6, , , | |- ACPI.sys!ACPIWorkerThread, 40246, , 39.992,941063, , 4,13
7, , , | | ACPI.sys!RestartCtxtPassive, 40246, , 39.992,941063, , 4,13
8, , , | | ACPI.sys!InsertReadyQueue, 40246, , 39.992,941063, , 4,13
9, , , | | ACPI.sys!RunContext, 40246, , 39.992,941063, , 4,13
10, , , | | ntoskrnl.exe!KeReleaseSpinLock, 40246, , 39.992,941063, , 4,13
11, , , | | ntoskrnl.exe!KiDpcInterrupt, 40246, , 39.992,941063, , 4,13
12, , , | | ntoskrnl.exe!KiDispatchInterruptContinue, 40246, , 39.992,941063, , 4,13
13, , , | | ntoskrnl.exe!KxRetireDpcList, 40246, , 39.992,941063, , 4,13
14, , , | | ntoskrnl.exe!KiRetireDpcList, 40246, , 39.992,941063, , 4,13
15, , , | | |- ntoskrnl.exe!KiExecuteAllDpcs, 40198, , 39.945,173325, , 4,13
16, , , | | | |- ACPI.sys!ACPIInterruptDispatchEventDpc, 27565, , 27.408,930428, , 2,83
17, , , | | | | |- ACPI.sys!ACPIGpeEnableDisableEvents, 24525, , 24.384,921620, , 2,52
18, , , | | | | | ACPI.sys!ACPIWriteGpeEnableRegister, 24525, , 24.384,921620, , 2,52
19, , , | | | | | |- hal.dll!HalpAcpiPmRegisterWrite, 24421, , 24.281,015516, , 2,51
20, , , | | | | | | |- hal.dll!HalpAcpiPmRegisterWritePort, 24166, , 24.027,316013, , 2,48

это очень сложно отладить. В теме sysinternals topic я перечислил некоторые советы:

  • убедитесь, что процессор не перегревается из-за пыли в вентиляторе процессора
  • обновите или прошивайте заново (аналогично) BIOS/UEFI
  • загрузите настройки BIOS/UEFI по умолчанию
  • убедитесь, что батарея не повреждена, извлеките батарею из ноутбука или отключите батарею в диспетчере устройств.
  • замена перемычки на HDD кадди - если вы заменили DVD/Blue-Ray Drive на Caddy для установки SSD рядом со старым HDD

В следующей демонстрации, драйвер Intel HD igdkmd64.sys версии .4574 для Intel HD 630 вызывает проблему:

Решение заключается в update to driver с версией, по крайней мере . 4590.

  • *

В следующем случае использование процессора в процессе SYSTEM вызвано драйвером stdriverx64.sys

. Обновите это программное обеспечение/драйвер, если вы видите это в WPA.

  • *

Если вы видите драйвер с именем risdxc64.sys в стоге вызовов SYSTEM, который вызывает высокую нагрузку на процессор, обновите драйвер Ricoh PCIe SDXC/MMC Host Controller или отключите SD кард-ридер в диспетчере устройств, если обновление драйвера не исправляет его.

Этот SD кард-ридер, кажется, встроен во многие устройства Lenovo.

  • *

Пользователь @stevemidgley показал новую проблему более интенсивного использования процессора с Wdf01000.sys!FxSystemWorkItem::_WorkItemThunk

Здесь Вы можете увидеть драйвер UDE.sys, вызывающий это.

В символьном хабе

Я вижу, что он принадлежит драйверу модема и PNP данные трассы показывают Fibocom L850-GL (LTE модем) как возможное устройство:

И решение заключается в отключении модема и USB композитного устройства в менеджере устройств.


93
93
93
2013-01-03 13:13:47 +0000

Это может быть вызвано неисправным драйвером или другим модулем, загруженным системой. Чтобы заглянуть внутрь Системного процесса, можно воспользоваться утилитой Обозреватель процессов .

Загрузить и запустить его, затем выбрать Системный процесс, щелкнуть правой кнопкой мыши и выбрать Свойства:

Перейти на вкладку Threads (игнорировать диалоговое окно, в котором упоминаются символы):

Это покажет, какой файл использует чрезмерное использование процессора, из которого вы можете попытаться его диагностировать.

Как другие говорили в комментариях, тем не менее, вам действительно нужно как можно скорее отойти от версий предварительного просмотра!

4
4
4
2017-07-13 17:19:04 +0000

Заметка о загрузке отладочных символов для добавления в magicandre1981’s excellent response : если загрузка символов в Windows Performance Analyzer работает правильно, то после отметки Trace > Load Symbols вы должны увидеть индикатор прогресса сверху с Загрузкой символов, который показывает имена файлов рядом с ним и занимает несколько минут на выполнение. Также вы должны увидеть много строк, как показано ниже в Diagnostic Console:

SYMSRV: File: Accessibility.ni.pdb

SYMSRV: Notifies the client application that a proxy has been detected.
SYMSRV: Connecting to the Server: http://msdl.microsoft.com/download/symbols.
SYMSRV: Successfully connected to the Server.
SYMSRV: Sending the information request to the server.
SYMSRV: Successfully sent the information request to the server.
SYMSRV: Waiting for the server to respond to a request.
SYMSRV: Successfully received a response from the server.
SYMSRV: Closing the connection to the Server.
SYMSRV: Successfully closed the connection to the Server.
SYMSRV: Get File Path: /download/symbols/Accessibility.ni.pdb/7B46178957827CDAB7EE4C86EDEE1DAE1/Accessibility.ni.pdb

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

В моем случае изначальная загрузка отладочных символов не сработала. Я исправил это, следуя эти инструкции :

  1. Выясните, используете ли вы x86 или x64 версию Windows Performance Toolkit.

  2. Скопируйте файлы dbghelp.dll и symsrv.dll из соответствующего каталога отладчика в каталог Windows Performance Toolkit. В моей системе соответствующими каталогами являются:

  3. Перезапустите Windows Performance Analyzer так, чтобы была выбрана правильная версия dbghelp.dll.

-1
-1
-1
2014-12-27 21:50:04 +0000

У меня была та же проблема, она исчезла, когда я удалил один из модулей оперативной памяти. Похоже, он был неисправен. Запуск Windows 7, 32-битный.

-1
-1
-1
2018-02-11 21:19:31 +0000

Во-первых, обзор и предоставленная информация очень информативна, однако, как правило, вы можете разобраться в этом с гораздо меньшим уровнем интеллекта! Я просто использовал MSCOFIG.EXE и двоичный поиск, чтобы изолировать сервис-нарушитель. Я обнаружил, что большинство проблем, подобных этой, вызваны программным обеспечением Intel. Я начинаю с отключения любого сервиса, который не имеет названия компании. Затем я начинаю работу с сервисами Intel. Затем полный двоичный поиск. Обычно на решение проблемы в чьем-то компьютере уходит максимум час. Intel никогда не была хорошей компьютерной компанией, и их программное обеспечение демонстрирует это. Давайте посмотрим правде в глаза, архитектуре Pentium было десять лет, когда она была выпущена. Кто мог построить архитектуру компьютера со страничной памятью во времена VAX? Ну, я не буду утомлять вас историей. Не то, чтобы я тоже фанат AMD или Microsoft. Возможно, когда-нибудь мы снова вернемся к созданию настоящих компьютеров.

Похожие вопросы

3
19
10
28
2