ADAPTOR (Automatic DAta Parallelism TranslaTOR) ist ein Übersetzungssystem für Fortran-Programme. Es unterstützt die Instrumentierung von Fortran-Programmen mit Direktiven, sowie deren Transformation und Laufzeitanbindung. Das System ist besonders dafür ausgelegt, Fortran-Anwendungen mit High Performance Fortran (HPF) oder OpenMP-Direktiven zu parallelisieren und damit parallelen Code zu erzeugen.
<typolist>Mit Hilfe von OpenMP-Direktiven kann der Benutzer seine Anwendung für Parallelrechner mit gemeinsamem Speicher parallelisieren, ohne sich explizit mit der Programmierung von Threads und deren Synchronisierung auseinander setzen zu müssen. OpenMP ist ein sich als De-facto-Standard etabliertes Modell zur Shared-Memory-Programmierung mit Compilerdirektiven und Funktionsaufrufen in den Programmiersprachen Fortran, C und C++, das nahezu alle Shared-Memory-Systeme sehr gut unterstützen. ADAPTOR kann, ähnlich wie dies in kommerziellen OpenMP-Compilern realisiert ist, Programme in OpenMP-Fortran für Multiprozessorsysteme übersetzen, auf denen eine PThreads Bibliothek läuft.
High Performance Fortran (HPF) bietet dem Benutzer die Möglichkeit, seine Anwendung für Parallelrechner mit verteiltem Speicher zu parallelisieren. Der Vorteil dabei ist, dass ihm die mühsame Verteilung der Daten auf die Prozessoren und die oft fehleranfällige Programmierung der Kommunikation erspart bleibt. Datenparallele HPF-Programme sind damit wesentlich schneller zu erstellen und einfacher zu warten als entsprechende parallele Programme mit explizitem Nachrichtenaustausch (MPI). Im Gegensatz zu kommerziellen HPF-Compilern können mittels ADAPTOR die HPF-Direktiven nicht nur für Parallelisierung mittels paralleler Prozesse und expliziten Nachrichtenaustausches genutzt werden, sondern auch für die Parallelisierung mit Threads und Synchronisation, womit sich auf Shared-Memory-Systemen oft eine bessere Leistung erzielen lässt.
</typolist>
Neben einer umfangreichen Laufzeitbibliothek für parallele MPI- und PThreads-Programme stellt ADAPTOR ein vollständiges Fortran 90 Source-to-Source-Transformationssystem dar – modular realisiert mit modernen Compilerwerkzeugen. Es bietet Scanner und Parser sowie zahlreiche Funktionen für Abhängigkeitsanalysen, Transformationen und Optimierungen.
Im BMBF-Projekt EP-CACHE wird die ADAPTOR-Compilertechnik genutzt, um Werkzeuge für die Instrumentierung, Analyse und Optimierung von Programmen für Cache-Architekturen zu entwickeln.
Ansprechpartner
Dr. Thomas Brandes
Telefon: 02241/14-3472
Fax: 02241/14-2181
thomas.brandes@scai.fraunhofer.de
