Windows Server
 Computer >> コンピューター >  >> システム >> Windows Server

メモリ圧縮プロセス:Windows10および11でのメモリとCPUの使用率が高い

メモリ圧縮 Windows 10および11の機能は、RAM内の一部のページを圧縮することにより、物理RAMの使用率を最適化するために使用されます。プロセスメモリ圧縮を使用することにより、ディスク上でページングすることなく、より多くのプロセスを物理メモリに保持できます。追加のCPUリソースがデータの圧縮/解凍に費やされている場合でも、必要なデータはRAMからより高速に取得されます。メモリ圧縮を使用すると、RAMの使用量を減らし、I / O操作の量を減らすことでハードディスクの負荷を減らし、SSDリソースを節約できます。

Microsoftは、Windows10およびWindowsServer 2016でメモリマネージャー(MM)プロセスによるメモリ圧縮を最初に導入しました。この記事では、Windowsで圧縮メモリ使用量の統計を表示する方法、RAM圧縮を有効または無効にする方法(コンピューターの場合)について説明します。メモリ圧縮プロセスの負荷が高いため、速度が低下します。

Windows10および11の圧縮メモリ

Windowsメモリマネージャがメモリ不足を検出すると、ディスク上のページングファイルに書き込んで他のプロセス用にRAMを解放するのではなく、メモリの未使用ページを圧縮しようとします。

元々、プロセスはシステムと圧縮メモリ システムプロセス内に配置されていたため、トラブルシューティングにはあまり便利ではありません。最新のWindowsビルド(Win 1020H2およびWindows11)では、この機能は個別のメモリ圧縮に分割されています。 タスクマネージャーから隠されているプロセス。このプロセスに関する情報は、Get-ProcessPowerShellコマンドレットを使用して取得できます。

Get-Process -Name "Memory Compression"

Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
------- ------ ----- ----- ------ -- -- -----------
0 0 1548 380920 1,104.59 1764 0 Memory Compression

メモリ圧縮プロセス:Windows10および11でのメモリとCPUの使用率が高い

Windowsタスクマネージャで表示できるのは、メモリ圧縮の現在のレベルのみです。

パフォーマンスに移動します タブをクリックし、メモリを選択します セクション。圧縮メモリ使用量の現在の値は、使用中(圧縮)に表示されます。 パラメータ。私の例では、4.5 GBが使用されており、そのうち373MBが圧縮されています。圧縮されたメモリの初期量を理解するには、メモリ構成の上にマウスを置きます。 グラフ:

使用中圧縮(373MB)。圧縮メモリは推定1549MBのデータを保存し、システムに1176MBのメモリを節約します。

ご覧のとおり、メモリ圧縮レベルはほぼ315%に達するため、RAMの節約は非常に大きくなります。

メモリ圧縮プロセス:Windows10および11でのメモリとCPUの使用率が高い

また、Process Explorerを使用して、Windows11/10のメモリ圧縮プロセスで使用される実際のCPU使用率とメモリサイズを確認できます。

Process Explorerを実行し、メモリ圧縮を見つけます システムプロセスツリーのプロセス。

メモリ圧縮プロセス:Windows10および11でのメモリとCPUの使用率が高い

メモリ圧縮プロセスは、 SysMainによって処理されます (以前のSuperFetch)サービス。 SysMainは、メモリページを圧縮および統合することにより、ディスク書き込み(ページング)を削減します。このサービスが停止した場合、WindowsはRAM圧縮を使用しません。

PowerShellを使用してSysMainサービスのステータスを確認できます:

get-service sysmain

メモリ圧縮プロセス:Windows10および11でのメモリとCPUの使用率が高い

ほとんどの場合、コンピュータが正常に動作し、十分なRAMサイズがある場合、圧縮メモリプロセスは正常に動作し、管理者によるアクションは必要ありません。

システムおよび圧縮メモリプロセスのCPUとRAMの使用率が高い

SysMainサービスとメモリ圧縮プロセスは、コンピューターのパフォーマンスを向上させるために使用されます。ただし、メモリ圧縮プロセスがコンピュータのCPUまたはハードドライブに大きな負荷をかけ始めたり(最大100%、これはタスクマネージャで確認できます)、RAMリソースを大量に消費したりすることがあります。もちろん、コンピューターの動作が遅くなったり、電話を切ったりします。

メモリ圧縮プロセス:Windows10および11でのメモリとCPUの使用率が高い

この場合、あなたは何ができますか?

圧縮メモリプロセスによるPCリソースの使用量が多いという問題を解決するのに役立つヒントをいくつか紹介します

  • コンピュータのページファイルを一時的に無効にしてみてください(ページングファイルがありません オプション)、コンピュータを再起動し、ページングファイルを有効にします(すべてのドライブのページングファイルサイズを自動的に管理します オプション)、再度再起動します;
  • 圧縮メモリプロセスによるコンピュータの高負荷の問題がスリープモードまたは休止状態モードから復帰した後にのみ発生する(そして再起動後に消える)場合は、ストレージコントローラ用の最新バージョンのドライバをダウンロードしてインストールしてみてください(ACPI / AHCI / RAID / SCSI)、公式Webサイトのハードドライブおよびビデオカード。その後、ドライバーの自動更新を無効にすることをお勧めします。 メモリ圧縮プロセス:Windows10および11でのメモリとCPUの使用率が高い

