8.2.3. Huge Page と Transparent Huge Page
AMD64 および Intel 64 CPU は通常、4kB ページのメモリーを指定しますが、Huge Page と呼ばれる 2 MB または 1 GB の大きなページを使用できます。KVM ゲストは、Transaction Lookaside Buffer (TLB) に対する CPU キャッシュヒットを増やすことでパフォーマンスを向上させるために、Huge Page メモリーサポートを使用してデプロイできます。
Red Hat Enterprise Linux 7 でデフォルトで有効になっているカーネル機能は、特に大容量メモリーとメモリーを大量に消費するワークロードなど、Huge Page によってパフォーマンスが大幅に向上する可能性があります。Red Hat Enterprise Linux 7 は、Huge Page を使用してページサイズを大きくすることにより、大量のメモリーをより効果的に管理できます。Huge Page 管理の効率と利便性を高めるために、Red Hat Enterprise Linux 7 はデフォルトで Transparent Huge Pages (THP) を使用します。Huge Page と THP の詳細については、Performance Tuning Guide を参照してください。
Red Hat Enterprise Linux 7 システムは、2 MB および 1 GB の Huge Page をサポートしており、これは起動時または実行時に割り当てることができます。複数の Huge Page サイズを有効にする手順については 「起動時またはランタイムにおけるゲスト用 1 GB Huge Page の有効化」 を参照してください。
8.2.3.1. Transparent Huge Page の設定
Transparent Huge Page (THP) は、Huge Page の作成、管理、および使用のほとんどの要素を自動化する抽象化レイヤーです。デフォルトでは、パフォーマンスに関するシステム設定を自動的に最適化します。
注記
KSM を使用すると、Transparent Huge Page の発生を減らすことができるため、THP を有効にする前に KSM を無効にすることをお勧めします。詳細は、「KSM の非アクティブ化」 を参照してください。
Transparent Huge Page はデフォルトで有効になります。現在のステータスを確認するには、次のコマンドを実行します。
# cat /sys/kernel/mm/transparent_hugepage/enabled
Transparent Huge Page をデフォルトで使用できるようにするには、以下を実行します。
# echo always > /sys/kernel/mm/transparent_hugepage/enabled
これにより、/sys/kernel/mm/transparent_hugepage/enabled
が always
に設定されます。
Transparent Huge Pages (THP) を無効にするには、以下を実行します。
# echo never > /sys/kernel/mm/transparent_hugepage/enabled
Transparent Huge Page をサポートしていても、静的 Huge Page は使用できます。ただし、静的 Huge Page が使用されていない場合、KVM は通常の 4kB ページサイズの代わりに Transparent Huge Page を使用します。