Microsoft DefenderがIntel製CPUのパフォーマンスを低下させていたことが判明
ThrottleStopやRealTempなどのユーティリティソフトの開発者であるUncle Webbことケビン・グリン氏が、Windows 10の標準セキュリティツールであるMicrosoft Defenderが原因で、Intel製CPUのパフォーマンスが低下する現象を報告しています。
Microsoft Defender can Significantly Impact Intel CPU Performance, We have the Fix | TechPowerUp
https://www.techpowerup.com/295877/windows-defender-can-significantly-impact-intel-cpu-performance-we-have-the-fix
Microsoft Defender is reportedly hindering performance on Intel CPUs | PC Gamer
https://www.pcgamer.com/windows-defender-is-reportedly-hindering-performance-on-intel-cpus/
グリン氏によれば、CPUに負荷がかかっている時にハードウェア情報解析ソフトの「HWiNFO」をチェックしたところ、Intel製CPUの性能が低下するとのこと。例えば、CPUベンチマークソフトであるCinebenchでパフォーマンスを計測すると、Microsoft Defenderのリアルタイム保護が有効になっているとスコアがおよそ6%低くなったとグリン氏は報告しています。
この時のプロセスを確認すると、Microsoft Defenderのリアルタイム保護有効時に動作する「MsMpEng.exe」がCPU時間の約4%を占有していたことが判明しました。このパフォーマンス低下はWindows 10とWindows 11の両方で、Intel Coreの第8・9・10・11世代で確認されており、AMD製CPUではパフォーマンスの低下がみられなかったそうです。
このパフォーマンス低下が起こる原因は、Microsoft DefenderがIntel Coreプロセッサの提供するハードウェアパフォーマンスカウンターをランダムに使用し始めるからだとのこと。ハードウェアパフォーマンスカウンターとはCPU内で発生したイベントを計測して分析するための機能で、それぞれに対してどの特権レベルで計測するかを設定できます。
HWiNFOやThrottleStopなどのユーティリティソフトは、これらのカウンターを「モード3」または「全リングレベル」に設定します。しかし、Microsoft Defenderはこれらのカウンターを、より優先度の高い「モード2」に設定するため、Microsoft Defenderがバックグラウンドで動作しているとこのハードウェアパフォーマンスカウンターをモード2に変更しようとしたり、停止しようとしたりします。そのため、Microsoft DefenderはCPU時間を過剰に消費してしまい、パフォーマンスを低下させるとのこと。
問題なのは、Microsoft Defenderがいつハードウェアパフォーマンスカウンターにアクセスするのかはランダムであるため、予測ができないという点。また、Microsoft Defenderそのものを無効化してしまえば問題は発生しませんが、Microsoft Defenderを無効化するとシステムが脆弱(ぜいじゃく)になってしまうので、推奨されません。
そこで、グリン氏は自身が開発するThrottleStopのバージョン9.5に、「Microsoft Defender Boost」という機能を実装したと述べています。この機能をチェックすると、Microsoft Defenderによるハードウェアパフォーマンスカウンターの使用を停止させるため、正確にパフォーマンスが測定できるようになるとのことです。
・関連記事
Windows標準のセキュリティシステム「Microsoft Defender」を最大限に活用する方法 - GIGAZINE
MicrosoftがiOS・Android・macOSでも使えるセキュリティソフト「Microsoft Defender」を公開 - GIGAZINE
Windowsが脆弱性のあるドライバーのインストールをブロックする機能を追加 - GIGAZINE
Microsoft DefenderがOfficeのアップデートを「ランサムウェア」と誤検知してしまいアラートの嵐に - GIGAZINE
・関連コンテンツ