Vorrangiges Ziel ist für Server mit knappem Speicher die effiziente Aufteilung des verfügbaren seitenwechselbaren Hauptspeichers NPP (Number of Pageable Pages) entsprechend der angegebenen Wichtigkeit der Kategorien.
Knapper Speicher liegt vor, wenn es bei vernünftig eingestellten MPL-Werten INACTIVE READY TASKS gibt (Report "Active and inactive tasks for category" in der Reportgruppe CATEGORY-QUEUE von SM2).
Wird dieser Zustand im Betrieb nie erreicht, dann kann der Leser diesen Abschnitt überspringen und zum Abschnitt "Prioritätenvergabe" gehen.
Damit PRIOR auf kleinere Lastschwankungen variabel reagieren kann, sollte der Working-Set-Bedarf der Tasks, der sich aus der Summe der MIN MPL-Werte aller Kategorien ergibt, (0,3 bis 0,5) * NPP sein. Die Wahl des Faktors (0,3 oder 0,5) hängt davon ab, wo der Schwerpunkt der Anwendung liegt (siehe unten).
Richtwerte für den durchschnittlichen Working-Set-Bedarf (4-KB-Seiten):
TP-Tasks:
WSTP = 200 bis 400 Seiten für UTM- und DCAM-Tasks
WSTP = 500 bis 1.000 Seiten für DB-Tasks
Dialog-Tasks:
WSDIAL= 50 bis 150 Seiten
Batch-Tasks:
WSBATCH = 50 bis 200 Seiten
Die Verwaltung des Working-Sets für Systemroutinen und Common-Memory-Pools, die von Anwenderprogrammen aufgerufen werden, erfolgt global in der Kategorie SYS (Platzhalter ist die TSN=PGE).
Kategorie SYS:
WSSYS = 2.000 bis 4.000 Seiten
Der NPP-Wert ist dem ACTIVITY-Report von SM2 zu entnehmen.
Hauptanwendung: TP
Hintergrundanwendung: Dialog, Batch
Kategorie TP
In dieser Kategorie befinden sich die Tasks mit den höchsten Leistungsansprüchen. Auch im Überlastfall ist eine Lastbegrenzung dieser Kategorie nicht erwünscht. Daher muss der Wert für MAX MPL gleich der Gesamtanzahl der im System vorhandenen TP-Tasks sein (inklusive der Verwaltungstasks, z.B. Datenbankadministrator, ...).
Der Wert für MIN MPL sollte der gewünschten Anzahl aktiver TP-Tasks entsprechen. Dies wird i.d.R. nahe oder gleich dem MAX MPL-Wert sein. Ein zu kleiner Wert für MIN MPL führt bei Überlast zu unerwünschter Zwangsdeaktivierung (siehe Abschnitt "Aktivierung/Deaktivierung von Tasks") von TP-Tasks.
Empfohlene Werte:
MIN MPLTP = 0,8 * MAX MPLTP
MAX MPLTP = Gesamtanzahl vorhandener TP-Tasks
WEIGHT = 500
Kategorie DIALOG
Diese Kategorie ist meist durch stärkere Lastschwankungen gekennzeichnet.
PRIOR versucht, den von der Systembetreuung vorgegebenen MIN MPL-Wert notfalls durch Verdrängungen von Tasks anderer Kategorien zu erreichen (siehe Abschnitt "Aktivierung/Deaktivierung von Tasks").
Da hier die Dialog-Anwendung im Hintergrund laufen soll, darf der Wert für MIN MPL nicht zu hoch sein.
Durch den Einfluss der Denkzeit sind nicht alle Dialog-Tasks gleichzeitig aktiv. Die Anzahl der aktiven Dialog-Tasks kann mit folgender Formel abgeschätzt werden:
Anzahl aktive Dialog-Tasks = Gesamtzahl Dialog-Tasks / N
N = (durchschnitt. Denkzeit + Antwortzeit) / durchschnitt. Antwortzeit
Richtwerte:
durchschnittliche Denkzeit (inklusive Netzlaufzeit) = 16 s
durchschnittliche Antwortzeit = 4 s
N = 20 s / 4 s = 5
Für die Ermittlung des MIN MPL-Wertes ist maßgebend, wieviel seitenwechselbarer Hauptspeicher (gemäß der Formel 0,5 * NPP bei Schwerpunkt TP-Betrieb) nach Abzug des Working-Set-Bedarfs der Hauptanwendung, der Kategorie SYS bzw. evtl. erforderlicher Batch-Tasks für aktive Dialog-Tasks verfügbar ist (siehe Beispiel).
Der Wert für MAX MPL ist als Lastbegrenzung für vorübergehend auftretende Überlastsituationen gedacht. Er sollte auf den doppelten Wert von MIN MPL eingestellt werden.
Empfohlene Werte:
MIN MPLDIAL = (0,5*NPP - (MIN MPLTP * WSTP + MIN MPLBATCH * WSBATCH + WSSYS)) / WSDIAL
WSTP: durchschnittlicher Working-Set-Bedarf pro TP-Task
WSDIAL: durchschnittlicher Working-Set-Bedarf pro Dialog-Task
WSBATCH: durchschnittlicher Working-Set-Bedarf pro Batch-Task
WSSYS: durchschnittlicher Working-Set-Bedarf für Systemroutinen und Common-Memory-Pools
Anmerkung
Die Berücksichtigung des Batch-Anteils ist an dieser Stelle nur dann erforderlich, wenn für die entsprechende IT-Installation aus betrieblichen Gründen eine Mindestanzahl parallell laufender Batch-Tasks zwingend notwendig ist.
MAX MPL = 2 * MIN MPL
WEIGHT = 100 (50 < WEIGHT < 200)
Kategorie BATCH
Im Normalfall werden Batch-Tasks als Hintergrundlast eingesetzt, um die freien Betriebsmittel zu nutzen. In diesem Fall errechnet sich der Wert für MIN MPL aus der Größe des seitenwechselbaren Hauptspeichers (genauer: 0,5 * NPP), abzüglich des Working-Set-Bedarfs für die Hauptanwendung TP, die Dialog-Anwendung und die Kategorie SYS.
Der Wert für MAX MPL richtet sich nach der Systemauslastung und sollte vom MIN MPL-Wert nicht allzuweit entfernt sein.
Empfohlene Werte:
MIN MPLBATCH = (0,5*NPP - (MIN MPLTP * WSTP + MIN MPLDIAL * WSDIAL + WSSYS)) / WSBATCH
MAX MPL = MIN MPL + 1
WEIGHT = 10 (1 < WEIGHT < 50)
Beispiel zu Hauptanwendung TP
MM = 64 MB
Hauptanwendung TP:
6 UTM-Tasks, Working-Set je 300 Seiten
2 DB-Tasks, Working-Set je 800 Seiten
2 weitere Tasks, Working-Set je 250 Seiten
Hintergrundanwendung:
10 Dialog-Tasks, Working-Set je 150 Seiten
minimal 2 Batch-Tasks, Working-Set je 100 Seiten
Kategorie TP:
MIN MPLTP=8
MAX
MPLTP=10
WEIGHT=500
Kategorie DIALOG:
Anzahl aktiver Dialog-Tasks = Gesamtzahl Dialog-Tasks / N = 2
MIN MPLDIAL=2
MAX
MPLDIAL=4
WEIGHT=100
Kategorie BATCH:
MIN MPLBATCH=2
MAX
MPLBATCH=3
WEIGHT=10
64 MB = 16000 Seiten, residenter MM-Bedarf = 1500 Seiten, also NPP = 14500 Seiten.
(MIN MPLTP * WSTP) + MIN MPLDIAL * WSDIAL + MIN MPLBATCH * WSBATCH + WSSYS <= 0,5*NPP
(6*300+2*800) + 2*150 + 2*100 + 2000 = 1800+1600+300+200+2000 = 5900
<= 0,5*14500 = 7250
Hauptanwendung: Dialog
Hintergrundanwendung: TP, Batch
Kategorie TP
Dass die TP-Anwendung als Hintergrundanwendung erscheint, bedeutet nicht zwangsläufig, dass nur geringe oder gar keine Leistungsansprüche gestellt werden, sondern dass die Anzahl der TP-Transaktionen < 50% der Anzahl der
Gesamttransaktionen ist.
Dieser Fall tritt immer dann auf, wenn TP-Anwendungen neu eingeführt werden und erst eine relativ kleine Anzahl Terminalbenutzer das neue Verfahren benutzt.
Da eine TP-Task immer mehrere Terminalbenutzer bedient bzw. diese normalerweise auch einen wesentlich größeren Working-Set-Bedarf gegenüber Dialog-Tasks hat, ist es grundsätzlich nicht wünschenswert, dass TP-Tasks im Überlastfall
zwangsdeaktiviert werden.
Es sollte daher auch hier der Wert für MAX MPL gleich der Gesamtanzahl der im System vorhandenen TP-Tasks sein.
Ebenso sollte der Wert für MIN MPL nahe oder gleich dem MAX MPL-Wert gewählt werden.
Empfohlene Werte:
MIN MPLTP2 = 0,8 * MAX MPLTP
MAX MPLTP2 = Gesamtanzahl vorhandener TP-Tasks
WEIGHT = 500
Kategorie DIALOG
Liegt der Schwerpunkt der Anwendung auf der Dialog-Seite, so bedeutet das eine höhere Beanspruchung des Hauptspeichers hinsichtlich Paging-Intensität (siehe auch Abschnitt "Systemleistung mit openSM2 untersuchen") als bei TP-Anwendungen.
Der Working-Set-Bedarf der Tasks, der sich aus der Summe der MIN MPL-Werte der Kategorien TP, DIALOG, BATCH ergibt, sollte daher <= 0,3 * NPP sein.
Für die Ermittlung des MIN MPL-Wertes ist wesentlich, wieviel seitenwechselbarer Hauptspeicher (gemäß der Formel 0,3 * NPP bei Schwerpunkt Dialogbetrieb) nach Abzug des Working-Set-Bedarfs der TP-Tasks, der Kategorie SYS bzw. notwendiger Batch-Tasks für aktive Dialog-Tasks verfügbar ist (siehe Beispiel).
Auch hier ist für die Zahl der aktiven Dialog-Tasks in erster Näherung einzusetzen:
Anzahl aktive Dialog-Tasks = Gesamtzahl Dialog-Tasks / 5
Empfohlene Werte:
MIN MPLDIAL = (0,3*NPP - (MIN MPLTP * WSTP + MIN MPLBATCH * WSBATCH + WSSYS)) / WSDIAL
Anmerkung
Der Batch-Anteil ist an dieser Stelle nur dann zu berücksichtigen, wenn aus betrieblichen Gründen eine gewisse Mindestanzahl parallel laufender Batch-Tasks erforderlich ist.
MAX MPL = 2 * MIN MPL
WEIGHT = (300 < WEIGHT < 500)
Kategorie BATCH
Für den Fall, dass Batch-Tasks als reine Hintergrundlast eingesetzt werden, gelten folgende Werte:
MIN MPLBATCH = (0,3*NPP - (MIN MPLTP * WSTP + MIN MPLDIAL * WSDIAL + WSSYS)) / WSBATCH
MAX MPL = MIN MPL + 1
WEIGHT = 10 (1 < WEIGHT < 50)
Beispiel zu Hauptanwendung Dialog
MM = 64 MB
Hauptanwendung Dialog:
45 Dialog-Tasks, Working-Set je 100 Seiten
Batch:
minimal 2 Batch-Tasks, Working-Set je 100 Seiten
Hintergrundanwendung:
2 UTM-Tasks, Working-Set je 200 Seiten
1 DB-Task, Working-Set 500 Seiten
1 weitere Task, Working-Set 150 Seiten
Kategorie TP:
MIN MPLTP=3
MAX
MPLTP=4
WEIGHT=500
Kategorie DIALOG:
Anzahl aktiver Dialog-Tasks = Gesamtzahl Dialog-Tasks / N = 9
MIN MPLDIAL=9
MAX
MPLDIAL=18
WEIGHT=400
Kategorie BATCH:
MIN MPLBATCH=2
MAX
MPLBATCH=3
WEIGHT=10
64 MB = 16000 Seiten, residenter MM-Bedarf = 1500 Seiten, also NPP = 14500 Seiten.
(MIN MPLTP * WSTP) + MIN MPLDIAL * WSDIAL + MIN MPLBATCH * WSBATCH + WSSYS<= 0,3*NPP
(2*200 + 1*500) + 9*100 + 2*100 + 2000 = 400+500+900+200+2000 = 4000
<= 0,3*14500 = 4350
Hauptanwendung: Batch
Hintergrundanwendung: Dialog
Diese Belastung ist typisch für den Nachtschichtbetrieb von Servern, deren Hauptspeicher für den Tages-Online-Betrieb ausgelegt ist. Batch-Anwendungen stellen i.d.R. eine weitaus geringere Hauptspeicher-Beanspruchung bezüglich der Paging-Intensität dar als Online-Anwendungen, belasten aber wesentlich mehr die CPU.
Die Anzahl der verkraftbaren Batch-Tasks hängt daher weniger von der Hauptspeicher-Größe als von der CPU-Geschwindigkeit ab.
Die Einstellung der Kategorieparameter hat in diesem Fall keine Bedeutung (eine gewünschte Lastbegrenzung kann mit dem Job-Klassen-Parameter CLASS-LIMIT durchgeführt werden).