Neues Anti-Paging-Tool von CPP:

APO wirkt systemverändernd

20.05.1977

HAMBURG (uk) - "Durch APO (Automatic Paging Optimizer) kann das virtuelle Betriebssystem fast auf den Level von - realen Systemen gebracht werden", wirbt das Softwarehaus CPP (Computer Program Products) für sein neues Software-Optimierungs-Produkt und zielt damit auf die große Anzahl von IBM-Anwendern, die Probleme mit überhöhten Paging-Raten haben.

Bei der Neuvorstellung auf der ECOMA-3 in Hamburg wurde APO als ein für alle Programmiersprachen einsetzbares Tuning-Werkzeug bezeichnet, das auf CSECT-Basis die Paging-Raten senken soll. Dafür müssen zunächst von dem sogenannten APO-Extraktor, der in einer separaten Partition läuft, stichprobenartig Daten von dem zu messenden Anwendungsprogramm erfaßt werden. Ein Analyseprogramm erstellt aus diesen Informationen Statistiken, in denen beispielsweise die verschiedenen Programmblöcke (CSECT) mit ihren Page-Grenzen oder die Reduktion des Working-Sets in Pages(-Einheiten) sowie in Prozent erscheinen. Die wichtigste Aufgabe des Analyse-Programms besteht allerdings in der Übergabe von neu zu erstellenden Programmstrukturen an den Linkage Editor, der

die Programme in einer separaten Datei für den nächsten Verarbeitungslauf bereitstellt. Eine SMF-Auswertungsroutine liefert in Form einer "Top-Ten-Liste" die zu tunenden Programme.

Die APO-Pilot-Installation bei Daimler-Benz zeigte, daß einige CPP-Werbeversprechen nicht gehalten werden konnten. Dazu Mercedes-Tuner Augustin: "Das Optimierungs-Programm bringt bei höheren Programmiersprachen wie Cobol oder Fortran, die keine Programmodule in der vorgeschriebenen CSECT-Form haben, keine Verbesserungen." Nur durch einen Trick gelang es, Cobol-Programme schneller zu machen: Da von den EDV-Herstellern (noch) keine CSECT-Optionen in den Cobol-Compilern zu Verfügung gestellt werden, codierten sie einfach im Programm eine Prioritäten-Nummer (z. B. F 10 SECTION 55). Der Compiler macht daraus automatisch eine CSECT-Eintragung, gibt allerdings außerdem eine OVERLAY-Anweisung für den Linkage Editor heraus, die vorher eliminiert werden

muß. Als einen weiteren Nachteil zeigte sich beim Daimler-Benz-Test die APO-Beschränkung auf den Befehlsteil der Programme. Da bei Cobol- oder PL/1-Programmen die Datenfelder separat liegen, gibt es nur eine Optimierungsmöglichkeit über die Compiler-CSECT-Option. Auch hier fanden die Daimler-Benz-Spezialisten trotzdem wieder eine Möglichkeit zur Optimierung. Um die sogenannte Fragmentation zu verringern, d. h. die Aufteilung von Datenfeldern auf verschiedene Pages, haben sie die Datenfelder mit Hilfe der COUNT-Option gezählt und nach Häufigkeiten in geschlossenen Pages zusammengelegt. Speziell bei Anwendern, die mit normierter oder strukturierter Programmierung (NP, SP oder NPG) arbeiten, erwartet DB durch APO eine starke Entlastung im Paging-Overhead, weil dadurch ein günstiger Working Set entsteht. (Working Set ist die minimale Anzahl von Pages eines Programmes, die zum effizienten Betrieb ständig im REAL-Speicher verfügbar sein müssen. Ziel ist ein kleiner und stabiler Working Set.)