Westfälische Wilhelms-Universität Münster: Forschungsbericht 2003-2004 - Institut für Informatik

Forschen

Druckkopf Universität Münster
Logo Universität Münster
A–Z Suchen
 
Startseite Universität Münster

Forschungsbericht
2003 - 2004

 

 
Inhaltsverzeichnis
 
Evangelisch-Theologische Fakultät
Katholisch-Theologische Fakultät
Rechtswissenschaftliche Fakultät
Wirtschafts- wissenschaftliche Fakultät
Medizinische Fakultät
Erziehungswissenschaft und Sozialwissenschaften
Psychologie und Sportwissenschaft
Geschichte / Philosophie
Philologie
Mathematik und Informatik
Physik
Chemie und Pharmazie

Biologie

Geowissenschaften
Forschungszentren
Sonderforschungsbereiche
Graduiertenkollegs
Forschergruppen
Zentrale Betriebseinheiten
 

Startseite

Kontakt

Impressum

 

Institut für Informatik

Tel. (0251) 83-38447
Fax: (0251) 83-33755
e-mail: ifi-sekretariat@math.uni-muenster.de
www: wwwmath1.uni-muenster.de:8010/
Einsteinstraße 62
48143 Münster
Direktoren: Prof. Dr. Achim Clausing, Prof. Dr. Sergei Gorlatch,
Prof. Dr. Klaus Hinrichs, Prof. Dr. Xiaoyi Jiang,
Prof. Dr. Herbert Kuchen, Prof. Dr. Wolfram-M. Lippe,
Prof. Dr. Gottfried Vossen

Forschungsschwerpunkte 2003 - 2004  
 zurück    weiter

Prof. Dr. habil. Sergei Gorlatch
Skelettbasierter Entwurf paralleler und verteilter Software

 
In den 60er Jahren geriet die Softwareentwicklung aufgrund der Verwendung der GoTo-Primitive in Programmiersprachen in eine "Softwarekrise", die den gegenwärtigen Schwierigkeiten der Parallelprogrammierung sehr ähnlich war. Die Krise wurde im Wesentlichen durch strukturierte Programmierung überwunden, indem das GoTo vollständig durch alternative höhere Programmkonstrukte - Komposition, Schleife und bedingte Programmausführung ersetzt wurde.

Analog hierzu ersetzen wir im Bereich paralleler und verteilter Programmierung die in diesem Bereiche traditionell verwendeten low-level Primitive send/receive zur Kommunikation bzw. lock/unlock zur Synchronisation durch höhere alternative Programmkonstrukte [1]. Ziel ist, dass die Verwendung expliziter Kommunikation und Synchronisation in einer strukturierten, disziplinierten Form erfolgt, beispielsweise unter ausschließlicher Benutzung von sog. Skeletten. Skelette sind wiederkehrende Muster, die als kollektive Operation effizient auf verschiedenen parallelen Rechnerarchitekturen implementiert werden können [4].

Die Verwendung von Skeletten bewirkt auf natürliche Weise eine Rollenverteilung zwischen dem Anwender, der Skelette verwendet, und dem Systemprogrammierer, der sie zur Verfügung stellt. Diese Rollenverteilung hat zwei entscheidende Vorteile: 1) Probleme bei der Parallelisierung bleiben dem Anwender verborgen, da sie in den Skeletten gelöst werden, und 2) Implementierungen von Skeletten werden von den Systemprogrammierern auf die Gegebenheiten konkreter Rechnerarchitekturen abgestimmt und sind daher sehr effizient.

Im Rahmen des DFG-Projekts COFFEE wurden weit verbreitete Skelette in Form eines einheitlichen Kataloges beschrieben. Es wurden zwei neue Skelette formal eingeführt und implementiert: der verteilbare Homomorphismus und der Double-Scan [2]. Es wurde gezeigt, dass beide neuen Skelette auf unterschiedlichen parallelen Architekturen effizient implementierbar sind. Dabei wurden mehrere anwendungsbezogene Fallstudien untersucht, beispielsweise die Lösung von Gleichungssystemen oder die schnelle Fourier Transformation, die mit Hilfe der neuen Skelette einfach beschreibbar sind. Weiterhin wurden die Kosten (Produkt aus Prozessoren und Laufzeit) der Skelett-Implementierungen untersucht und die Kostenoptimalität (keine extra Kosten für Parallelität) für den Double-Scan bewiesen [5].

Drittmittelgeber:

DFG-Projekt COFFEE

Beteiligte Wissenschaftler:

Prof. Dr. habil. Sergei Gorlatch, Dipl.-Inf. Holger Bischof, Dr. Jörg Fischer (TU Berlin)

Veröffentlichungen:

[1] S. Gorlatch. Send-receive considered harmful: Myths and realities of message passing. ACM TOPLAS, 26(1): pages 47-56, 2004.

[2] H. Bischof and S. Gorlatch: A cost-optimal parallel implementation of a tridiagonal system solver using skeletons. Future Generation Computer Systems, 21(5), pages 737-742, 2004.

[3] S. Gorlatch: Optimizing compositions of components in parallel and distributed programming. In Christian Lengauer et al., editor, Domain-Specific Program Generation, volume 3016 of Lecture Notes in Computer Science, pages 274-290. Springer-Verlag, 2004.

[4] F. A. Rabhi and S. Gorlatch, editors: Patterns and Skeletons for Parallel and Distributed Computing. Springer-Verlag, 2003.

[5] H. Bischof, S. Gorlatch, and E. Kitzelmann: Cost optimality and predictability of parallel programming with skeletons. Parallel Processing Letters, 13(4): pages 575-587, 2003.

[6] H. Bischof, S. Gorlatch, and E. Kitzelmann: Design and implementation of a cost-optimal parallel tridiagonal system solver using skeletons. In V. Malyshkin, editor, Parallel Computing Technologies (PaCT 2003), volume 2763 of Lecture Notes in Computer Science, pages 415-428. Springer-Verlag, 2003.

[7] S. Gorlatch: SAT: A programming methodology with skeletons and collective operations. In Patterns and Skeletons for Parallel and Distributed Computing, pages 29-63. Springer-Verlag, 2003.

[8] J. Fischer, S. Gorlatch, and H. Bischof: Foundations of data-parallel skeletons. In Patterns and Skeletons for Parallel and Distributed Computing, pages 1-27. Springer-Verlag, 2003.

 

Zurückblättern

 Diese Seite:  :: Seite drucken   :: Seite empfehlen   :: Seite kommentieren

© 2005 Universität Münster - Dezernat 6.3. + Forschungsberichte

   :: Seitenanfang Seitenanfang

© Universität Münster
Schlossplatz 2 · 48149 Münster
Tel.: +49 251 83-0 · Fax: +49 (251) 83-3 20 90
E-Mail: verwaltung@uni-muenster.de