6.3.3. Monitoring und Memory Deficit

Für die Überwachung von AME wurden einige AIX Performance Tools erweitert, wie z.B. vmstat, lparstat oder svmon. Auch amepat kann für die Überwachung von AME verwendet werden.

Eine Größe die überwacht werden sollte, ist das sogenannte Memory Defizit. In Bild 5.7 ist gezeigt, wie eine zu niedrige Komprimierungsrate zu fehlendem Speicher, dem Memory Defizit, führt. Die physikalische Hauptspeicher-Größe im Beispiel ist 12 GB, aufgeteilt in den Pool der unkomprimierten Speicherseiten mit 4 GB und dem Pool der komprimierten Speicherseiten mit 8 GB. Um die Expanded Memory Größe von 18 GB (AME-Faktor 1.5) zu erreichen, müssen die Daten im Compressed Pool mindestens mit einer Komprimierungsrate von 1.75 komprimiert werden. Im Beispiel wurde allerdings nur eine Komprimierungsrate von 1.5 erreicht. Damit können im Compressed Pool nur 1.5 * 8 GB = 12 GB untergebracht werden. Zusammen mit den 4 GB des Uncompressed Pools ergibt sich dann eine Expanded Speichergröße von 16 GB anstelle von 18 GB. Es fehlen also 2 GB Speicher. Dieser fehlende Speicher wird als Memory Defizit bezeichnet und wird von den Überwachungs-Tools auch ausgegeben.

Resulting memory deficit of 2 GB due to a compression rate that was too low (1.5 instead of 1.75).
Bild 6.7: Entstandenes Memory Defizit von 2 GB aufgrund einer zu niedrigen Komprimierungsrate (1.5 anstelle von 1.75).

Ein Memory Defizit kann auf eine von zwei Arten aufgehoben werden:

    • Verkleinern des AME-Faktors und damit Verkleinerung des erweiterten Speichers.
    • Beibehalten der erweiterten Speichergröße durch Reduzierung des AME-Faktors und Hinzufügen von zusätzlichem Speicher zum Ausgleich.

Mit den oben genannten Monitoring Tools ist das Erkennen eines Memory Defizits sehr einfach, hier z.B. das Kommando lparstat mit der Option „-c“ (compression):

aix22 # lparstat -c 1
 
System configuration: type=Shared mode=Uncapped mmode=Ded-E smt=4 lcpu=16 mem=32512MB tmem=29696MB psize=16 ent=2.00
 
%user  %sys  %wait  %idle physc %entc  lbusy  vcsw phint  %xcpu xphysc    dxm
----- ----- ------ ------ ----- ----- ------ ----- ----- ------ ------ ------
31.3   1.8    0.0   66.9  1.14  57.2   12.1  1654     0    0.0 0.0000      0
 30.8   1.6    0.0   67.6  1.13  56.3   11.7  1625     0    0.0 0.0000      0
 31.5   1.7    0.0   66.8  1.14  57.0   12.0  1715     0    0.0 0.0000      0
 57.1   1.5    0.0   41.4  1.95  97.7    8.4  1789     0    0.0 0.0000      0
 32.2   1.7    0.0   66.0  1.20  60.2    8.7  1889     0    0.0 0.0000      0
 ^C
aix22 #

Interessant sind hier die Spalten %xcpu, xphysc und dxm:

    • %xcpu: Prozent der verbrauchten CPU-Ressourcen für AME
    • xphysc: Verbrauch von physikalischen Prozessoren für AME
    • dxm: Größe des Memory Defizits in MB