Halaman Besar Eksplisit V/s Halaman Besar Transparan
Ada dua jenis HugePages dalam sistem:Explicit Huge Pages yang dialokasikan secara eksplisit oleh parameter vm.nr_hugepages sysctl dan Transparent Huge Pages yang dialokasikan secara otomatis oleh kernel.
Verifikasi apakah THP diaktifkan
“tuned.service ” pada CentOS / RHEL 7 atur transparent_hugepage untuk selalu secara default. Bahkan jika dinonaktifkan di baris perintah kernel grub, layanan yang disetel akan menyetelnya ke 'selalu ' selama boot. Output perintah di bawah ini mengkonfirmasi bahwa THP diaktifkan pada sistem.
# cat /sys/kernel/mm/transparent_hugepage/enabled [always] madvise neverCatatan :Halaman Besar Transparan tidak dapat diaktifkan/dinonaktifkan pada mesin yang sedang berjalan dan memerlukan reboot.
Langkah-langkah untuk menonaktifkan THP
1. Tambahkan “transparent_hugepage=never ” opsi parameter kernel ke file konfigurasi grub2. Tambahkan atau ubah “transparent_hugepage=never ” parameter kernel pada GRUB_CMDLINE_LINUX opsi di /etc/default/grub mengajukan.
# vi /etc/default/grub GRUB_TIMEOUT=5 GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="nomodeset crashkernel=auto rd.lvm.lv=vg_os/lv_root rd.lvm.lv=vg_os/lv_swap rhgb quiet transparent_hugepage=never" GRUB_DISABLE_RECOVERY="true"
2. Bangun kembali file /boot/grub2/grub.cfg dengan menjalankan grub2-mkconfig -o memerintah. Sebelum membangun kembali file konfigurasi GRUB2, pastikan untuk mengambil cadangan /boot/grub2/grub.cfg yang ada.
Pada mesin berbasis BIOS
# grub2-mkconfig -o /boot/grub2/grub.cfg
Pada mesin berbasis UEFI
# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
3. Reboot sistem dan opsi verifikasi berlaku.
# shutdown -r now
4. Pastikan parameter disetel dengan benar
# cat /proc/cmdline BOOT_IMAGE=/vmlinuz-3.10.0-514.10.2.el7.x86_64 root=/dev/mapper/vg_os-lv_root ro nomodeset crashkernel=auto rd.lvm.lv=vg_os/lv_root rd.lvm.lv=vg_os/lv_swap rhgb quiet transparent_hugepage=never LANG=en_US.UTF-8
Pemecahan Masalah
Jika Laman Besar Transparan (THP) masih belum dinonaktifkan, lanjutkan dan gunakan salah satu opsi di bawah ini.
1. Nonaktifkan layanan yang disetel
Nonaktifkan layanan yang disetel jika mengaktifkan kembali THP menggunakan salah satu dari perintah di bawah ini.
# systemctl stop tuned # systemctl disable tuned
ATAU
# tuned-adm off
2. Buat profil yang disesuaikan dengan THP yang dinonaktifkan
1. Cara lain dan yang disarankan adalah membuat profil yang disesuaikan dengan THP dinonaktifkan. Cari tahu profil mana yang aktif, buat salinannya. Dalam contoh berikut saat ini kami menggunakan profil kinerja throughput:
# tuned-adm active Current active profile: throughput-performance
2. Untuk membuat profil yang disesuaikan, buat direktori baru di /etc/tuned direktori dengan nama profil yang diinginkan.
# mkdir /etc/tuned/nothp_profile
3. Kemudian buat file tune.conf baru untuk nothp_profile, dan masukkan info tuning baru:
# cat /etc/tuned/nothp_profile/tuned.conf [main] include= throughput-performance [vm] transparent_hugepages=never
4. Jadikan skrip dapat dieksekusi.
# chmod +x /etc/tuned/nothp_profile/tuned.conf
5. Aktifkan nothp_profile menggunakan perintah tune-adm.
# tuned-adm profile nothp_profile
6. Perubahan ini akan segera berlaku dan terus reboot. Untuk memverifikasi apakah THP dinonaktifkan atau tidak, jalankan perintah di bawah ini:
# cat /sys/kernel/mm/transparent_hugepage/enabled always madvise [never]CentOS / RHEL 6 :Cara menonaktifkan halaman Transparan Besar (THP)