如何使用1G大页
查看cpu是否支持1G大页
cat /proc/cpuinfo | grep pdpe1gb
配置内核默认使用1G 大页
若不配置,则匿名大页默认使用2M大页。
vim /etc/default/grub
//给GRUB_CMDLINE_LINUX添加参数:GRUB_CMDLINE_LINUX="default_hugepagesz=1G"
update-grub
预分配大页
echo 10 > /proc/sys/vm/nr_hugepages
cat /proc/sys/vm/nr_hugepages
使用大页
int main(){
int G = 1;
void* addr = mmap(NULL, G<<30,
PROT_READ | PROT_WRITE,
MAP_SHARED | MAP_ANONYMOUS | MAP_HUGETLB,
-1, 0);
if (addr == MAP_FAILED){
perror("prefix:");
exit(EXIT_FAILURE);
}
sleep(10);//do something
return 0;
}