Zum Hauptinhalt springen

2.5.1 Profilspeichertechnik

Bei der Profilspeichertechnik /A.Jennings 1966/ wird von jeder Spalte der Teil vom ersten Nicht-Null-Element bis zum Diagonalelement in einem Vektor gespeichert. Alle Spaltenanteile stehen nacheinander in diesem Vektor.

Manual figure

Abb. 2.5-1 Nummerierungsschema A

Für das in Abb. 2.5-1 gezeigte Netz entsteht eine Normalgleichungsmatrix N entsprechend Abb. 2.5-2. Die besetzten Plätze sind mit einem "×" gekennzeichnet; alle anderen Elemente sind gleich Null. Abb. 2.5-3 zeigt, in welcher Anordnung die Matrixelemente im Speicher des Rechners abgelegt werden.

Die Menge der gespeicherten Elemente bilden das Profil der Matrix und werden von der Hülle (Envelope) eingeschlossen. Es werden also alle Elemente innerhalb dieser Hülle gespeichert, egal ob sie gleich Null oder von Null verschieden sind. Im vorliegenden Beispiel sind also einige Nullen im Profil enthalten.

In der Matrix C sind mindestens alle Elemente, die in N von Null verschieden sind, ebenfalls mit Nicht-Null-Elementen besetzt. C enthält jedoch meistens weit mehr Elemente als N, da bei der Faktorisierung nach 2.4/2 weitere Nicht-Null-Elemente entstehen (Fill-In). Diese zusätzlichen Elemente liegen jedoch stets innerhalb der Hülle von N.

Die Matrizen N und C haben daher das gleiche Profil. Die Matrix Equation preview ist dagegen voll besetzt, es werden jedoch nur diejenigen Elemente von Equation preview berechnet, die in der Hülle der Matrix N liegen (Profilinverse), so dass alle drei Matrizen N, C und Equation preview in gleicher Weise gespeichert werden können.

Manual figure

Manual figure

Abb. 2.5-2
Normalgleichungsmatrix und Hülle

Abb. 2.5-3
Profil und Speicherschema

Bei großen Ausgleichungsaufgaben reicht der zur Verfügung stehende Kernspeicher oft nicht aus, die gesamte Profilmatrix aufzunehmen. Sie wird daher in Blöcke aufgeteilt, die jeweils aus einer variablen Anzahl von Spalten bestehen. Diese Blöcke werden zur Verarbeitung wechselweise in den Kernspeicher geladen.

Der für externe Speicherung der Matrizen A, N, C und Equation preview insgesamt benötigte Plattenplatz läßt sich grob als das Vierfache der Profilgröße abschätzen.

Die Blocklängen und die Anzahl der benötigten Blöcke werden vom Programm optimiert um die zur Verfügung stehenden Feldlängen bestmöglich auszunutzen. Die Mindestanzahl m der Blöcke beträgt genähert

Equation preview
(2.5.1/1)

mit

P :Profil (Anzahl der Elemente in der Hülle)

M :verfügbarer Platz im Kernspeicher

n :ein Faktor zwischen vier und etwa fünf

Zur Abschätzung des für eine Ausgleichung notwendigen Rechenaufwandes wird eine mittlere Bandbreite

Equation preview
(2.5.1/2)

mit

u :Anzahl der Unbekannten

bestimmt. Die Anzahl der notwendigen Multiplikationen für eine Faktorisierung nach 2.4/2 kann für Equation preview abgeschätzt werden mit

Equation preview
(2.5.1/3)

Beide Größen werden in BINGO ausgedruckt, um dem Benutzer ein Gefühl für den Aufwand zu vermitteln. Dabei werden nicht die hier angegebenen Näherungsformeln verwendet, sondern andere Formeln, die etwas präziser, jedoch nicht anschaulich sind.

Die Formel 2.5.1/3 macht deutlich, dass die Größe des Profils quadratisch in den Rechenaufwand eingeht. Daher kommt der Optimierung des Profils große Bedeutung zu.

Einer der Vorteile der Profilspeichertechnik liegt auch in der Möglichkeit, auf Vektorrechnern und Parallelrechnern die Prozesse „Faktorisierung, Berechnung des Lösungsvektors und Inversion“ sehr schnell ausführen zu können. In den meisten Fällen sind nur kleinere Eingriffe ins Programm erforderlich, um die entsprechenden Hardwareeinrichtungen anzusprechen. Moderne Windows Workstations erlauben eine parallele Verarbeitung auf mehreren Prozessoren gleichzeitig.