大頁(huge pages) 系列四,hugepages系列

來源:互聯網
上載者:User

大頁(huge pages) 系列四,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 中添加一行記錄:


transparent_hugepage=never

然後重啟




方法二:
配置/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


相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.