Next: Netzaufteilungsalgorithmus
Up: Parallelisierungsansatzdynamische Lastverteilung
Previous: Zu berechnendes Gebiet
Das Message-Passing-Interface wurde bei der Programmierung von FLOW als Kommunikationsbibliothek gewählt. Zweck des MPI ist die Handhabung der Kommunikation der Prozessoren. Grundlegender Mechanismus ist der Nachrichtenaustausch durch Senden und Empfangen [Lämmer, 1993]. Die Prozessoren sind hier eigenständige Rechner mit lokalem Speicher. Über Kommunikationskanäle (Links) tauschen die einzelnen CPUs Daten aus. Das Message-Passing-Interface ist auf vielen Parallelrechnern als Kommunikationsbibliothek vorhanden. So kann FLOW auf einem Parsytek Power X'plorer, einem Parsytek SuperCluster sowie einem Sun-Workstation-Cluster mit demselben Quellcode übersetzt werden. Eine Hardwareunabhängigkeit wurde hier realisiert.
Charakteristika von MPI sind:
- Unabhängigkeit von der Hardwareplattform
- Effiziente Kommunikation
- Unterstützung heterogener Umgebungen
- Sprachschnittstellen zu C und FORTRAN77
- Sprachunabhängige Semantik der Schnittstelle
Die Optimierung von FLOW wurde für den Parsytek Power X'plorer durchgeführt. Hierbei wurde die Architektur des Rechners ausgenutzt, indem Kommunikation und Berechnung auf den Kommunikations- bzw. Rechenprozessoren gleichzeitig durchgeführt werden. Bei der Berechnung werden aus diesem Grund die Elemente auf jedem Prozessor in zwei Gruppen eingeteilt. Die eine Gruppe besteht aus Elementen, die auf einem Rand eines Gebietes zu einem anderen Prozessor liegen, die andere aus den restlichen Elementen. Die Elemente auf dem Rand werden während jedes Rechenschrittes zuerst berechnet. Danach werden gleichzeitig die inneren Elemente berechnet sowie die Knoten auf den Rändern ausgetauscht.
Michael Burghardt