システム ページ プールからメモリを割り当てできません

この記事では、システム ページ プールからメモリを割り当てできないという問題の解決方法について説明します。

適用対象:  Windows Server 2012R2
元の KB 番号:   312362

現象

サーバーの負荷が高い場合、サーバー サービスはシステム イベント ログに次のエラーを繰り返し記録する場合があります。 これは、サーバーがページ プール メモリから外れ、次の状態を示します。

ソース - SRV
型 - エラー
イベント ID - 2020
説明 -

サーバーは、プールが空だったため、システム ページ プールから割り当てできません。
データ -
0000: 000400000 00540001 00000000 c00007e4
0010: 000000000 c000009a 000000000 00000000
0020: 000000000 00000000 0000000b

原因

いくつかの要因により、ページ プール メモリの供給が不足する可能性があります。 プールのタグ付けを有効にし、異なる時間間隔で実行すると、ページ プール メモリを消費しているドライバー poolsnaps を理解するのに役立ちます。 MmSt タグ (Mm セクション オブジェクト プロトタイプ PTEs) が最大のコンシューマー メモリであり、ページ プール メモリが使い果たされている、またはシステムがエラー イベント 2020s をログに記録している場合、サーバーで開いているファイルが多数ある可能性が高い。 poolsnaps 既定では、メモリ マネージャーは、システムがページ プール全体の 80% に達すると、割り当てられたページ プール メモリをトリミングします。 システム構成に応じて、コンピューター上で可能な最大ページ プール メモリは 343 MB、この数の 80% は 274 MB です。 メモリ マネージャーが需要に対応するために十分な速度でトリミングできない場合は、この記事の「現象」セクションに記載されているイベントが発生する可能性があります。 メモリ マネージャーを調整して、以前のトリミング プロセス (たとえば、60% に達した場合) を開始することで、突然のピーク時のプール需要に対応し、ページ プール のメモリを使い切らさ回避できます。

解決方法

重要

このセクション、方法、またはタスクには、レジストリの編集方法が記載されています。 レジストリを誤って変更すると、深刻な問題が発生することがあります。 レジストリを変更する際には十分に注意してください。 保護を強化するため、レジストリを変更する前にレジストリをバックアップします。 こうしておけば、問題が発生した場合にレジストリを復元できます。 レジストリをバックアップおよび復元する方法の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を表示します。
322756 Windows でレジストリをバックアップおよび復元する方法

次のチューニングの推奨事項は、問題の軽減に役立ちます。

  1. レジストリ エディター (Regedt32.exe) を起動します。

  2. レジストリで次のキーを見つけてクリックします。
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Memory Management

  3. [編集] メニューの [値の 追加] をクリックし、次のレジストリ値を追加します。
    値名: PoolUsageMaximum
    データ型: REG_DWORD
    基数: 10 進数
    値データ: 60

    値を 60 に設定すると、メモリ マネージャーは、既定の設定である 80% ではなく、PagedPoolMax の 60% でトリミング プロセスを開始します。 60% のしきい値では、アクティビティのスパイクを処理するのに十分ではない場合は、この設定を 50% または 40% に減らします。

    値の名前: PagedPoolSize
    データ型: REG_DWORD
    基数: 16 進数
    値データ: 0xFFFFFFFF

    PagedPoolSize を 0xFFFFFFFFに設定すると、他のリソースの代りとして、ページ プールの最大数がコンピューターに割り当てされます。

    注意事項

    PagedPoolSize 0xFFFFFFFF 64 GB の RAM を持つ 32 ビット Windows Server 2003 ベースのコンピューターでは使用できません。 これにより、Free System PTE エントリがダウンし、コンピューターが継続的に再起動される可能性があります。 この構成では、要件と使用可能なリソースに基づいて値を慎重に選択します。

  4. レジストリ エディターを終了します。

  5. 変更を有効にするためにサーバーを再起動します。

状態

Microsoft は、「適用先」セクションに記載されている Microsoft 製品の問題を確認しました。