Parameter “use_large_pages”

Diesen Parameter gibt es seit der Oracle-Version 11.2.0.2 und größer und unterstütz beim Verwalten der Huge-Pages für eine Oracle-Datenbank.

Mögliche Werte:

-          „TRUE“ (default)
-          „ONLY“
-          „FALSE“
-          „AUTO“ (seit 11.2.0.3)

Beim Standard-Wert „TRUE“ versucht die Datenbank Hugepages zu nutzen, falls Sie verfügbar sind.

Mit der Version 11.2.0.2 nutzt Oracle, Smalpages (normalen Speicher) für die SGA, sollten nicht genug Hugepages verfügbar sein. Dies hinterlässt einen ORA-4030 als Erinnerung, dass keine Hugepages genutzt werden und mehr Speicher allokiert wird.

Mit der Version 11.2.0.3 wurde das Verhalten geändert. Oracle allokiert den Speicher für die SGA in Hugepages sofern diese vorhanden sind. Sollten weitere benötigt werden, also passt die SGA nicht komplett in die Hugepages rein, wird der Rest der SGA mit Smalpages allokiert. Mit diesem neuen Verhalten, haben zusätzliche Shared-Memory-Segmente einen Nebeneffekt. Der Nebeneffekt dieses neuen Verhalten ist es, dass jedes SHM-Segment der SGA nur über identische Bereiche verteilt wird, daher verteilt sich die SGA über mehr separate SHM-Segmente. In diesem supportetem gemischten Zustand, wird die Datenbank alle verfügbaren Hugepages verbrauchen, bevor diese auf die normalen Smalpages schwenkt.

Bei „FALSE“ werden keine Hugepages genutzt.

Bei „ONLY“ startet die Datenbankinstanz nur, wenn genug Hugepages vorhanden sind, um die gesamte SGA dort hinein zulegen.

„AUTO“ ist seit der Version 11.2.0.3 möglich. Diese Option sagt dem ORADISM-Prozess, dass dieser versuchen soll den Linux-Kernel um zu konfigurieren, um die Anzahl der Hugepages zu vergrößern und die SGA komplett in die Hugepages zulegen.

Der Prozess braucht hierfür die korrekten Rechte -rwsr-x— 1 root oradism

Der automatische Versuch die Konfiguration im Linux-Kernel zu ändern, wird nicht die Anzahl der Hugepages in /etc/sysctl.conf ändern. Beim Neustart werden ganz normal anhand der /etc/sysctl.conf konfigurierten Hugepages bereitgestellt.

Automatic Shared Memory Mangement (ASMM) ist für Linux-x86-64 und Hugepages supportet, aber nicht Automatic Memory Management (AMM). Es wird empfohlen, den Parameter “MEMORY_TARGET” aufzuheben, bevor man den Parameter use_large_pages konfiguriert.

Unsere Empfehlung ist es, den Parameter use_large_pages=”AUTO” zusetzen.

Ist der ORADISM-Prozess nicht in der Lage, aufgrund von Berechtigungen, den Linux-Kernel anzupassen, greift automatisch der Standardwert.