Résoudre les problèmes d'utilisation élevée du processeur par le processus «Système»

99

J'ai remarqué que depuis quelque temps, mon système est gelé et est probablement dû à la forte utilisation de la CPU causée par le processus système.

Toutes les applications que je suis en train d’exécuter sont Skype, TeamSpeak et Chrome.

Vous pouvez voir le problème lui-même et les processus en cours dans la capture d'écran ci-dessous:

entrez la description de l'image ici

Parfois, l'utilisation du processeur atteint 90%, mais l'utilisation moyenne se situe entre 40 et 65%.

Mes paramètres PC:

  • Windows 8 (aperçu client)
  • Intel Core i3 - 2350M
  • 8 Go de RAM

J'apprécierais toute tentative d'aide! Cordialement.

--MISE À JOUR--

Comme l'utilisateur ci-dessous a très bien répondu, j'ai remarqué que le processus qui consomme le plus de Arthurx.sysressources processeur du système s'appelle , Google indique qu'il s'agit d'un pilote TPLink (un adaptateur wifi, que j'ai acheté il y a deux semaines!). a été installé à partir de Windows MSDN, mais a également essayé d'installer les pilotes à partir du CD joint, mais cela n'aide pas. Dès le démarrage du système, il utilise environ 5% du processeur, mais après 2 à 4 heures de travail, il grandit et atteint 40 à 60% de l'utilisation du processeur.

Nom de l'appareil: TPLink WN722N

Scott
la source
5
Point de commande, si vous exécutez l'aperçu client, tout n'est pas à jour ... Vous exécutez l'aperçu client.
Everett
@ Everett Oui, vous avez probablement raison ... mais cela ne devrait toujours pas se produire, même si c'est un aperçu client (ou publié).
Scott
4
@ Scott Oui, ce genre de chose devrait se produire dans un aperçu client. Je veux dire, bien sûr, il vaut mieux que ces bugs n'existent pas au départ, mais c'est l'une des choses qu'un aperçu est censé faire. C'est une chance pour les utilisateurs de voir les nouvelles fonctionnalités et les éléments d'interface utilisateur un peu plus tôt et de vérifier la compatibilité des applications, mais aussi une chance pour les équipes de développement d'obtenir des informations et de trouver des bogues provenant d'un public plus large. Le système de base n'est pas encore prêt pour une utilisation en production . Il n'est pas destiné à être utilisé comme système principal, car il n'est pas complètement terminé ou débogué. Si c'était le cas, ils iraient avec RTM.
Joel Coehoorn
1
utilisez xperf pour le tracer. Mais comme d’autres utilisateurs vous l’ont dit, arrêtez d’utiliser le CP. Toutes les versions préliminaires expireront dans 2 semaines!
magicandre1981
1
Nous ne pouvons vous aider que si vous vérifiez que ce problème existe dans la version RTM de Windows 8. Vous ne pouvez vous attendre à ce que personne ne vous aide à résoudre les problèmes existant dans une version de Preview. Je suis allé de l'avant et mis à jour les balises pour refléter votre utilisation d'une version d'aperçu.
Ramhound

Réponses:

91

Cela peut être dû à un pilote défectueux ou à un autre module chargé par le système. Pour regarder à l'intérieur du processus système, vous pouvez utiliser un outil tel que Process Explorer .

Téléchargez-le et exécutez-le, puis sélectionnez le processus système, cliquez avec le bouton droit de la souris et sélectionnez Propriétés:

entrez la description de l'image ici

Basculez sur l’onglet Fil de discussion (ignorez la boîte de dialogue mentionnant les symboles):

entrez la description de l'image ici

Cela montrera quel fichier utilise une utilisation excessive du processeur, à partir duquel vous pouvez ensuite tenter de la diagnostiquer.

Comme d'autres l'ont dit dans les commentaires, vous devez vraiment vous éloigner des versions de Preview dès que possible!

Graham Wager
la source
Merci pour votre réponse. S'il vous plaît voir ma question mise à jour.
Scott
2
@ Scott j'ai remarqué que vous mettez à jour maintenant; si ce problème n'est toujours pas résolu par la suite, TPLink dispose d'un pilote Windows 8 bêta sur son site, ce qui peut aider. Vous pouvez le trouver ici: tp-link.com/fr/support/download/…
Graham Wager le
2
Il semble que risdxc64.sys soit un suspect habituel avec les ordinateurs portables Thinkpad, qui est le pilote du lecteur de carte. Voir, par exemple, ici: forums.lenovo.com/t5/ThinkPad-X-Series-Laptops/… - Je l'ai résolu en réinstallant le dernier un sur victoire 10
patrickf
J'ai eu un problème similaire dans Windows 10. Pour moi, c'était avc3.sys qui utilisait beaucoup de ressources processeur. S'avère être une partie de Bitdefender Antivirus Free.
Bruno
2
@Legends vous avez utilisé le mauvais outil. ProcExp montre un shapshot qui n'est pas très utile. J'ai écrit une réponse sur Windows Performance Toolkit pour lui montrer en détail comment analyser l'utilisation de l'unité centrale de traitement
magicandre1981 le
90

Pour diagnostiquer les problèmes d'utilisation du processeur, vous devez utiliser Event Tracing for Windows (ETW) pour capturer les données / profils d'échantillonnage du processeur.

Pour capturer les données, installez Windows Performance Toolkit , qui fait partie du kit de développement logiciel (SDK) Windows .

Windows 10 WPT peut être utilisé sous Windows 8 / Server 2012, Windows 8.1 / Server 2012 R2 et Windows 10 / Server 2016. Si vous utilisez toujours Windows 7, utilisez le SDK / WPT avec la version 15086 .

entrez la description de l'image ici (toutes les autres entrées peuvent être désélectionnées)

Maintenant, lancez WPRUI.exe, sélectionnez First Level, sous Ressource, sélectionnez Utilisation du processeur et cliquez sur Démarrer .

entrez la description de l'image ici

Capturez maintenant 1 minute d'utilisation du processeur. Après 1 minute, cliquez sur Enregistrer .

Analysez maintenant le fichier ETL généré avec Windows Performance Analyzer en glissant-déposant le CPU Usage (sampled)graphique dans analysis paneet en ordonnant les colonnes comme vous le voyez dans l'image:

entrez la description de l'image ici

Dans WPA, chargez les symboles de débogage et développez Pile du processus SYSTEM. Dans cette démonstration, l'utilisation du processeur provient du pilote nVIDIA.


Dans la démonstration suivante, l'utilisation du processeur provient du pilote Realtek NIC:

entrez la description de l'image ici


Quand vous voyez des appels comme ntoskrnl.exe! Vi KeTrimWorkerThreadRoutine, ntoskrnl.exe! Mm Verifier TrimMemory, ntoskrnl.exe! Verifier KeLeaveCriticalRegion , cela signifie que le vérificateur de pilotes est activé. Cela nuit également beaucoup aux performances et entraîne une utilisation élevée du système. Désactivez le vérificateur de pilotes et redémarrez.

entrez la description de l'image ici


Dans cette démonstration, le pilote iai2ce.sys(pilote du contrôleur Intel Serial IO GPIO) le cause:

entrez la description de l'image ici


Dans cet exemple, l'utilisation du processeur provient du fichier rtsuvc.sysqui semble être leRealtek UVC webcam Driver

entrez la description de l'image ici


Cette démo montre que le pilote Bitdefender ignis.sys

entrez la description de l'image ici


Dans l'exemple suivant, l'utilisation du processeur est déterminée par le pilote réseau Broadcom. bcmwl664.sys

entrez la description de l'image ici


Quand vous voyez ntoskrnl.exe!MiZeroWorkerPagescomme cause, c'est plus compliqué. Cela signifie que la fonction du noyau qui met la mémoire à zéro avant de pouvoir la réutiliser provoque une utilisation élevée du processeur:

entrez la description de l'image ici

Il n'y a pas de véritable moyen de détecter le processus qui le cause, mais je sais que Chrome peut en être la cause si l'accélération matérielle est activée dans Chrome. Par conséquent, si vous voyez ceci et utilisez Chrome, désactivez l'accélération matérielle dans Chrome.


Quand vous voyez ces ntoskrnl.exe! RtlpGenericRandomPatternWorker, NTOSKRNL.EXE! RtlpTestMemoryRandomUp appels

entrez la description de l'image ici

l'utilisation du processeur provient du noyau pour tester la mémoire pour des problèmes (memtest). Cette utilisation est déclenchée via la tâche de maintenance inactive de Windows 8.1 / 10. Vous pouvez utiliser le Planificateur de tâches pour désactiver la tâche inactive.

entrez la description de l'image ici

Dans Windows 10, la tâche s'appelle RunFullMemoryDiagnostics sous Microsoft> Windows> MemoryDiagnostic> RunFullMemoryDiagnostic .

entrez la description de l'image ici


Dans ce cas, l'utilisation du processeur semble provenir de Data DeduplicationFeature ( dedup.sys!DdpPostCreate) de Windows Server:

entrez la description de l'image ici


Dans cette démonstration, l'utilisation du processeur est provoquée par le pilote de la carte WIFI. athrx.sys

entrez la description de l'image ici

Recherchez une mise à jour du pilote si vous le voyez.


Dans la démo suivante, un pilote Citrix est impliqué:

entrez la description de l'image ici

Contactez donc votre service informatique pour savoir comment résoudre les problèmes de Citrix.


Dans cette démo, la fonction usbhub.sys!UsbhPortRecycleprovoque l'utilisation du processeur:

entrez la description de l'image ici

La modification des ports USB 2.0 à la vitesse 1.1 ou la connexion de lecteurs USB à d'autres ports USB 2.0 ont aidé certains utilisateurs.


Dans ce cas, une petite partie de l'utilisation de SYSTEM provient du pilote Acronis tdrpm251.sys:

entrez la description de l'image ici


Dans cette démo, l'utilisation du processeur ntoskrnl.exe!KeAcquireSpinLockRaiseToDpcet ntoskrnl.exe!KeReleaseSpinLock.

entrez la description de l'image ici

Un pilote utilise donc très fortement SpinLocks . Désactivez certains périphériques / pilotes jusqu'à ce que vous en voyiez un qui en soit la cause.


Dans ce cas, l'utilisation du processeur est provoquée par le pilote L1C62x64.sys

entrez la description de l'image ici

Ceci est le qualcomm atheros AR8171/8175 PCI-E gigabit Ethernetconducteur. Mettez donc à jour le pilote si vous le voyez dans la pile.


Ici, l'utilisation du processeur provient de l'analyse du fichier hôte (netbt.sys! DelayedScanLmHostFile)

entrez la description de l'image ici

assurez-vous que votre fichier hosts n'est pas trop volumineux pour éviter cette utilisation.


Dans ce cas, l'utilisation du processeur provient SRTSP64.SYSde symantec.

entrez la description de l'image ici

Mettez à jour votre produit symantec usagé vers la dernière version.


Ici, l'utilisation du processeur provient du pilote du processeur graphique AMD (atikmdag.sys).

entrez la description de l'image ici

Si vous voyez cela, allez sur le site AMD et procurez-vous le dernier pilote pour votre carte AMD.


Ici, les pilotes TMXPFlt.sys et VsapiNt.sys provoquent une utilisation élevée du processeur.

entrez la description de l'image ici

D'après ce que je vois, ces fichiers font partie de la suite Trend Micro AV. Mettez à jour l'outil ou supprimez-le.


Dans cet exemple, l'utilisation du processeur provient de la fonction ntoskrnl.exe!MmGetPageFileInformation

entrez la description de l'image ici

Cette fonction obtient des informations sur le fichier d'échange.

Description de la routine: Cette routine renvoie des informations sur les fichiers de pagination actuellement actifs.

Désactivez le fichier d'échange, redémarrez-le, activez-le à nouveau et voyez si cela résout le problème. En outre, la suppression des services Intel (par exemple, le service HECI d'Intel Content Protection) semble résoudre le problème pour un utilisateur .


