Windows 11は、Windows 10が実装したメモリー圧縮機能を継承している。従来のWindowsはメモリー容量が足りなくなると、ページングファイルにメモリーの内容を待避させていたが、Microsoftはさらなる性能向上を実現するため、ページイン(読み込み)・ページアウト(待避)先としてメモリー内に専用の領域を用意した。それがメモリー圧縮機能である。

  • 使用中のメモリー圧縮はタスクマネージャーで確認できる

  • 「メモリ構成」にマウスオーバーすると、大まかな概要が示される

近年はSSDが普及しているため、(かつてHDDがメインストレージだった場合と比べると)ページイン・ページアウト時の性能低下はわずかだ。さらに、接続インターフェイスが異なるメモリーを使ったほうが高速なのは改めて述べるまでもない。

だが、圧縮・伸張処理を担うMemory Compressionがプロセッサーに負荷をかけて性能低下に至るケースがある。そのため、メモリー圧縮機能を無効にするコマンドレットが用意された。

  • 「Win」+「X」キー→「A」キーと順に押すか、スタートを右クリック/長押しし、「Windowsターミナル(管理者)」をクリック/タップする

  • 「Get-MMAgent」と入力して「Enter」キーを押すと、「MemoryCompression」からメモリー圧縮機能の状態を確認できる。True=有効、False=無効だ

  • メモリー圧縮機能を無効にするには「Disable-MMAgent -mc」と入力して「Enter」キーを押す。ちなみに「mc」はMemoryCompressionを意味するエイリアスだ

  • PC再起動後に「Ctrl」+「Shift」+「ESC」キーを押してタスクマネージャーを起動。「パフォーマンス」タブを開けばメモリー圧縮機能の無効化を確認できる

なお、再びメモリー圧縮機能を有効にするには「Enable-MMAgent -mc」を実行してPCを再起動する。さて、ポイントは本Tipsが有効か否かだ。

Memory Compressionのプロセッサー使用量が著しく高いのあれば無効にしても構わないが、多くのアプリを併用するとページングファイルに対するページアウトが多発しかねない。

  • Windows Server 2019の場合、既定でメモリー圧縮機能が無効になっている

メモリー圧縮機能に関する公式ドキュメントが見当たらないので詳細は不明だが、クライアントOSのWindows 11と、サーバーOSのWindows Server 2019(Windows 10 1809相当)では同機能の設定値も異なる。

今回、利用可能なメモリーを4GBに制限した仮想マシンで、比較的メモリー消費量が大きいアプリを起動してみたが、著しい性能低下は確認できなかった。Windows 10/11のパフォーマンス向上を目的に同機能を無効化するWeb記事を海外サイトで見かけるものの、プロセッサー性能や実装メモリー容量など諸条件が異なるため、お使いのPCで試すほかはない。