Introduction
Due to some
performance issues with our Oracle RAC 11gR2 cluster running on OUL 5 we decided to increase the physical memory of both nodes
in our cluster from 24G to 96G each. The memory of our main production database
was also increase from 14G to 48G per instance. Since we did not want to run
into issues with regards to memory pages (default 4KB) we also introduced
hugepages.
Steps
1 – After installing
the memory in the server and rebooting check if all memory is visible from the
OS
root [ ~ ]# dmidecode -t 17 | grep Size
Size: 16384 MB
Size: 16384 MB
Size: 16384 MB
Size: 16384 MB
Size: 16384 MB
Size: 16384 MB
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
Size: No Module Installed
2 – Next we need to figure out how
much HugePages we need to reserve. To do this we have to check what the size is
of a Hugepage. This is by default 2048 kB :
oracle [ ~ ]$ grep Hugepagesize /proc/meminfo
Hugepagesize: 2048 kB
oracle [ ~ ]$
We want to
assign 48 Gig to our Oracle instance PRODDB2
ð (48G * 1024) * 1024 è 50331648 (size in kB)
ð 50331648 / 2048 è 24576 (minimum nr of hugepages we
need to configure)
The number of hugepages the os needs to reserve has to be configured in /etc/sysctl.conf
# HugePages
vm.nr_hugepages=24580
We configured 4 more hugepages then required….just
in case
Next reload the /etc/sysctl.conf file using
sysctl -p
sysctl –p
Check if the amount of hugepages is actually
configured :
root [ ~ ]# grep Huge /proc/meminfo
HugePages_Total: 24580
HugePages_Free: 24580
HugePages_Rsvd: 0
Hugepagesize: 2048 kB
That's it ...now we can use HugePages.
Geen opmerkingen:
Een reactie posten