我正在使用qemu,使用kvm和我加载ubuntu 18.04图像,qemu加载以下命令:
qemu-system-x86_64 -boot c -m 16G -smp 4 -vnc :0 -enable-kvm -drive if=virtio,file=ubuntu.qcow2,cache=none
我不使用libvirt。
我需要将hugepage从默认的2048kb更改为1GB。我将主机vm配置为支持这种大小的
配置:
cat /proc/meminfo | grep Huge
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
FileHugePages: 0 kB
HugePages_Total: 13
HugePages_Free: 13
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 1048576 kB
Hugetlb: 13631488 kB
在ubuntu中,我配置了/etc/default/grub
并添加GRUB_CMDLINE_LINUX="default_hugepagesz=1G hugepagesz=1G hugepages=40”
然后运行
grub-mkconfig -o /boot/grub/grub.cfg
执行:加载qemu后,我在终端中运行以下命令:
cat /proc/meminfo | grep Huge
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
**Hugepagesize: 2048 kB**
cat /proc/cmdline
BOOT_IMAGE=/vmlinuz-4.15.0-137-generic root=/dev/mapper/ubuntu--vg-ubuntu--lv ro default_hugepagesz=1G hugepagesz=1G hugepages=40 maybe-ubiquity
有人知道如何在这种配置下将巨大的页面定义为1gb吗?
我解决了这个问题。在qemu-system-x86_64中,您可以编写-cpu帮助,然后您可以看到所有支持的cpu和其他标志。在我的案例中,我添加了"-cpu qemu64,pdpe1gb",然后qemu支持大页面