Ici, vous pouvez voir que le pilote Netwtw04.sys( pilote Intel Wifi) appelle la fonction flushCompleteAllPendingFlushRequests, ce qui entraîne une utilisation élevée du processeur.

entrez la description de l'image ici

Comme les symboles de débogage sont chargés, le pilote de la boîte de réception Windows est utilisé. Seulement ici, nous pouvons obtenir des symboles de débogage pour voir la pile d’appel avec le nom de la fonction flushCompleteAllPendingFlushRequests.

Ici, vous devez installer le dernier pilote Intel pour résoudre ce problème.


Le cas le plus compliqué d'utilisation de SYSTEM est l'utilisation d'ACPI.sys dans le 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

c'est extrêmement difficile à déboguer. Dans un sujet sysinternals , j’ai énuméré quelques conseils:

  • assurez-vous que le processeur ne surchauffe pas à cause de la poussière dans le ventilateur du processeur
  • mettre à jour ou re-flasher le (même) BIOS / UEFI
  • charger les paramètres BIOS / UEFI par défaut
  • assurez-vous que la batterie n'est pas endommagée, retirez-la du portable ou désactivez-la dans le Gestionnaire de périphériques.
  • remplacez le cavalier sur le disque dur si vous avez remplacé le lecteur de DVD / Blue-Ray par un chariot pour installer un disque SSD à côté de votre ancien disque dur.

