Transparent Huge Pages
在RHEL6中,透明大页功能是默认开启的。
开启该选项后,内核会尽可能地尝试分配大页,如果mmap区域是2mb,那么每个linux进程都会分配到2mb大小的页。如果大页不够用了(比如物理内存不够了),内核会重新分配4KB大小的页。透明大页是可以交换的(swappable),通过将大页转换成小的4KB的页。
为了有效的使用大页,内核必须找到连续可用的物理内存来进行分配。为此增加了一个内核线程。透明大页和大页类似:但是透明大页是运行时由内核线程khugepaged自动创建的;大页必须在启动前预先分配。
ORACLE建议关闭透明大页的功能:透明大页会导致节点不可预料的重启,以及RAC的性能问题;透明大页也会导致单节点数据库环境发生不可预料的性能问题或延迟。
比如RAC节点发生重启后,可能会在ocssd.log中发现以下日志信息:
2013-05-01 14:30:45.255: [ CSSD][224204544]clssscMonitorThreads clssnmvKillBlockThread not scheduled for 7500 msecs
2013-05-01 14:30:46.945: [ CSSD][224204544]clssscMonitorThreads clssnmvWorkerThread not scheduled for 8030 msecs
Mongodb环境也建议关闭透明大页功能。
检查是否开启了透明大页功能:
RHEL系统:
# cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
[always] never
其他系统:(如果是UEK2内核,2.6.39-400.116.0没有将透明大页编译进去,这个文件就不存在)
# cat /sys/kernel/mm/transparent_hugepage/enabled
[always] never
[always]表示启用
[never]表示禁用
因为内核只是对匿名内存块,比如stack、heap使用透明大页,/proc/meminfo中的AnonHugePages也表示内核使用了多少透明大页内存:
# grep AnonHugePages /proc/meminfo
AnonHugePages: 20142080 kB
禁用透明大页的方法:
1.修改文件/etc/grub.conf,添加一行:
transparent_hugepage=never
2.修改文件/etc/rc.local文件,添加:
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
Transparent Huge Pages的更多相关文章
- Linux传统Huge Pages与Transparent Huge Pages再次学习总结
Linux下的大页分为两种类型:标准大页(Huge Pages)和透明大页(Transparent Huge Pages).Huge Pages有时候也翻译成大页/标准大页/传统大页,它们都是Hu ...
- Examining Huge Pages or Transparent Huge Pages performance
Posted by William Cohen on March 10, 2014 All modern processors use page-based mechanisms to transla ...
- Linux Transparent Huge Pages 对 Oracle 的影响
1 Transparent Huge Pages 说明 官网上有2篇文章对THP 做了说明: https://access.redhat.com/solutions/46111 https://acc ...
- redis启动后出现"WARNING you have Transparent Huge Pages (THP) support enabled in your kernel"问题
问题描述:启动redis后出现:WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This w ...
- Linux中禁用THP(Transparent Huge Pages)
一.简介 Centos6开始引入THP,Centos7时默认启用,用来提升内存性能. 二.说明 争对一些数据库,如Oracle.MariaDB.MongoDB.VoltDB在使用时,要求关闭此功能. ...
- WARNING you have Transparen Huge Pages..
redis启动警告: WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will c ...
- 大页(huge pages) 三大系列 ---计算大页配置参数
使用以下shell 脚本来计算大页配置参数,确保使用脚本实例之前的数据已经开始, 如果数据库的版本号11g,确认是否使用自己主动的内存管理(AMM) +++++++++++++++++++++++++ ...
- Linux 关于Transparent Hugepages的介绍
透明大页介绍 Transparent Huge Pages的一些官方介绍资料: Transparent Huge Pages (THP) are enabled by default in RHEL ...
- THP Transparent HugePages关闭
ambari 安装Hortonworks HDP 时在检测host异常 The following hosts have Transparent Huge Pages (THP) enabled.TH ...
随机推荐
- AWR - Load Profile 节
AWR 报告的"Load profile"节,如下图所示,包含很多极为有用,却被经常忽视的信息.通常更倾向使用"instance efficiency percentag ...
- 017-通过govendor管理依赖包
1:安装 go get -u github.com/kardianos/govendor 2:配置环境变量 需要把 $GOPATH/bin/ 加到 PATH 中 D:\my_workspace\go_ ...
- 与web有关的小知识
为什么修改了host未生效:http://www.cnblogs.com/hustskyking/p/hosts-modify.html htm.html.shtml网页区别 Vuex简单入门 详说c ...
- 自己定义RatingBar,能依据设置改变样式
项目在我的GITHUB上 mirsfang的GitHub 一个简单的自己定义View ,为了一个 比較奇葩的需求而搞出来的.他的功能就是能让你自己设置图片和图片的大小以及星星的数量,是一个组合型的 ...
- Android ——VideoView禁止"无法播放该视频"弹窗
我们在使用videoView播放视频时,如果获取内容失败.网址不对.或者视频格式不对等,会弹出“无法播放该视频”的弹窗,阻塞用户使用. 这种情况,如果在一些自助服务类场合下,弹窗会造成十分不友好的用户 ...
- ReactNative踩坑日志——fetch如何向服务器传递参数
一:简单参数 简单的参数,我们可以使用手动拼接的方式传递. 格式为: fetch(url?key1=val1&key2=val2&...).then((response) => ...
- MobX快速入门教程(重要概念讲解)
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/7372119.html 一:Mobx工作流程图 二:MobX涉及到的概念 1:状态state 组件中的数据. 2 ...
- cocos2d-js 粒子系统使用自定义图片,还原原来的图片宽高
粒子系统使用自定义图片很简单只需要在plist最后一行设置png的名称即可.但是,在实际使用中,发现自定义图片无法使用原来的形状,例如设置了一长条的图片,结果出来确实一个个圆球. 翻了plist和cc ...
- javascript用正則表達式检測username的合法性
在用户登录.用户注冊时经常须要对username如邮箱.手机号进行校验,一般经常使用表达式. 以下整理对邮箱和手机号的表达式校验: function checkUser(){ var userName ...
- 【FinancialKnowledge】商业银行业务知识
商业银行业务思维导图 一.资产业务 资产业务是商业银行的主要收入来源 1.放款业务 1.1 信用放款 信用放款,是单凭借款人的信誉, 不需要提供任何抵押品的放款,是一种资本放款. 1.1.1 普通借款 ...