虚拟机访问物理内存需要经过两级页表翻译,如果使用大页,一方面可以降低缺页发生的频率,同时也可以降低TLB Miss的频率,对于提升虚拟机的运行性能有一定作用,下面尝试开启这一功能:
给大页预留内存
使用下面的命令查看Host预留了多少大页:
$ sysctl vm.nr_hugepages
如果没有预留,那么可以使用下面的命令预留指定数量的大页:
$ sysctl vm.nr_hugepages = 32768
这个命令会立即生效,预留了64GB的大页,大页的使用信息可以通过/proc/meminfo查看:
$ cat /proc/meminfo
MemTotal: 114903216 kB
MemFree: 37553776 kB
MemAvailable: 44623380 kB
Buffers: 116076 kB
Cached: 7587284 kB
SwapCached: 0 kB
Active: 2308888 kB
Inactive: 6887192 kB
Active(anon):