内存页面大小确实是可以设置的
内存正常情况下是4K的页面。
大页面有2M和1G两种。
使用静态大页面时的性能比使用透明大页面要好大约7%,而透明大页面则比不使用大页面好大约12%。
内存页面大小:getconf PAGE_SIZE
超大页面是 2MB 和 1GB 大小的内存块
cat /proc/meminfo
就可以看到当前的内存使用状况,其中
AnonHugePages
就是透明大页面的值。
要启用静态大页面,可以修改
sysctl.conf
:
echo "vm.nr_hugepages=VALUE" >> /etc/sysctl.conf
禁用大页面:http://unix.stackexchange.com/questions/99154/disable-transparent-hugepages
# put in /etc/rc.local
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi