Java Mailing List Archive

http://www.dba.5341.com/

Home » Home (12/2007) » suse oracle »

Re: [suse-oracle] Hugetlbfs Oracle 10g + SLES-10 x86_64 does not work

Didier Boiteux

2006-10-30

Replies:

Sergey,

Please try the following and let me know how it goes.

-+-
Didier

--------------------------------------------------------------------------------------------------
You should install the orarun package (cf
http://www.novell.com/products/server/oracle/) and modify the
NR_HUGE_PAGES=
parameter in /etc/sysconfig/oracle.


If not enough continguous memory space is available, the huge pages may not be
allocated.
In this case, rebooting the system should give you a better chance of getting
the memory.
You can then reserve this memory at boot time with the hugepages=70 boot
parameter
(added in /boot/grub/menu.lst if you are using grub).

Then you can (re)start the oracle service ("rcoracle (re)start").
( If you want, you can check /etc/init.d/oracle to see that it touches
/proc/sys/vm/nr_hugepages
/proc/sys/vm/hugetlb_shm_group
on SLES10)


In order for the Oracle database to use the HugePages, you need to increase
the ulimit parameter "memlock" to the amount of memory (in KBs) you wanted to
reserve in Huge Pages.
You can check the value for the oracle user by running "ulimit -l".

You set up some ulimit parameters (like the number of open files)
in /etc/sysconfig/oracle but memlock is not included.
Therefore you need to edit need to increase the ulimit parameter "memlock" for
the oracle user in /etc/security/limits.conf :

oracle       soft   memlock      589824
oracle       hard   memlock      589824

The memlock setting is specified in KB and must match the memory size of the
number of Huge Pages that Oracle should be able to allocate ( Huge Pages
number x Huge Pages size in KBs).
(In this example, I setup 144 pages x 4096 KB = 589824 KBs on a 2GB machine)


Check that the HugePages are allocated at the OS level with:.
cat /proc/meminfo | grep Huge
HugePages_Total:  144
HugePages_Free:   144
HugePages_Rsvd:    0
Hugepagesize:   4096 kB

After that, you can proceed starting the database.

After the Oracle DB startup you can verify the usage of Huge Pages by checking
whether the number of free Huge Pages has decreased:

cat /proc/meminfo | grep Huge
HugePages_Total:  144
HugePages_Free:   142
HugePages_Rsvd:    0
Hugepagesize:   4096 kB

(I guess it would be better to check after doing some real work on the
data...)


--
To unsubscribe, email: suse-oracle-unsubscribe@(protected)
For additional commands, email: suse-oracle-help@(protected)
Please see http://www.suse.com/oracle/ before posting

©2008 dba.5341.com - Jax Systems, LLC, U.S.A.