8i | 9i | 10g | 11g | 12c | 13c | 18c | 19c | Misc | PL/SQL | SQL | RAC | WebLogic | Linux

Home » Misc » Here

Comments for Configuring HugePages for Oracle on Linux (x86-64)


KIrk Brocas said...

Thanks Tim, YOU provide a marvellous resource for the Oracle technical community

Muniraju said...

For RHEL 6 to make it work, I added below lines to "/etc/rc.local" file and rebooted the server.

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

Tim... said...

Hi.

That is in the article, but it is not the preferred method, as specified in the MOS note.

Cheers

Tim...

Eugene said...

There is a bug on UEK 3 with hugepages=1g

The base bug for this issue is being tracked in 12609936.

Specifically, speaking with Oracle Database development, they responded as follows:

"We do not want to use 1G pages. This will not benefit the database, since the number of tlb entries are tiny.

Tim... said...

Hi.

I've put a comment to that effect at the start of that section. Thanks for the heads-up.

Cheers

Tim...

Simon Haslam said...

Thanks for taking the trouble to write this article Tim - it has just been very useful for some of my ODA work :)

Ricardo said...

Ok the Release Notes of UEK 3 Quarterly Update 1, 1 GB Hugepages is not supported for Oracle Databases, due to Bug 17271305.

https://oss.oracle.com/ol6/docs/RELEASE-NOTES-UEK3-QU1-en.html#uek3_changes

Tim... said...

Hi.

Yes. That's the same bug number that is listed in the MOS note my article links to in the first paragraph in that section, where I say don't use 1G hugepages for Oracle. :)

Cheers

Tim...

Jonathan said...

Hi,

I found that this didn't work for me using OEL6.5 until I added :

vm.hugetlb_shm_group=[dbagroupid]

to the sysctl.conf file, other than that I found the rest of the article very useful.

Tim... said...

Hi.

I can't recreate your issue. I've put a note about how to set the parameter, just in case though.

Cheers

Tim...

Krasimir Kovachki said...

I have strange issue in RedHad 6.2 but with some workaround i fix it:

How-to fix
http://www.dba.bg/forum/oracle-rdbms-server/server-database-administration/5112-hugepages-calculation-and-activation-but-cannot-disable-transparent-hugepages-on-redhat-linux-6-2-redhat-bug-422283

Regards,
Krasimir Kovachki
www.dba.bg

AliD said...

Hi Tim,

As always, great article.

Just a note, the script used to calculate the proper number of hugepages has been updated in "Oracle Linux: Shell Script to Calculate Values Recommended Linux HugePages / HugeTLB Configuration (Doc ID 401749.1)". It now supports kernels up to 3.10.

Regards,
AliD

Tim... said...

Hi AliD.

I've amended the script to cope with the newer kernels. The script I've got is based on the one from the docs. I can't really include the MOS note version, as that would be breaking the rules of my support license. :)

Cheers

Tim...

BPradhan said...

Hi


On RHEL 6, the /etc/security/limits.conf has moved to /etc/security/limits.d/* files. Reference: https://access.redhat.com/sites/default/files/attachments/deploying-oracle-12c-on-rhel6_1.2_1.pdf


Cheers

Tim... said...

Hi.

That's not really true. The "/etc/security/limits.conf" file is still present in RHEL6 and RHEL7, but it can be overridden by settings in the "/etc/security/limits.d/" directory.

I put a reference to "/etc/security/limits.d/99-grid-oracle-limits.conf" anyway.

Cheers

Tim...

For UEK 3.8 kernels: said...

http://portrix-systems.de/blog/brost/setting-up-huge-pages-with-uek-r3-kernel-3-8/

Tim... said...

Hi.

Bjeorn's blog is already linked in the article and the script has been adjusted.

Cheers

Tim....

Mor said...

Hi,

In case you want to update the article - for RHEL 7 disabling transparent hugepages is a bit different.
See https://access.redhat.com/solutions/1320153

Mor

Tim.. said...

Mor:

Enabling/disabling is actually the same in both releases. Just OL7/RHEL7 uses grub2, so you have to edit the grub2.cfg file using grubby.

If you are using RHEL6/RHEL7, they use a different path. This is explained in the MOS note I already linked to, but I've repeated the path difference in case it confused others.

Cheers

Tim...

Mor said...

Not only - in RHEL 7 it also involves changing the tuned profile.
Oracle's note is incomplete (like many other).

Tim... said...

Hi.

You are correct. I've added a mention of it in the article.

Cheers

Tim...

JK said...

I am Sysdmin but new to Oracle + HugePages. Script provided in article is nice to determine the value of HugePages.
Should same be used when determining value for more than one oracle DB on single server? or is there any preferred way e.g. 40% of RAM shall be free and 60% can be used for HugePages etc

Tim... said...

Hi.

You can use the same script for multiple DBs running on a single server. Just make sure everything is up and running before running the script. :)

Cheers

Tim...

DO NOT ask technical questions here! They will be deleted!

These comments should relate to the contents of a specific article. Constructive criticism is good. Advertising and offensive comments are bad and will be deleted!

If you post personal information (name, email address etc.) you are agreeing to them being stored and displayed. Feel free to remain anonymous.