Illmer, Joachim (2014) Parallele Python-Programmierung auf Multi-Core-Architekturen und Grafikkarten für numerische Algorithmen aus der Strömungstechnik und den Materialwissenschaften. Bachelorarbeit, Duale Hochschule Baden-Würtemberg, Mannheim.
PDF
3MB |
Kurzfassung
Die Programmiersprache Python wird heutzutage vielfach verwendet, um schnell kompakte Prototypen zu entwickeln. Für HPC-Anwendungen wird sie aufgrund der geringeren Performanz im Vergleich zu Hardware-nahen Programmiersprachen wie C oder Fortran nicht eingesetzt. Eine effiziente parallele Programmierung auf Multi-Core-Architekturen und Grafikkarten ist generell als schwierig anzusehen. Hier soll getestet werden, ob Python einen einfachen Zugang zu diesen Systemen bietet. In dieser Bachelorarbeit soll daher die Performanz von Python-Implementierungen mit unterschiedlichen Zusatzbibliotheken untersucht und mit Implementierungen in C oder Fortran verglichen werden. Dazu wurde ein Ausschnitt eines Hubschrauber-Simulationscodes aus der Strömungstechnik ausgewählt. Dieser Simulationscode lag in Fortran für die Ausführung auf Single-Core-, Multi-Core- und Grafikkarten-Systemen vor. In Python wurden mit unterschiedlichen Zusatzbibliotheken kompakte Versionen für diese Systeme implementiert. Der Simulationscode wurde mit einem Performanz-Modell analysiert, um eine Abschätzung der zu erwartenden Performanz zu erhalten. Die Performanz der verschiedenen Implementierungen wurde verglichen und mit Hilfe von Tools analysiert. Dabei zeigte sich, dass eine Implementierung mit Python-Syntax auf Single-Core-Systemen ungefähr ein Sechstel der Performanz von Fortran erreicht. Die Performanz auf Multi-Core-Systemen und Grafikkarten beträgt ungefähr ein Zehntel der Performanz der Fortran-Implementierung. Eine höhere Performanz erreicht eine hybride Implementierung aus C und Python. Diese erzielte sowohl auf Single-Core- als auch auf Multi-Core-Systemen ungefähr die Hälfte der Performanz von Fortran.
elib-URL des Eintrags: | https://elib.dlr.de/92043/ | ||||||||
---|---|---|---|---|---|---|---|---|---|
Dokumentart: | Hochschulschrift (Bachelorarbeit) | ||||||||
Zusätzliche Informationen: | Betreuer: Dr.-Ing. Achim Basermann (DLR, Simulations- und Softwaretechnik), M. Sc. Melven Röhrig-Zöllner (DLR, Simulations- und Softwaretechnik), Prof. Dr. Harald Kornmayer (Duale Hochschule Baden-Württemberg, Mannheim) | ||||||||
Titel: | Parallele Python-Programmierung auf Multi-Core-Architekturen und Grafikkarten für numerische Algorithmen aus der Strömungstechnik und den Materialwissenschaften | ||||||||
Autoren: |
| ||||||||
Datum: | 22 September 2014 | ||||||||
Referierte Publikation: | Ja | ||||||||
Open Access: | Ja | ||||||||
Seitenanzahl: | 76 | ||||||||
Status: | veröffentlicht | ||||||||
Stichwörter: | Python, HPC, Parallel, Multi-Core, GPGPU | ||||||||
Institution: | Duale Hochschule Baden-Würtemberg, Mannheim | ||||||||
Abteilung: | Studiengang Informationstechnik | ||||||||
HGF - Forschungsbereich: | Luftfahrt, Raumfahrt und Verkehr | ||||||||
HGF - Programm: | Raumfahrt | ||||||||
HGF - Programmthema: | Technik für Raumfahrtsysteme | ||||||||
DLR - Schwerpunkt: | Raumfahrt | ||||||||
DLR - Forschungsgebiet: | R SY - Technik für Raumfahrtsysteme | ||||||||
DLR - Teilgebiet (Projekt, Vorhaben): | R - Vorhaben SISTEC (alt) | ||||||||
Standort: | Köln-Porz | ||||||||
Institute & Einrichtungen: | Institut für Simulations- und Softwaretechnik > Verteilte Systeme und Komponentensoftware | ||||||||
Hinterlegt von: | Illmer, Joachim | ||||||||
Hinterlegt am: | 09 Dez 2014 14:14 | ||||||||
Letzte Änderung: | 31 Jul 2019 19:49 |
Nur für Mitarbeiter des Archivs: Kontrollseite des Eintrags