He notado que desde algún momento mi sistema se está congelando y probablemente se debe al alto uso de CPU causado por el proceso del sistema.
Todas las aplicaciones que estoy ejecutando son Skype, TeamSpeak y Chrome, por lo que definitivamente no debería consumir esa cantidad de CPU.
Puede ver el problema en sí y los procesos en ejecución en la siguiente captura de pantalla:
A veces, el uso de la CPU alcanza el 90%, pero el uso promedio es del 40 al 65%.
Parámetros de mi PC:
- Windows 8 (vista previa del cliente)
- Intel Core i3 - 2350M
- 8 GB de RAM
¡Agradecería cualquier intento de ayuda! Saludos.
--ACTUALIZAR--
Como el usuario a continuación publicó una excelente respuesta, me di cuenta de que el proceso que consume más CPU en el sistema se llama Arthurx.sys
, simplemente Google dice que es un controlador TPLink (un adaptador wifi, ¡lo compré hace como 2 semanas!). Se instaló desde Windows MSDN, pero también intenté instalar los controladores desde el CD adjunto, pero no ayuda. Desde el inicio del sistema, utiliza aproximadamente el 5% de la CPU únicamente, pero después de 2 a 4 horas de funcionamiento crece y alcanza el 40-60% del uso de la CPU.
Nombre del dispositivo:TPLink WN722N
Respuesta1
Introducción
El uso elevado de CPU por parte del proceso "Sistema" a menudo puede deberse a un problema con el controlador de hardware (error, versión antigua, incompatibilidad, etc.).
El proceso del sistema carga (o aloja) múltiples controladores de hardware de diferentes proveedores que requieren un mayor nivel de acceso a la memoria. Es por eso que diagnosticar al culpable específico puede requerir un poco de trabajo de detective, como se describe a continuación.
Diagnóstico del problema
Para diagnosticar los problemas de uso de la CPU, debe utilizar el seguimiento de eventos para Windows (ETW) para capturar datos/perfil de muestreo de la CPU.
Para capturar los datos,instalar el kit de herramientas de rendimiento de Windows, que forma parte delSDK de Windows.
El WPT de Windows 10 se puede utilizar en Windows 8/Server 2012, Windows 8.1/Server 2012R2 y Windows 10/Server 2016. Si todavía usa Windows 7, use elSDK/WPT con compilación 15086.
(todas las demás entradas se pueden deseleccionar)
Ahora ejecute WPRUI.exe
, seleccione First Level
, en Recurso seleccioneuso de CPUy haga clic encomenzar.
Ahora capture 1 minuto del uso de la CPU. Después de 1 minuto, haga clic enAhorrar.
Ahoraanalizar el archivo ETL generado con el Analizador de rendimiento de Windowsarrastrando y soltando el CPU Usage (sampled)
gráfico analysis pane
y ordenando las columnas como se ve en la imagen:
Dentro de WPA,cargar los símbolos de depuracióny expanda Pila del proceso SISTEMA. En esta demostración, el uso de la CPU proviene del controlador nVIDIA.
En la siguiente demostración, el uso de la CPU proviene del controlador NIC Realtek:
Cuando ves llamadas comontoskrnl.exe!ViKeTrimWorkerThreadRoutine, ntoskrnl.exe!MmVerificadorTrimMemory, ntoskrnl.exe!VerificadorKeDejarRegiónCrítica, esto significa que tiene habilitado el Verificador de controladores. Esto también perjudica mucho el rendimiento y provoca un uso elevado del SISTEMA.Deshabilitar el verificador de controladoresy reiniciar.
En esta demostración, el controlador iai2ce.sys
(controlador Intel Serial IO GPIO Controller) causa lo siguiente:
En este ejemplo, el uso de la CPU proviene del archivo rtsuvc.sys
que parece ser elRealtek UVC webcam Driver
Esta demostración muestra el controlador Bitdefenderignis.sys
En el siguiente ejemplo, el uso de la CPU se debe al controlador de red Broadcom.bcmwl664.sys
Cuando lo ves ntoskrnl.exe!MiZeroWorkerPages
como causa, es más complicado. Esto significa que la función del kernel que pone a cero la memoria antes de que pueda usarse nuevamente causa un alto uso de la CPU:
No existe una forma real de detectar qué proceso lo causa, pero sé que Chrome puede causarlo si tiene habilitada la aceleración de hardware en Chrome. Entonces, si ves esto y usas Chrome, desactiva la aceleración de hardware en Chrome.
Cuando veas esosntoskrnl.exe!RtlpGenericRandomPatternWorker, ntoskrnl.exe!RtlpTestMemoryRandomUpllamadas
el uso de la CPU proviene del Kernel para probar la memoria en busca de problemas (memtest). Este uso se activa mediante la tarea de mantenimiento inactivo de Windows 8.1/10. Puede utilizar el Programador de tareas para desactivar la tarea inactiva.
En Windows 10, la tarea se llama RunFullMemoryDiagnostics enMicrosoft > Windows > MemoryDiagnostic > RunFullMemoryDiagnostic.
En este caso, el uso de la CPU parece provenir de la Data Deduplication
Función ( dedup.sys!DdpPostCreate
) de Windows Server:
En esta demostración, el uso de la CPU es causado por el controlador de la tarjeta WIFI.athrx.sys
Busque una actualización del controlador si ve esto.
En la siguiente demostración, participa un controlador Citrix:
Comuníquese con su departamento de TI para saber cómo resolver los problemas de Citrix.
En esta demostración, la función usbhub.sys!UsbhPortRecycle
provoca el uso de la CPU:
Cambiando los puertos USB2.0 a velocidad 1.1o conectar unidades USB a otros puertos USB 2.0 ayudó a algunos usuarios.
En este caso, una pequeña cantidad de uso del SISTEMA proviene del controlador Acronis tdrpm251.sys
:
En esta demostración, el uso de la CPU ntoskrnl.exe!KeAcquireSpinLockRaiseToDpc
y ntoskrnl.exe!KeReleaseSpinLock
.
entonces un conductor está usandoCerraduras giratoriasmuy pesadamente. Deshabilite algunos dispositivos/controladores hasta que vea uno que lo cause.
En este caso, el uso de la CPU es causado por el controlador.L1C62x64.sys
Este es el qualcomm atheros AR8171/8175 PCI-E gigabit Ethernet
conductor. Así que actualice el controlador si lo ve en la pila.
Aquí, el uso de la CPU proviene del escaneo del archivo host (netbt.sys!DelayedScanLmHostFile)
asegúrese de que su archivo de hosts no sea demasiado grande para evitar este uso.
En este caso, el uso de CPU proviene SRTSP64.SYS
de Symantec.
Actualice su producto Symantec usado a la última versión.
Aquí, el uso de la CPU proviene del controlador de GPU AMD (atikmdag.sys)
Si ve esto, vaya al sitio de AMD y obtenga el controlador más reciente para su tarjeta AMD.
Aquí, los controladores TMXPFlt.sys y VsapiNt.sys provocan un uso elevado de la CPU.
Por lo que veo, esos archivos son parte de la suite Trend Micro AV. Actualice la herramienta o elimínela.
En este ejemplo, el uso de la CPU proviene de la funciónntoskrnl.exe!MmGetPageFileInformation
Esta función obtiene información sobre el archivo de paginación.
Descripción de la rutina: esta rutina devuelve información sobre los archivos de paginación actualmente activos.
Deshabilite el archivo de paginación, reinicie y habilítelo nuevamente y vea si esto lo soluciona. Además, eliminar los servicios Intel (por ejemplo, el servicio HECI de protección de contenido Intel)parece arreglarlo para un usuario.
Aquí puede ver que el controlador Netwtw04.sys
(controlador Intel Wifi) llama a la función flushCompleteAllPendingFlushRequests
y esto provoca un uso elevado de la CPU.
Debido a que los símbolos de depuración se cargan, se utiliza el controlador de la bandeja de entrada de Windows. Solo aquí podemos obtener símbolos de depuración para ver la pila de llamadas con el nombre de la función flushCompleteAllPendingFlushRequests
.
Aquí deberíasinstale el controlador más reciente de Intelarreglarlo.
El caso más complicado de uso del SISTEMA es el uso de ACPI.sys en la pila de llamadas:
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
esto es extremadamente difícil de depurar. en untema interno del sistema, enumeré algunos consejos:
- asegúrese de que la CPU no se sobrecaliente debido al polvo en el ventilador de la CPU
- actualice o vuelva a actualizar el (mismo) BIOS/UEFI
- cargar la configuración predeterminada de BIOS/UEFI
- asegúrese de que la batería no esté dañada, retírela de la computadora portátil o desactívela en el administrador de dispositivos.
- cambiar jersey en carrito de disco durosi reemplazó la unidad de DVD/Blue-Ray con un Caddy para instalar un SSD junto a su antiguo HDD
- desactivar algunos dispositivossegún lo aconsejado por este usuario
- Si utiliza un chipset Intel, intente instalarTecnología Intel de almacenamiento rápido (RST)para reemplazar el controlador AHCI estándar de Windows. Esto tambiénparece ayudar.
- el usuarioshayna descubierto, que usandoProcess Hacker (iniciado como administrador)suspender los hilos de los problemas de ACPI.sys "soluciona" el problema. Así que prueba esta solución si todos los demás pasos no te solucionan el problema.
En la siguiente demostración, el controlador Intel HD igdkmd64.sys
en la versión .4574 para Intel HD 630 causa el problema:
La solución esactualizar al controladorcon versión de al menos .4590.
En el siguiente caso, el uso de CPU del proceso SISTEMA es causado por el controladorstdriverx64.sys
Esto parece ser uncontrolador de transmisión de audio. Así que actualice este software/controlador si ve esto en WPA.
Si ve un controlador llamado risdxc64.sys
en la pila de llamadas del SISTEMA que causa un uso elevado de la CPU, actualice elControlador de host Ricoh PCIe SDXC/MMCcontrolador o deshabilite el lector de tarjetas SD en el administrador de dispositivos si ninguna actualización del controlador lo soluciona.
Este lector de tarjetas SD parece estar integrado en muchos dispositivos Lenovo.
El usuario @stevemidgley mostró un nuevo problema de mayor uso de CPU conWdf01000.sys!FxSystemWorkItem::_WorkItemThunk
Aquí puede ver un controlador UDE.sys que lo causa.
En el centro de símbolos
Puedo ver que pertenece al controlador del módem y los datos PNP del seguimiento muestran Fibocom L850-GL
(módem LTE) como posible dispositivo:
Y la solución es desactivar el módem y el dispositivo compuesto USB en el administrador de dispositivos.
El usuario@fajarproporcionó el siguiente caso:
Aquí el uso de la CPU es pequeño, pero si cambia la vista al uso de DPC/ISR
Puede ver que el controlador avgNetHub.sys provoca un gran uso de DPC.
El nombre indica que este controlador forma parte del software antivirus AVG. Así que actualice el software o elimínelo si ve esto en su seguimiento.
Respuesta2
Esto puede deberse a un controlador defectuoso u otro módulo cargado por el sistema. Para mirar dentro del proceso del sistema, puede usar una herramienta comoExplorador de procesos.
Descárguelo y ejecútelo, luego seleccione el proceso Sistema, haga clic derecho y seleccione Propiedades:
Cambie a la pestaña Hilos (ignore el cuadro de diálogo que menciona símbolos):
Esto mostrará qué archivo está utilizando un uso excesivo de CPU, desde donde podrá intentar diagnosticarlo.
Sin embargo, como otros han dicho en los comentarios, ¡realmente necesitas alejarte de las versiones preliminares lo antes posible!
Respuesta3
Una nota sobre la carga de símbolos de depuración para agregarExcelente respuesta de magicandre1981: si la carga de los símbolos en el Analizador de rendimiento de Windows funciona correctamente, después de marcarTraza > Cargar símbolosDeberías ver una barra de progreso en la parte superior conCargando símbolosque muestra los nombres de los archivos al lado y tarda varios minutos en completarse. También debería ver muchas líneas como la siguiente en la Consola de diagnóstico:
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
Si no ve ninguno de estos, es probable que la carga de símbolos de depuración no haya funcionado y no podrá interpretar correctamente su seguimiento.
En mi caso, la carga inicial de símbolos de depuración no funcionó. Lo solucioné siguiendoestas instrucciones:
Averigüe si está utilizando la versión x86 o x64 del Windows Performance Toolkit.
Esto es fácil en versiones x86 de Windows. En compilaciones x64, puede consultar el Administrador de tareas para ver la etiqueta *32. Si no está ahí, entonces estás ejecutando la versión x64.
Tenga en cuenta que WPT siempre se instala en Archivos de programa (x86) independientemente de la arquitectura.
Copie los archivos
dbghelp.dll
ysymsrv.dll
del directorio del depurador correcto al directorio de Windows Performance Toolkit. En mi sistema, los directorios relevantes son:
C:\Program Files (x86)\Windows Kits\10\Debuggers\x64
yC:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit
Reinicie el Analizador de rendimiento de Windows para seleccionar la versión correcta de dbghelp.dll.
Respuesta4
Respuestaañadido por@magiandre1981es la clave para solucionar cualquier problema. Mi caso no figuraba allí, pero encontré una palabra similar en la pila que se describe en The most complicated case of SYSTEM usage is ACPI.sys usage in the callstack:
la sección. En mi caso, Intel Rapid Storage
fue útil instalar el controlador. No esperaba esto ya que todos estuvieron trabajando durante mucho tiempo sin este controlador y sin ningún problema de CPU. Puse mi pila aquí, probablemente alguien encontrará esta respuesta con palabras clave similares.
Line #, Process, Stack, Count, Weight (in view) (ms), TimeStamp (s), % Weight
3, , [Root], 45104, 45,300.439000, , 16.21
4, , ntoskrnl.exe!KiStartSystemThread, 45104, 45,300.439000, , 16.21
5, , ntoskrnl.exe!PspSystemThreadStartup, 45104, 45,300.439000, , 16.21
6, , |- ntoskrnl.exe!SMKM_STORE_MGR<SM_TRAITS>::SmCompressCtxWorkerThread, 38830, 38,997.540000, , 13.95
7, , | |- ntoskrnl.exe!SMKM_STORE_MGR<SM_TRAITS>::SmCompressCtxProcessEntry, 38708, 38,874.943400, , 13.91
8, , | | |- ntoskrnl.exe!memcpy, 33888, 34,032.390100, , 12.18
9, , | | | |- ntoskrnl.exe!memcpy<itself>, 33655, 33,795.069100, , 12.09
10, , | | | |- ntoskrnl.exe!KiDpcInterrupt, 228, 232.331300, , 0.08
11, , | | | |- ntoskrnl.exe!KiInterruptDispatchNoLockNoEtw, 4, 3.989700, , 0.00
12, , | | | |- ntoskrnl.exe!KiInterruptDispatch, 1, 1.000000, , 0.00
13, , | | |- ntoskrnl.exe!RtlCompressBuffer, 2571, 2,585.541600, , 0.93
14, , | | |- ntoskrnl.exe!SMKM_STORE_MGR<SM_TRAITS>::SmCompressCtxProcessReadyQueue, 2015, 2,022.554900, , 0.72
15, , | | |- ntoskrnl.exe!MmBuildMdlForNonPagedPool, 129, 129.294600, , 0.05
16, , | | |- ntoskrnl.exe!SMKM_STORE_MGR<SM_TRAITS>::SmCompressCtxProcessEntry<itself>, 63, 62.901700, , 0.02
17, , | | |- ntoskrnl.exe!ExAcquireSpinLockExclusive, 31, 31.208200, , 0.01
18, , | | |- ntoskrnl.exe!MetroHash64::Hash, 10, 10.033100, , 0.00
19, , | | |- ntoskrnl.exe!KiDpcInterrupt, 1, 1.019200, , 0.00
20, , | |- ntoskrnl.exe!SMKM_STORE_MGR<SM_TRAITS>::SmCompressCtxWorkerThread<itself>, 78, 78.477100, , 0.03
21, , | |- ntoskrnl.exe!ExAcquireSpinLockExclusive, 39, 39.068100, , 0.01
22, , | |- ntoskrnl.exe!KeWaitForSingleObject, 5, 5.051400, , 0.00
23, , |- ntoskrnl.exe!SMKM_STORE<SM_TRAITS>::SmStWorkerThread, 5420, 5,445.923200, , 1.95
24, , |- ntoskrnl.exe!SmKmStoreHelperWorker, 495, 496.265200, , 0.18
25, , |- ntoskrnl.exe!SMKM_STORE<SM_TRAITS>::SmStReadThread, 359, 360.710600, , 0.13
26, , n/a, 16760, 16,773.871200, , 6.00
Actualizar:Lamentablemente el problema volvió. Después de reiniciar, la PC funciona bien por un tiempo, pero luego aparece la misma fuga de CPU con la misma pila