これらのアクションが役に立たなかった場合は、Windowsが圧縮メモリを使用しないようにすることができます。

Windows10および11でメモリ圧縮を無効にする方法

圧縮メモリを使用せずにWindows10が安定して動作することを確認したい場合は、この機能を一時的に無効にすることができます。これを行うには、昇格されたPowerShellプロンプトを開きます。圧縮メモリが有効になっていることを確認しましょう:

Get-mmagent

 ApplicationLaunchPrefetching:TrueApplicationPreLaunch:TrueMaxOperationAPIFiles:512MemoryCompression:TrueOperationAPI:TruePageCombining> pre:True 
 パラメータMemoryCompression:True  は、圧縮メモリが有効になっていることを示しています。

Windowsで圧縮メモリを無効にしましょう:

Disable-MMAgent –MemoryCompression

そして、コンピュータを再起動します:

Restart-Computer

メモリ圧縮プロセス:Windows10および11でのメモリとCPUの使用率が高い

圧縮メモリを無効にした後、システム全体のパフォーマンスが変化したかどうかを確認します。パフォーマンスが向上した場合は、圧縮メモリを無効にしてWindows10をそのままにしておくことができます。

場合によっては、次のアクションで圧縮メモリの問題を修正することをお勧めします。

  1. SysMainを無効にします サービス(例: SuperFetch services.msc -> SysMain->スタートアップの種類:無効)。これにより、MemoryManagerでWindows10/11のメモリ最適化プロセスが無効になります。
  2. フルメモリ診断を無効にするRunFullMemoryDiagnostic タスクスケジューラのタスク(タスクスケジューラ->タスクスケジューラライブラリ-> Microsoft-> Windows-> MemoryDiagnostic-> RunFullMemoryDiagnostic(物理メモリの問題を検出して軽減– RAM)->無効; メモリ圧縮プロセス:Windows10および11でのメモリとCPUの使用率が高い
  3. ネットワークアクティビティ監視ドライバー(ネットワークデータ使用量、NDU)を無効にしてみてください(Windowsの非ページメモリプールに関する記事で説明されています)。
  4. アンチウイルスのリアルタイム保護を無効にします。おそらく、圧縮メモリでは正しく機能しません。
  5. DISMとSFCを使用してWindowsイメージシステムファイルを確認します。

これらのヒントは、圧縮メモリプロセスによってコンピュータの高負荷を取り除くのに役立ちます。ただし、これにより、基盤となるWindowsパフォーマンス最適化機能が無効になり、デバイスの全体的なパフォーマンスに悪影響を与える可能性があります。

WindowsServer2016/2019/2022またはWindows10でメモリ圧縮を有効にする方法

Windows Serverのすべてのバージョンで、メモリ圧縮はデフォルトで無効になっています。

Get-mmagentを実行します 圧縮メモリが無効になっていることを確認するコマンド。以下のスクリーンショットでは、WindowsServer2022でメモリ圧縮=Falseの値が示されています。 。

メモリ圧縮プロセス:Windows10および11でのメモリとCPUの使用率が高い

Windowsでメモリ圧縮を使用するには、次の条件を満たす必要があります。

  • ページングファイルを有効にする必要があります(少なくとも最小サイズは16 Mb)。
  • SysMainサービスが実行されている必要があります;
  • Windows10/11またはWindowsServer2016以降を使用しています。

Windowsでメモリ圧縮を有効にするには、PowerShellコマンドを実行します。

Enable-MMAgent -MemoryCompression

コンピュータを再起動します。

メモリ圧縮を有効にすると、別のSysMain機能であるページ集約が自動的にオンになります。 。このメモリマネージャ機能は、同じコンテンツのメモリページをマージするために使用されます(一種のRAM重複排除)。

原則として、Windows 10および11のメモリ圧縮機能は非常に効果的に機能し、介入を必要としません。メモリ圧縮によってコンピュータに問題が発生する場合は、システム設定、ハードウェア、またはドライバに問題がある可能性があります。必要に応じて、メモリ圧縮を完全に無効にすることができます。


  1. Windows 10 の CPU とディスクの使用率が高い問題を修正

    ユーザーは現在、メモリを集中的に使用するタスクを実行していないにもかかわらず、システムが 100% のディスク使用率と非常に高いメモリ使用率を示していると報告しています。多くのユーザーは、この問題は低構成の PC (システムの仕様が低い) を使用しているユーザーにのみ関連していると考えていますが、ここではそうではなく、i7 プロセッサと 16GB RAM などの仕様のシステムでも同様の問題に直面しています。問題。誰もが尋ねている質問は、Windows 10 の CPU とディスクの使用率が高い問題を修正する方法です。以下は、この問題に正確に対処するための手順です。 Windows 10

  2. [FIX] CPU 使用率が高い Windows ホスト プロセス Rundll32

    Windows OS は、アプリ、プロセス、ドライバーなど、目に見える以上の数百万のコンポーネントで構成されています。システムがアイドル状態のときでも、何千ものプロセスがバックグラウンドで実行されていることに気付かないこともあります。アクティブなアプリで作業していないときでも、システムの動作が遅く見えることが何度かありませんか? デバイスのパフォーマンスが低下するとすぐに、最初に行うことは、Windows タスク マネージャーを確認することです。右? Windows タスク マネージャーは、バックグラウンドで実行されているすべてのアプリとプロセスを、現在使用しているシステム リソースの数を示