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

Solucionar el problema del alto uso de la CPU por el proceso "Sistema"

He notado que desde hace algún tiempo mi sistema se está congelando y es probable que sea causado por el alto uso de la CPU que es causado por el proceso del sistema.

Todas las aplicaciones que estoy ejecutando son Skype, TeamSpeak y Chrome, por lo que definitivamente no debería comer esa cantidad de CPU.

Puedes 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 como el 40-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.

–Actualización–

Como el usuario de abajo posteó una gran respuesta, he notado que el proceso que se está comiendo la mayor cantidad de CPU en el sistema se llama Arthurx.sys, simplemente google dice que es un controlador TPLink (un adaptador wifi, ¡lo he comprado como hace 2 semanas!) los controladores se han instalado desde el MSDN de Windows, pero también intentó instalar los controladores desde el CD adjunto, pero no ayuda. Desde el inicio del sistema, está usando como un 5% del CPU solamente, pero después de 2-4 horas de trabajo está creciendo y alcanzando el 40-60% del uso del CPU.

Nombre del dispositivo: TPLink WN722N

Respuestas (5)

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

Para diagnosticar los problemas de uso de la CPU, debe utilizar el Rastreo de eventos para Windows (ETW) para capturar los datos de muestreo de la CPU / Perfil.

Para capturar los datos, instale el Windows Performance Toolkit , que es parte del Windows SDK .

El WPT de Windows 10 puede utilizarse en Windows 8/Server 2012, Windows 8.1/Server 2012R2 y Windows 10/Server 2016. Si todavía usas Windows 7, usa el SDK/WPT con Build 15086 .

(todas las demás entradas pueden ser deseleccionadas)

Ahora ejecuta WPRUI.exe, selecciona First Level, bajo el Recurso selecciona Uso de CPU y haz click en inicio.

Ahora captura 1 minuto del uso de CPU. Después de 1 minuto, haz clic en Save.

Ahora analiza el archivo ETL generado con el Analizador de Rendimiento de Windows arrastrando y soltando el gráfico de CPU Usage (sampled) al analysis pane y ordenando las columnas como ves en la imagen:

Dentro de WPA, carga los símbolos de depuración y expande la pila del proceso SISTEMA. En esta demo, el uso de la CPU viene del controlador de nVIDIA.


En la siguiente demo, el uso de la CPU viene del controlador de NIC de Realtek:


¡Cuando veas llamadas como ntoskrnl.exe! Vi KeTrimWorkerThreadRoutine, ntoskrnl.exe!Mm Verificador TrimMemory, ntoskrnl.exe! Verificador KeLeaveCriticalRegion, esto significa que tienes habilitado el Verificador de Conductores. Esto también perjudica mucho el rendimiento y causa un alto uso del SISTEMA. Deshabilitar Verificador de Conductores y reiniciar.


En esta demostración, el controlador iai2ce.sys (Intel Serial IO GPIO Controller driver) lo causa:


En este ejemplo, el uso de la CPU proviene del archivo rtsuvc.sys que parece ser el Realtek UVC webcam Driver


Esta demostración muestra que el controlador Bitdefender ignis.sys

  • *

En el siguiente ejemplo, el uso de la CPU está controlado por el controlador de red de Broadcom bcmwl664.sys

  • *

Cuando ves ntoskrnl.exe!MiZeroWorkerPages como causa, es más difícil. Esto significa que la función del kernel que pone en cero la memoria antes de que pueda ser usada de nuevo causa el alto uso de la CPU:

No hay una forma real de detectar qué proceso lo causa, pero sé que Chrome puede causarlo si tienes activada la aceleración por hardware en Chrome. Así que si ves esto y usas Chrome, desactiva la aceleración por hardware en Chrome.


Cuando ves esas ntoskrnl.exe!RtlpGenericRandomPatternWorker, ntoskrnl.exe!RtlpTestMemoryRandomUp llamadas

el uso de la CPU viene del Kernel para probar la memoria por problemas (memtest). Este uso se activa a través de la tarea de mantenimiento en reposo de Windows 8.1/10. Puedes usar el Programador de Tareas para deshabilitar la tarea inactiva.

