Konferenzbeitrag
Anpassung von Stencil-Codes zur Laufzeit mit Hilfe von Umschreiben auf Binärebene für dynamisch bestimmtes Speicherlayout
Lade...
Volltext URI
Dokumententyp
Text/Conference Paper
Dateien
Zusatzinformation
Datum
2018
Autor:innen
Zeitschriftentitel
ISSN der Zeitschrift
Bandtitel
Verlag
Gesellschaft für Informatik e.V.
Zusammenfassung
Die Optimierung von Stencil-Codes ist eine zentrale Herausforderung im Bereich des Hochleistungsrechnen. Die meisten Ansätze fokussieren sich entweder darauf, diese zur möglichst effizient zur Berechnung auf groSSen Parallelrechenstrukturen zu parallelisieren oder die möglichst effiziente Ausnutzung des Caches, um die Leistung zu steigern. Viele Stencil-Codes nutzen einfache Arrays zur Speicherung der Matrix. Komplexere Datenstrukturen erhöhen die Rechenzeit des Stencil-Codes dadurch, dass die Berechnung der Speicheradresse einer Zelle deutlich komplizierter wird und sogar bedingte Sprünge enthält. In dieser Arbeit wird ein Ansatz vorgeschlagen, wie aus bereits kompilierten Stencil-Codes zur Laufzeit das Speicherlayout analysiert werden kann und das Programm durch partielle Evaluation optimiert wird. Im Gegensatz zu konventioneller partieller Evaluation wird hierbei nicht für konstante Argumente, sondern für Wertebereiche, in denen sich ein Argument befindet, spezialisiert. Durch diese Methode können die Leistungseinbußen merklich reduziert werden.