entrez la description de l'image ici


Dans la démo suivante, le pilote Intel HD igdkmd64.sysde la version .4574 pour Intel HD 630 est à l'origine du problème:

entrez la description de l'image ici

La solution consiste à mettre à jour le pilote avec une version d'au moins .4590.


Dans le cas suivant, l'utilisation du processeur par le processus SYSTEM est provoquée par le pilote. stdriverx64.sys

entrez la description de l'image ici

Cela semble être un pilote de streaming audio . Donc, mettez à jour ce logiciel / pilote si vous voyez ceci dans WPA.


Si vous voyez un pilote appelé risdxc64.sysdans la pile d'appels de SYSTEM qui entraîne une utilisation intensive du processeur, mettez à jour le pilote du contrôleur hôte PCIh SDXC / MMC de Ricoh ou désactivez le lecteur de carte SD dans le gestionnaire de périphériques si aucune mise à jour de pilote ne le résout.

entrez la description de l'image ici

Ce lecteur de carte SD semble être intégré à de nombreux périphériques Lenovo.


L’utilisateur @stevemidgley a signalé un nouveau problème d’utilisation plus importante du processeur avec Wdf01000.sys!FxSystemWorkItem::_WorkItemThunk

entrez la description de l'image ici

Ici, vous pouvez voir le pilote UDE.sys qui le cause.

