INSTITUT

FU Berlin, Fachbereich Mathematik und Informatik, Institut für Informatik

Vortrag des Informatik-Kolloquiums


Eine C++ - Bibliothek für algorithmische Skelette

                                                                                                  Prof. Dr. Herbert Kuchen, Universität Münster

Heute werden zur Programmierung von Parallelrechnern mit verteiltem Speicher typischerweise Nachrichtenaustauschbibliotheken wie MPI verwendet. Dies ermöglicht effiziente Implementierungen, ist aber fehleranfällig. Durch algorithmische Skelette wird versucht, die parallele Programmierung durch mächtigere Konstrukte zu vereinfachen. Die Grundidee besteht darin, typische parallele Programmiermuster als polymorphe Funktionen höherer Ordnung zur Verfügung zu stellen, die effizient parallel implementiert sind. Eine parallele Anwendung lässt sich dann durch simple Verwendung solcher Skelette erstellen. Im Vortrag wird erläutert, wie sich Templates und Operatorüberladung in C++ nutzen lassen, um die für Skelette benötigten Features wie Funktionen höherer Ordnung, partielle Applikationen und parametrischen Polymorphismus zu realisieren. Anhand von Laufzeitmessungen für eine Reihe von Benchmarks wird nachgewiesen, dass das höhere Programmierniveau von algorithmischen Skeletten ohne signifikante Laufzeiteinbußen im Vergleich zu MPI-basiertem Nachrichtenaustausch erreicht werden kann.


 
 
 


[ home ] [ search ] [ up
webmaster@inf.fu-berlin.de