ovs 및 DPDK와 함께 사용하기 위해 centos 7에서 hugepages를 활성화하려고 합니다. 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
결과 출력에 추가 hugepage 항목이 표시되지 않습니다. :-(
[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 기반 시스템이기 때문일 수 있습니다. 이것센토스 위키상태 UFEI 기반 시스템은 다른 기본 grub 파일 경로를 사용합니다.
답변2
CentOS 7.4에서도 같은 문제를 다루고 있습니다.
귀하의 경우에는 두 가지 사실을 발견했습니다.
hugepagesz
두 개의 항목 (1G 및 2M)과hugepage
(16 및 2048)이 있습니다 . 당신이 이것을 할 수 있을지 모르겠습니다.재부팅하기 전에 /etc/grub2.cfg에 구성 파일을 생성했습니다.
grub2-mkconfig -o /etc/grub2.cfg
제 경우에는 다음과 같은 값을 가졌 GRUB_CMDLINE_LINUX
습니다 /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).