Dans le hub de symbole

entrez la description de l'image ici

Je peux voir qu'il appartient au pilote de modem et aux données PNP des traces tracées Fibocom L850-GL(modem LTE) en tant que périphérique possible:

entrez la description de l'image ici

Et la solution consiste à désactiver le modem et le périphérique composite USB dans le gestionnaire de périphériques.


magicandre1981
la source
6
Agréable!!! +1 .... Pour shizzle
Pimp Juice IT
1
@stevemidgley FxUsbPipeRequestWorkItemThunk traite les données. Développez la pile plus. Partagez également le fichier ETL.Le périphérique USB composite peut être un pilote de smartphone lorsque vous connectez un téléphone pour transférer des données,
magicandre1981 le
1
@stevemidgley activer le périphérique USB et capturer une trace, j'ai besoin d'un fichier ETL pour voir plus de détails.
magicandre1981 le
1
@stevemidgley qui sont les données USB brutes, j’ai besoin de la trace de l’utilisation du processeur de la réponse ci-dessus.
magicandre1981
1
@stevemidgley ok, on dirait que le pilote UDE.sys en est la cause. Et d'après ce que je vois, il appartient au Fibocom L850-GL, votre module LTE.
magicandre1981 le
4

Une note sur le chargement des symboles de débogage à ajouter à l'excellente réponse de magicandre1981 : si le chargement des symboles dans Windows Performance Analyzer fonctionne correctement, après avoir coché Trace> Charger les symboles, une barre de progression située en haut s'affiche avec Chargement des symboles indiquant les noms de fichier à côté de celui-ci. plusieurs minutes à compléter. De plus, vous devriez voir plusieurs lignes comme celle ci-dessous dans la console de diagnostic:

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 vous ne voyez aucun de ces éléments, le chargement des symboles de débogage n'a probablement pas fonctionné et vous ne pourrez pas interpréter correctement votre trace.

