在 centos 7 上启动时启用大页

在 centos 7 上启动时启用大页

我正在尝试在 centos 7 上启用大页面以与 ovs 和 DPDK 一起使用。我尝试编辑GRUB_CMDLINE_LINUX下面/etc/default/grub的代码。 GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet hugepagesz=1G hugepages=16 hugepagesz=2M hugepages=2048 iommu=pt intel_iommu=on isolcpus=1-13,15-27"

grub2-mkconfig -o /boot/grub2/grub.cfg

但是,在我重新启动并发出 后cat /proc/cmdline,生成的输出不会显示附加的大页条目。 :-(

[root@localhost ~]# cat /proc/cmdline

在此输入图像描述

BOOT_IMAGE=/vmlinuz-3.10.0-327.36.3.el7.x86_64 root=/dev/mapper/centos-
root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb
quiet LANG=en_GB.UTF-8

[root@localhost ~]# grep Huge /proc/meminfo

大页值

请问我错过了什么吗?

答案1

事实证明,问题与 grub 文件的位置有关,而且我使用了错误的路径。

我最初尝试使用

grub2-mkconfig -o /etc/grub2.cfg

但我应该使用/boot/efi/EFI/centos/grub.cfg。作为 grub 文件的路径。所以实际的命令应该是

grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

这可能是因为它是基于 UEFI 的系统。这Centos 维基状态基于 UFEI 的系统使用不同的默认 grub 文件路径。

答案2

我在 CentOS 7.4 上处理同样的事情。

在你的案例中我注意到两件事:

  1. 您有两个条目hugepagesz(1G 和 2M)和hugepage(16 和 2048)。我不确定你是否能做到这一点。

  2. 我在重新启动之前将配置文件生成到 /etc/grub2.cfg 中:

    grub2-mkconfig -o /etc/grub2.cfg
    

就我而言,GRUB_CMDLINE_LINUXin/etc/default/grub具有以下值(50 1G 页):

GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet intel_iommu=on isolcpus=1,2,3,4,5,6,7,8,9,10,11 default_hugepagesz=1G hugepagesz=1G hugepages=50"

另请检查您的内核是否启用了必需的选项(请参阅DPDK 手册,第 2.3.1 节对于这些):

grep <OPTION>= /boot/config-`uname -r`

并检查您的CPU是否支持1GB页面(搜索pdpe1gb cpu标志):

grep pdpe1gb /proc/cpuinfo

编辑:还要检查是否正确安装了内存(请参阅DPDK 手册,第 2.3.2.2 节)。

相关内容