首页 > 代码库 > 大页(huge pages) 系列四 ---Transparent HugePages
大页(huge pages) 系列四 ---Transparent HugePages
从RedHat 6, OEL 6, SLES 11 and UEK2 kernels 开始,系统缺省会启用 Transparent HugePages :用来提高内存管理
的性能透明大页(Transparent HugePages )和之前版本中的大页功能上类似,主要的区别是:Transparent HugePages 可以实时配置,
不需要重启才能生效配置;
透明大页(Transparent HugePages )主要是利用khugepaged thread,而以前的 大页是通过在系统启动时来预分配实现;
但是,oracle 官方不建议我们使用RedHat 6, OEL 6, SLES 11 and UEK2 kernels 后的 透明大页(Transparent HugePages ),
因为透明大页(Transparent HugePages ) 存在一些问题:
1.在RAC环境下 透明大页(Transparent HugePages )会导致异常节点重启,和性能问题;
2.在单机环境中,透明大页(Transparent HugePages ) 也会导致一些异常的性能问题;
----以红帽6.0 为例:
方法一:
缺省启用:[always] --- 表明启用了透明大页
[root@rhel-6 redhat_transparent_hugepage]# cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
[always] madvise never
禁用状态:
[root@rhel-6 redhat_transparent_hugepage]# cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
always madvise [never]
方法二:
[root@rhel-6 redhat_transparent_hugepage]# grep AnonHugePages /proc/meminfo
AnonHugePages: 143360 kB
如果 AnonHugePages > 0 同样表示启用了透明大页;
----如何禁用透明大页:
方法一(优先选择):
在 /etc/grub.conf 中添加一行记录:
然后重启
方法二:
配置/etc/rc.local 然后重启服务器:
if test -f /sys/kernel/mm/redhat_transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/redhat_transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
fi
大页(huge pages) 系列四 ---Transparent HugePages
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。