HugePagesおよび透過的なHugePages構成に対する制限

この項で説明するHugePagesおよび透過的なHugePagesのガイドラインを確認します。

透過的なHugePagesにより、Oracle RAC環境でノード再起動を行う結果となるメモリーへのアクセスが遅延し、Oracle Database単一インスタンスでパフォーマンスの問題や遅延が発生する可能性があるため、透過的なHugePagesを無効にすることをお薦めします。Linux用の標準のHugePagesを使用することを引き続きお薦めします。

Red Hat Enterprise Linux 6、Red Hat Enterprise Linux 7、SUSE 11、Oracle Linux 6および以前のリリースのOracle Linux用のUnbreakable Enterprise Kernel 2 (UEK2)カーネルに付属するOracle Linux 7では、透過的なHugePagesメモリーがデフォルトで有効になっています。以降のリリースのUEK2およびそれ以降のUEKカーネルでは、透過的なHugePagesメモリーはデフォルトで無効になっています。

注意:

透過的なHugePagesがUEK2カーネルおよびそれ以降のUEKカーネルで無効になっていても、Linuxシステムでは透過的なHugePagesをデフォルトで有効にすることができます。

透過的なHugePagesは標準のHugePagesに似ています。ただし、標準のHugePagesでは起動時にメモリーを割り当てるのに対して、透過的なHugePagesメモリーではカーネルのkhugepagedスレッドを使用して実行時に動的にメモリーを割り当てます(スワップ可能なHugePagesを使用)。

HugePagesにより、メモリー・マップ・ファイルを使用して、ラージ・ページ表にスワップできないメモリーが割り当てられます。HugePagesは、デフォルトでは有効になっていません。HugePagesを有効にする場合は、スワップ領域を計算する前に、HugePagesに割り当てられるメモリー分を使用可能なRAMから差し引く必要があります。詳細は、対象のドキュメントと、Oracle Technology NetworkおよびMy Oracle Supportを参照してください。

Oracle Grid Infrastructureのインストール時に、グリッド・インフラストラクチャ管理リポジトリ(GIMR)がHugePagesを使用するために構成されます。グリッド・インフラストラクチャ管理リポジトリ・データベースは、クラスタにインストールされた他のすべてのデータベースの前に起動するため、HugePagesに割り当てられた領域が不十分である場合、1つ以上のデータベースのシステム・グローバル領域(SGA)がHugepagesではなく通常のページにマップされる可能性があり、パフォーマンスに悪影響を及ぼします。グリッド・インフラストラクチャ管理リポジトリと同様に、クラスタにインストールしようとするすべてのデータベースの合計SGAサイズを格納するのに十分なサイズになるように、HugePagesメモリー割当てを構成します。