Transparent HugePages(透明大页)
1. 介绍
从RedHat6, RedHat7, OL6, OL7 SLES11 and UEK2 kernels开始,透明大页默认是被开启的以便去改善操作系统的内存管理。透明大页与之前版本的传统意义上的HugePages是类似的,最主要的区别在于透明大页是可以在操作系统运行过程中动态设置的然而传统的hugepages是需要重启操作系统才能生效。
RAC环境下透明大页可能会造成不可预知的节点重启和各种性能问题,另外在单实例的环境下透明大页也会造成不可预知的性能问题。所以oracle强烈建议在所有运行oracle数据库的服务器上关闭透明大页。
相关文档:ALERT: Disable Transparent HugePages on SLES11, RHEL6, RHEL7, OL6, OL7 and UEK2 Kernels (文档 ID 1557478.1)
HugePages on Oracle Linux 64-bit (文档 ID 361468.1)
Oracle Linux: Shell Script to Calculate Values Recommended Linux HugePages / HugeTLB Configuration (文档 ID 401749.1)
2. 查看透明大页设置
用如下方式检查透明大页是否启用
1.默认是启用状态的,设置是[always]:
# cat /sys/kernel/mm/transparent_hugepage/enabled
[always] never
Note 1:红帽内核,查看的路径与上面不同:
# cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
[always] neve