Database Reference
In-Depth Information
You will notice a small variation to the requirements postulated by oracle: the value for the number of processes
exceeds the recommendation by Oracle. The settings need to be repeated if you are planning on using the grid user to
own the Grid Infrastructure installation:
grid soft nofile 1024
grid hard nofile 65536
grid soft nproc 16384
grid hard nproc 16384
grid soft stack 10240
grid hard stack 32768
The Oracle Database 11g Release 2 preinstall RPM installed its settings into limits.conf directly. The new
version installs its settings into /etc/security/limits.d instead. The next time the oracle or grid user logs in the
settings will take effect. The pam_limits.so module is automatically included in the login process via the system-auth
module. This way, after traversing the requirements for an interactive shell login, the limits will be set for the oracle
and grid user. You can check the limits by using ulimit command. More detailed information about these settings can
be found in the man-page “pam_limits” (8).
Configuring large pages
Large pages, also known as “huge pages”, are a feature introduced to Linux with the advent of the 2.6 kernel. The use of large
pages addresses problems Linux systems can experience managing processes on systems with large amounts of memory.
Large amounts of memory at the time when large pages where introduced began with about 16GB of RAM which is not
considered large any more. To explain, a little background information about memory management is required.
The Linux kernel on the Intel IA32 architecture (that is not Itanium!) uses a default memory page size of 4kb.
All of the physical memory has to be managed by the kernel in tiny chunks of 4kb. Huge pages on the other hand use
much larger page sizes of 2MB. It becomes immediately obvious that the kernel benefits from this as there are less
memory pages to manage. But it is not only the reduced number of memory pages the kernel needs to keep track of;
there is also a higher probability that the part of the CPU responsible for the translation of physical to virtual memory
(the translation lookaside buffer, or TLB) will have a page address cached, resulting in faster access.
In earlier Oracle Releases you needed to manually calculate the number of huge pages before starting the Oracle
instance. Oracle provides a script as part of a My Oracle Support note, called calc_hugePages.sh. Using it against a
started Oracle instance it calculated the number of large pages. Thankfully, you get this information in the Oracle
database instance's alert.log now as shown here:
****************** Large Pages Information *****************
Total System Global Area in large pages = 0 KB (0%)
Large pages used by this instance: 0 (0 KB)
Large pages unused system wide = 0 (0 KB)
Large pages configured system wide = 0 (0 KB)
Large page size = 2048 KB
RECOMMENDATION:
Total System Global Area size is 2514 MB. For optimal performance,
prior to the next instance restart:
1. Increase the number of unused large pages by
at least 1257 (page size 2048 KB, total size 2514 MB) system wide to
get 100% of the System Global Area allocated with large pages
***********************************************************
 
Search WWH ::




Custom Search