Dans mon cas, le chargement initial des symboles de débogage ne fonctionnait pas. Je l'ai corrigé en suivant ces instructions :

  1. Déterminez si vous utilisez la version x86 ou x64 de Windows Performance Toolkit.

    C'est facile avec les versions x86 de Windows. Sur les versions x64, vous pouvez rechercher le tag * 32 dans le Gestionnaire des tâches. Si ce n'est pas là, vous exécutez la version x64.

    Notez que WPT est toujours installé sur Program Files (x86), quelle que soit l’architecture.

  2. Copiez les fichiers dbghelp.dllet symsrv.dlldepuis le répertoire de débogueur approprié vers le répertoire Windows Performance Toolkit. Sur mon système, les répertoires pertinents sont:

    C:\Program Files (x86)\Windows Kits\10\Debuggers\x64 et C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit

  3. Redémarrez Windows Performance Analyzer pour que la version correcte de dbghelp.dll soit sélectionnée.

AronVanAmmers
la source
2
vous devriez ajouter ceci à ma réponse en tant que montage. ce n'est pas une vraie réponse
magicandre1981
0

Premièrement, la critique et les informations fournies sont très informatives, mais vous pouvez généralement le comprendre avec beaucoup moins d’intelligence! J'ai simplement utilisé MSCOFIG.EXE et une recherche binaire pour isoler le service incriminé. J'ai trouvé que la plupart des problèmes de ce type sont causés par les logiciels Intel. Je commence par désactiver tout service n'ayant pas de nom de société. Ensuite, je commence sur les services Intel. Ensuite, la recherche binaire complète. Cela prend généralement au plus une heure pour résoudre le problème sur le PC de quelqu'un. Intel n’a jamais été une bonne société d’informatique et leurs logiciels le démontrent. Regardons les choses en face: l’architecture du Pentium avait dix ans à sa sortie. Qui aurait construit une architecture d'ordinateur avec une mémoire paginée à l'époque de VAX? Eh bien, je ne vais pas vous ennuyer avec l'histoire. Pas que je sois fan d’AMD ou de Microsoft non plus. Peut-être qu'un jour nous '

Leonard Umina
la source
Vous vous rendez compte que le VAX utilise la mémoire paginée, non? Et pourquoi ne pas utiliser la mémoire paginée aujourd'hui?
Jamie Hanrahan
-1

J'ai eu le même problème, il a disparu lorsque j'ai retiré l'un des modules de RAM. Il semble que c'était défectueux. Sous Windows 7, 32 bits.

Cosmin
la source