禁用透明大页Transparent HugePages

默认情况下,Red Hat Enterprise Linux 6,SUSE Linux Enterprise Server 11和Oracle Linux 6以及早期版本的Oracle Linux Unbreakable Enterprise Kernel 2(UEK2)内核启用了透明HugePages内存。在Oracle Linux UEK2内核的更高版本中禁用透明HugePages内存。

透明HugePages可能会在运行时导致内存分配延迟。为避免性能问题,Oracle建议您在所有Oracle数据库服务器上禁用透明HugePages。Oracle建议您使用标准HugePages来提高性能。

要检查是否已启用Transparent HugePages内存,请以root用户身份运行以下命令之一:

红帽企业Linux内核:

#cat / sys / kernel / mm / redhat_transparent_hugepage / enabled

其他内核:

#cat / sys / kernel / mm / transparent_hugepage / enabled

以下是一个示例输出,显示在[always]启用标志时使用的Transparent HugePages内存。

[always] never

如果从内核中删除了透明HugePages,则这些 /sys/kernel/mm/transparent_hugepage or /sys/kernel/mm/redhat_transparent_hugepage 文件不存在。

禁用透明HugePages如下步骤:

  1. Add the following entry to the kernel boot line in the /etc/grub.conf file:

    transparent_hugepage=never
    

    For example:

    title Oracle Linux Server (2.6.32-300.25.1.el6uek.x86_64)
            root (hd0,0)
            kernel /vmlinuz-2.6.32-300.25.1.el6uek.x86_64 ro root=LABEL=/   transparent_hugepage=never
            initrd /initramfs-2.6.32-300.25.1.el6uek.x86_64.img
    
  2. Restart the system to make the changes permanent.

猜你喜欢

转载自blog.csdn.net/j_ychen/article/details/90697848