En Windows 10, la tarea se llama RunFullMemoryDiagnostics en Microsoft > Windows > MemoryDiagnostic \ ~ RunFullMemoryDiagnostic.

  • *

En este caso, el uso de la CPU parece provenir de la característica Data Deduplication (dedup.sys!DdpPostCreate) de Windows Server:


En esta demostración, el uso de la CPU está causado por el controlador de la tarjeta WIFI athrx.sys

Busque una actualización del controlador si ve esto.


En la siguiente demostración, un controlador citrix está involucrado:

Así que póngase en contacto con su TI para saber cómo resolver los problemas de Citrix.


En esta demostración, la función usbhub.sys!UsbhPortRecycle causa el uso de la CPU:

Cambiar puertos USB 2.0 a velocidad 1.1 o conectar unidades USB a otros USB 2. 0 ayudó a algunos usuarios.


En este caso, una pequeña cantidad de uso del SISTEMA proviene del controlador de Acronis tdrpm251.sys:


En esta demostración, el uso de la CPU ntoskrnl.exe!KeAcquireSpinLockRaiseToDpc y ntoskrnl.exe!KeReleaseSpinLock.

por lo que un controlador está usando SpinLocks muy intensamente. Deshabilite algunos dispositivos/drivers hasta que vea uno que lo cause.


En este caso, el uso de la CPU es causado por el driver L1C62x64.sys

Este es el driver qualcomm atheros AR8171/8175 PCI-E gigabit Ethernet. Por lo tanto, actualice el controlador si lo ve en la pila.

  • *

En este caso, el uso de la CPU proviene del análisis del archivo de host (netbt.sys!DelayedScanLmHostFile)

Asegúrese de que el archivo de host no sea demasiado grande para evitar este uso.

  • *

En este caso, el uso de la CPU proviene de SRTSP64.SYS de symantec.

Actualice su producto de symantec usado a la última versión.


En este caso, el uso de la CPU proviene del controlador de la GPU de AMD (atikmdag.sys)

Si ve esto, vaya al sitio de AMD y obtenga el último controlador para su tarjeta AMD.


Aquí, los controladores TMXPFlt.sys y VsapiNt.sys causan el alto uso de la CPU.

Por lo que veo, esos archivos forman parte de la suite AV de Trend Micro. Actualice la herramienta o elimínela.


En este ejemplo, el uso de la CPU proviene de la función ntoskrnl.exe!MmGetPageFileInformation

Esta función obtiene información sobre el archivo de página.

Descripción de la rutina: Esta rutina devuelve información sobre los archivos de paginación actualmente activos.

Deshabilitar el archivo de paginación, reiniciar y habilitarlo de nuevo y ver si esto lo arregla. Además, al eliminar los servicios de Intel (por ejemplo, el servicio HECI de protección de contenidos de Intel) parece que se ha corregido para un usuario .


Aquí se puede ver que el controlador Netwtw04.sys (controlador Intel Wifi) llama a la función flushCompleteAllPendingFlushRequests y esto provoca un alto uso de la CPU.

Como los símbolos de depuración se cargan, se utiliza el controlador de la bandeja de entrada de Windows. Sólo aquí podemos obtener los símbolos de depuración para ver la pila de llamadas con el nombre de la función flushCompleteAllPendingFlushRequests.

Aquí, deberías instalar el último controlador de Intel para arreglarlo.


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 un tema de sysinternals , enumeré algunos consejos:

  • asegúrate de que la CPU no se sobrecaliente debido al polvo en el ventilador de la CPU
  • actualiza o vuelve a flashear la (misma) BIOS/UEFI
  • carga la configuración por defecto de la BIOS/UEFI
  • asegúrate de que la batería no esté dañada, quita la batería del portátil o desactiva la batería en el administrador de dispositivos.
  • cambiar el puente en el HDD caddy si ha sustituido la unidad de DVD/Blue-Ray por un caddy para instalar una SSD junto a su antigua unidad de disco duro


En la siguiente demostración, el controlador Intel HD igdkmd64.sys en la versión .4574 para la Intel HD 630 causa el problema:

