9.2. Huge page のサポート

はじめに

通常、x86 CPU は 4kB ページ単位でメモリーに対応しますが、huge page とも言われる大容量ページを使用することも可能です。KVM ゲストは huge page メモリーサポートとデプロイすることで、TLB (Transaction Lookaside Buffer) の CPU キャッシュヒット率を増加させてパフォーマンスを向上させることができます。huge page により、とくに大量のメモリーやメモリー集約型のワークロードに対するパフォーマンスが大幅に向上します。Red Hat Enterprise Linux 6 では、huge page の使用によってページサイズを拡大することで、大量のメモリーを効率的に管理することができます。

KVM ゲストに huge page を使用すると、ページテーブルに使用するメモリーが少なくなり、TLB (Translation Lookaside Buffer) ミスが減少します。これにより、とくにメモリー集約的な状況の場合にパフォーマンスが大幅に改善します。
Transparent huge page

Transparent huge pages (THP) とは、アプリケーションに必要な TLB エントリーを削減するカーネル機能のことです。また、すべての空きメモリーをキャッシュとして使用できるようにするためパフォーマンスが向上します。

Transparent huge page を使用する場合、qemu.conf ファイルに特別な設定は必要ありません。/sys/kernel/mm/redhat_transparent_hugepage/enabledalways に設定されている場合、Huge page がデフォルトで使用されます。
Transparent huge page によって hugetlbfs が使用できなくなるわけではありません。ただし、hugetlbfs を使用しない場合には、通常の 4 kb ページサイズではなく Transparent hugepage が KVM によって使用されます。

注記

Huge page を使用したメモリーパフォーマンスのチューニングの手順については、Red Hat Enterprise Linux 7 Virtualization Tuning and Optimization Guide を参照してください。