Konferenzbeitrag
Modellbasierte Entwicklung GPU-unterstützter Applikationen
Volltext URI
Dokumententyp
Text/Conference Paper
Dateien
Zusatzinformation
Datum
2012
Autor:innen
Zeitschriftentitel
ISSN der Zeitschrift
Bandtitel
Quelle
Verlag
Gesellschaft für Informatik e.V.
Zusammenfassung
Rechenintensive numerische Anwendungen müssen oft parallel auf Multiprozessorsystemen ausgeführt werden, um akzeptable Laufzeiten zu erzielen. Ein besonders wirtschaftlicher Ansatz hierbei ist die Nutzung preisgünstiger Grafikkarten (GPU, Graphics Processing Units), die eine große Zahl von Prozessoren enthalten. Aus diversen Gründen können i.d.R. aber nicht alle Funktionen auf der GPU ausgeführt werden, d.h. eine Anwendung muß teilweise auf der CPU und GPU ausgeführt werden. Softwaretechnisch resultieren hieraus zwei Probleme: erstens sind die Programmiersprachen und Entwicklungsmethoden für GPUs deutlich verschieden von denen von Allzweckprozessoren; moderne modellbasierte Entwicklungsmethoden sind kaum verfügbar. Zweitens ist für die Kooperationen der beiden Teile einer Anwendung in erheblichem Umfang Code zu implementieren. In diesem Papier stellen wir eine Lösung beider Probleme vor. Zunächst analysieren wir, welche Teilaufgaben bei der Implementierung von GPU-unterstützten Applikationen durch modellbasierte Entwicklungsmethoden und -Werkzeuge sinnvoll automatisiert werden können, um die Arbeitseffizienz und Korrektheit des Codes zu steigern. Sodann beschreiben wir ein auf dem Eclipse Modeling Framework basierendes Generatorsystem, das diese Implementierungsaufgaben automatisiert. Abschließend beschreiben wir an konkreten Beispielen, in welchem Umfang Code generiert werden konnte und welche Ausführungszeiten erzielt wurden.