Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

5.2. Huge pages および Transparent huge pages

通常、 x86 CPU は 4kB ページ単位でメモリーに対応しますが、 huge pages とも言われる大容量ページを使用することも可能です。 TLB (Transaction Lookaside Buffer) に対して CPU キャッシュの使用を増加させてパフォーマンスを向上させる場合、 huge page メモリー対応で KVM のゲストを導入することができます。
Red Hat Enterprise Linux 6 ではデフォルトでカーネル機能が有効になっているため、 huge pages により特に大容量メモリーおよびメモリー集約型の負荷に対してパフォーマンスを大幅に向上させることができます。 Red Hat Enterprise Linux 6 では、 huge pages を使用することでページサイズを増加させ、より効率的な大容量メモリーの管理が可能になります。
ゲストの XML 設定を追加:
<memoryBacking>
	<hugepages/>
</memoryBacking>
現在の huge pages の値を確認:
cat /proc/sys/vm/nr_hugepages
cat /proc/meminfo | grep Huge
huge pages 数の設定:
echo xyz > /proc/sys/vm/nr_hugepages

注記

/etc/sysctl.conf 内の vm.nr_hugepages の値を変更すると設定が永続的になります。
huge pages はホストだけでなくゲストにとっても便利ですが、 合計ページ数は必ずホスト内で利用できるページ数より少なくしてください。
空きメモリーをすべてキャッシュとして使用できるようにするとパフォーマンスが向上します。 /sys/kernel/mm/redhat_transparent_hugepage/enabled を always に設定すると、 Transparent Hugepages がデフォルトで使用されます。
Transparent Hugepage のサポートで hugetlbfs の使用が妨げられることはありません。 ただし、 hugetlbfs を使用しない場合、 KVM では通常の 4kb ページサイズではなくTransparent hugepages が使用されます。