私は、しばらくして私のシステムがフリーズしていて、それはおそらくシステムプロセスによって引き起こされた高いCPU使用率が原因であることに気付きました。
私が実行しているすべてのアプリケーションはSkype、TeamSpeak、そしてChromeなので、間違いなくその量のCPUを使うべきではありません。
下のスクリーンショットで、問題自体と実行中のプロセスを確認できます。
時々CPU使用率は90%に達しています、しかし平均使用率は40-65%のようです。
私のPCパラメータ:
私はどんな助けの試みにも感謝します!よろしく。
- UPDATE -
以下のユーザーが素晴らしい答えを投稿したとき、私はシステムの中で最もCPUを消費しているプロセスがArthurx.sys
と呼ばれることに気づきました、簡単なグーグルはそれがTPLinkドライバであることを伝えます(wifiアダプター、私は2週間前に買った!)ドライバはWindows MSDNからインストールされていますが、添付のCDからドライバをインストールしようとしましたが、役に立ちません。システムの起動時から、CPU使用率は5%にすぎませんが、2〜4時間作業した後は増加し、CPU使用率の40〜60%に達します。
デバイス名:TPLink WN722N
これは、システムによってロードされたドライバまたは他のモジュールの不良が原因である可能性があります。システムプロセスを調べるには、 Process Explorer のようなツールを使用できます。
ダウンロードして実行し、システムプロセスを選択して右クリックしてプロパティを選択します。
[スレッド]タブに切り替えます(シンボルについて言及しているダイアログボックスは無視します)。
これはどのファイルが過剰なCPU使用率を使用しているかを示し、そこからあなたはそれを診断しようと試みることができます。
他の人がコメントで言ったように、あなたは本当にプレビュー版からできるだけ早く離れる必要があります!
CPU使用率の問題を診断するには、Windowsのイベントトレース(ETW)を使用してCPUサンプリングデータ/プロファイルをキャプチャする必要があります。
データをキャプチャするには、 Windows Performance Toolkit をインストールします。これは Windows SDK の一部です。
Windows 10 WPTは、Windows 8/Server 2012、Windows 8.1/Server 2012 R2、およびWindows 10/Server 2016で使用できます。それでもWindows 7を使用する場合は、 SDK/WPT with Build 15086 を使用してください。 。
WPRUI.exe
を実行し、First Level
を選択し、Resourceの下からCPU usageを選択し、startをクリックします。
今度は1分間のCPU使用率を記録します。 1分後、Saveをクリックしてください。
Windows Performance Analyzerを使用して生成されたETLファイルを分析します。CPU Usage (sampled)
グラフをanalysis pane
にドラッグアンドドロップし、図のように列を並べ替えます。
WPAの中で、 デバッグシンボル をロードし、SYSTEMプロセスのスタックを展開します。このデモでは、CPU使用率はnVIDIAドライバからきています。
次のデモでは、CPU使用率はRealtek NICドライバから得られます。
ntoskrnl.exe!ViKeTrimWorkerThreadRoutine、ntoskrnl.exe!MmVerifierのような呼び出しが表示されたら/ TrimMemory、ntoskrnl.exe!VerifierKeLeaveCriticalRegion、これはDriver Verifierが有効になっていることを意味します。これもパフォーマンスを大きく損ない、高いシステム使用率を引き起こします。 Driver Verifierを無効にする そして再起動します。
このデモでは、ドライバiai2ce.sys
(Intel Serial IO GPIOコントローラドライバ)によって、次の処理が行われます。
この例では、CPU使用率はrtsuvc.sys
であると思われるファイルRealtek UVC webcam Driver
から来ています。
このデモはBitdefenderドライバignis.sys
を示しています
次の例では、CPU使用率はbroadcomネットワークドライバbcmwl664.sys
によって決められています。
ntoskrnl.exe!MiZeroWorkerPages
が原因であると思われる場合、それはトリッキーです。これは、メモリが再び使用される前にメモリをゼロにするカーネルの機能が高いCPU使用率を引き起こすことを意味します。
どのプロセスが原因で発生したのかを実際に検出する方法はありませんが、Chromeでハードウェアアクセラレーションを有効にしている場合、Chromeが原因となっている可能性があります。そのため、これを確認してChromeを使用する場合は、Chromeのハードウェアアクセラレーションをオフにしてください。
ntoskrnl.exe!RtlpGenericRandomPatternWorkerが表示されたら、ntoskrnl.exe!RtlpTestMemoryRandomUpcalls
cPU使用率は、メモリの問題をテストするためにカーネルからもたらされます(memtest)。この使用法はWindows 8.1/10のアイドルメンテナンスタスクによって引き起こされます。タスクスケジューラを使用して、アイドルタスクを無効にすることができます。
Windows 10では、タスクはMicrosoft> Windows> MemoryDiagnostic> RunFullMemoryDiagnosticの下でRunFullMemoryDiagnosticsと呼ばれます。
この場合、CPU使用率はWindows ServerのData Deduplication
機能(dedup.sys!DdpPostCreate
)に由来するようです。
このデモでは、CPU使用率はWIFIカードドライバathrx.sys
によって引き起こされます
これが表示されたらドライバのアップデートを検索してください。
次のデモでは、Citrixドライバが含まれています。
そのため、Citrixの問題を解決する方法については、IT部門にお問い合わせください。
このデモでは、関数usbhub.sys!UsbhPortRecycle
がCPU使用率を引き起こします。
USB2.0ポートを1.1スピードに変更する または他のUSB 2.0ポートにUSBドライブを接続することは、何人かのユーザーを助けました。
この場合、Acronisドライバtdrpm251.sys
からの少量のSYSTEM使用量が発生します。
このデモでは、CPU使用率ntoskrnl.exe!KeAcquireSpinLockRaiseToDpc
とntoskrnl.exe!KeReleaseSpinLock
。
ドライバは SpinLocks を非常に頻繁に使用しています。原因となるものが見つかるまで、いくつかのデバイス/ドライバを無効にします。
この場合、CPU使用率はドライバL1C62x64.sys
によって引き起こされます
これはqualcomm atheros AR8171/8175 PCI-E gigabit Ethernet
ドライバです。そのため、スタックに表示されている場合はドライバを更新してください。
ここでは、CPU使用率はHostファイル(netbt.sys!DelayedScanLmHostFile)をスキャンしています。
この使用を避けるには、hostsファイルが大きすぎないことを確認してください。
この場合、CPU使用率はsymantecのSRTSP64.SYS
から取得されます。
使用しているシマンテック製品を最新バージョンにアップデートしてください。
ここでは、CPU使用率はAMD GPUドライバ(atikmdag.sys)から来ています
これが表示された場合は、AMDのサイトにアクセスして、AMDカード用の最新のドライバを入手してください。
ここでは、ドライバーTMXPFlt.sysとVsapiNt.sysが原因でCPUの使用率が高くなります。
私の見たところでは、これらのファイルはトレンドマイクロのAVスイートの一部です。ツールを更新するか削除してください。
この例では、CPU使用率は関数ntoskrnl.exe!MmGetPageFileInformation
から来ています。
この関数はページファイルに関する情報を取得します。
ルーチンの説明:このルーチンは、現在アクティブなページングファイルに関する情報を返します。
ページファイルを無効にし、再起動して再度有効にして、修正したかどうかを確認します。また、Intelサービス(例:Intel Content Protection HECIサービス) を削除すると、ユーザー に対して修正されたようです。
ここでは、ドライバーNetwtw04.sys
(Intel Wifiドライバー)が関数flushCompleteAllPendingFlushRequests
を呼び出しているため、CPU使用率が高くなっていることがわかります。
デバッグシンボルがロードされるため、Windowsの受信トレイドライバが使用されます。ここでのみ、関数名flushCompleteAllPendingFlushRequests
を持つコールスタックを見るためのデバッグシンボルを取得できます。
ここで、あなたはそれを修正するために Intelから最新のドライバをインストールする必要があります 。
SYSTEM使用法の最も複雑な例は、コールスタックでのACPI.sysの使用法です。
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トピック に、私はいくつかのアドバイスを挙げました:
次のデモでは、Intel HD 630用のバージョン.4574のIntel HDドライバigdkmd64.sys
によって問題が発生します。
解決策は ドライバ に更新することで、少なくとも.4590のバージョンです。
次の場合、SYSTEMプロセスのCPU使用率はドライバstdriverx64.sys
によって発生します
これは オーディオストリーミングドライバ のようです。あなたがWPAでこれを見たのであれば、このソフトウェア/ドライバを更新してください。
SYSTEMのコールスタック内にrisdxc64.sys
という名前のドライバがあり、CPU使用率が高くなる場合は、Ricoh PCIe SDXC/MMCホストコントローラドライバを更新するか、デバイスのSDカードリーダーを無効にします。ドライバの更新がそれを修正しない場合は、マネージャ。
このSDカードリーダーは、多くのLenovoデバイスに組み込まれているようです。
magicandre1981の優れた答えに追加するデバッグシンボルのロードに関するメモ : [トレース]> [シンボルのロード]をクリックした後、シンボルが正しく機能する場合上部にプログレスバーが表示されます。シンボルの読み込み中、横にファイル名が表示され、完了までに数分かかります。また、診断コンソールには以下のような多くの行が表示されるはずです。
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
どちらも表示されない場合は、デバッグシンボルをロードしてもうまくいかず、トレースを正しく解釈できない可能性があります。
私の場合、最初にデバッグシンボルをロードするのはうまくいきませんでした。 これらの命令 に従って修正しました。
X86またはx64バージョンのWindows Performance Toolkitを使用しているかどうかを調べます。
これはx86ビルドのWindows上では簡単です。 x64ビルドでは、タスクマネージャで* 32タグを確認できます。表示されない場合は、x64バージョンを実行しています。
WPTはアーキテクチャに関係なく常にProgram Files(x86)にインストールされることに注意してください。
dbghelp.dll
ファイルとsymsrv.dll
ファイルを正しいデバッガディレクトリからWindows Performance Toolkitディレクトリにコピーします。私のシステムでは、関連ディレクトリは次のとおりです。
C:\Program Files (x86)\Windows Kits\10\Debuggers\x64
とC:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit
Windows Performance Analyzerを再起動して、正しいバージョンのdbghelp.dllが選択されるようにします。
まず、提供されているレビューと情報は非常に有益です。ただし、通常はこれよりもはるかに少ない情報で解決できます。 MSCOFIG.EXEとバイナリ検索を使用して、問題のあるサービスを特定しました。私はこのような問題のほとんどがIntelソフトウェアによって引き起こされているのを見つけました。会社名を持たないサービスを無効にすることから始めます。それから私はIntelのサービスから始めます。それからフルバイナリサーチ。誰かのPCの問題を解決するのに通常最大で1時間かかります。 Intelは決して良いコンピュータ会社ではなかった、そして彼らのソフトウェアはそれを実証している。 Pentiumアーキテクチャがリリースされたときには10年前のアーキテクチャであったことに直面しましょう。 VAXの時代には、誰がページメモリを使ったコンピュータアーキテクチャを構築したでしょうか。さて、私はその歴史をあなたにあきらめることはありません。私はAMDまたはMicrosoftのどちらかのファンではありません。おそらくいつか、私たちは再び本物のコンピュータを作ることに戻るでしょう。