La solución es actualizar al controlador con una versión de al menos . 4590.

  • *

En el siguiente caso, el uso de la CPU del proceso del SISTEMA es causado por el controlador stdriverx64.sys

Esto parece ser un controlador de transmisión de audio . Por lo tanto, actualice este software/driver si lo ve en WPA.


Si ve un controlador llamado risdxc64.sys en la pila de llamadas de SYSTEM que provoca un alto uso de la CPU, actualice el controlador Ricoh PCIe SDXC/MMC Host Controller o desactive el lector de tarjetas SD en el administrador de dispositivos si no lo arregla ninguna actualización de controlador.

Este lector de tarjetas SD parece estar incorporado en muchos dispositivos de Lenovo.

  • *

El usuario @stevemidgley mostró un nuevo problema de mayor uso de la CPU con Wdf01000.sys!FxSystemWorkItem::_WorkItemThunk

Aquí puede ver un controlador UDE.sys que lo causa.

En el hub de símbolos

Puedo ver que pertenece al controlador del modem y los datos PNP de la traza muestra Fibocom L850-GL (Modem LTE) como posible dispositivo:

Y la solución es deshabilitar el modem y el dispositivo compuesto USB en el administrador de dispositivos.


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

Esto puede ser causado por un conductor defectuoso u otro módulo cargado por el sistema. Para mirar dentro del proceso del Sistema, puede usar una herramienta como Process Explorer .

Descargar y ejecutarlo, luego seleccione el proceso del Sistema, haga clic con el botón derecho y seleccione Propiedades:

Cambie a la pestaña Hilos (ignore el cuadro de diálogo que menciona los símbolos):

Esto mostrará qué archivo está usando el uso excesivo de la CPU, desde el cual puede intentar diagnosticarlo.

Como otros han dicho en los comentarios, sin embargo, ¡realmente necesitas alejarte de las versiones de Vista Previa tan pronto como sea posible!

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

Una nota sobre la carga de símbolos de depuración para añadir a la excelente respuesta de magicandre1981 : si la carga de los símbolos en el Analizador de Rendimiento de Windows funciona correctamente, después de marcar Trace > Load Symbols deberías ver una barra de progreso en la parte superior con Loading symbols que muestra los nombres de los archivos a su lado y tarda varios minutos en completarse. También deberías ver muchas líneas como las siguientes 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 ves ninguna de ellas, es probable que cargar los símbolos de depuración no haya funcionado y no puedas interpretar correctamente tu rastro.

En mi caso, cargar inicialmente los símbolos de depuración no funcionó. Lo arreglé siguiendo estas instrucciones :

  1. Averigua si estás usando la versión x86 o x64 del Windows Performance Toolkit.

  2. Copie los archivos dbghelp.dll y symsrv.dll del directorio correcto del depurador al directorio de Windows Performance Toolkit. En mi sistema, los directorios relevantes son:

  3. Reinicie el Windows Performance Analyzer para que se recoja la versión correcta de dbghelp.dll.

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

Tuve el mismo problema, desapareció cuando quité uno de los módulos de la RAM. Parece que estaba defectuoso. Corriendo Windows 7, 32-bit.

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

En primer lugar, la revisión y la información suministrada es muy informativa, sin embargo, normalmente se puede averiguar esto con mucha menos inteligencia! Simplemente usé MSCOFIG.EXE y una búsqueda binaria para aislar el servicio ofensivo. He encontrado que la mayoría de los problemas como este son causados por el software de Intel. Empiezo por deshabilitar cualquier servicio que no tenga el nombre de una compañía. Luego comienzo con los servicios de Intel. Luego la búsqueda binaria completa. Normalmente tarda una hora como máximo para arreglar el problema en el PC de alguien. Intel nunca fue una buena compañía de ordenadores, y su software lo demuestra. Afrontémoslo, la arquitectura del Pentium tenía una década cuando fue lanzado. ¿Quién habría construido una arquitectura de computadora con memoria paginada en los días de VAX? Bueno, no te aburriré con la historia. No es que sea fan de AMD o de Microsoft tampoco. Tal vez algún día volvamos a construir ordenadores de verdad.