Es gibt verschiedenste Ansätze um lineare Gleichungssysteme zu lösen. Die verschiedenen Verfahren weisen unterschiedliche Qualität bezüglich numerischer Stabilität, Speicherzugriff und Parallelisierbarkeit auf. Der klassische LINPACK-Benchmark schreibt das Verfahren vor, ein erweiterter Benchmark lässt die Wahl des Algorithmus offen.
In unserer Arbeit haben wir zwei Algorithmen auf den MUSIC portiert, einerseits den vorgegebenen LINPACK-Benchmark (Gauss Elimination) sowie einen Blockalgorithmus. Die Wahl des ersten Algorithmus war durch die Aufgabenstellung gegeben, den zweiten wählten wir auf Grund seiner guten Parallelisierbarkeit.
Wie wir merkten, war nicht die Kommunikation die einschränkende Grösse für die Performance, sondern der Speicherzugriff. Durch eine starke Asssembleroptimierung konnten wir dieses Problem teilweise entschärfen.
Ein MUSIC mit 63 Prozessoren hat eine Peakperformance von 3.6 Gflop/s. Durch die Einschränkungen im Speicherzugriff sind davon theoretisch maximal 560 Mflop/s bei einer unendlich grossen Matrix erreichbar (siehe Kapitel 9 auf Seite
). Von diesen 560 Mflop/s konnten wir für eine 1000 Problem 232 Mflop/s erreichen. Dies entspricht einer Effizienz von 41 Prozent, ein Wert der für eine Maschine mit 63 Prozessoren sehr gut ist.
Mit schnelleren Prozessoren ist die MUSIC-Architektur sehr gut für Probleme der linearen Algebra geeignet. Aus diesem Grunde enthält dieser Bericht auch eine Einführung in die LINPACK-Library sowie eine Beschreibung der Paralleliserung mit Vergleichen zu anderen Systemen, um die Portierung unserer Routinen auf ein Nachfolgemodell des aktuellen MUSICs zu erleichtern.