Petalisp: Run Time Code Generation for Operations on Strided Arrays

Beitrag bei einer Tagung


Details zur Publikation

Autorinnen und Autoren: Heisig M, Köstler H
Herausgeber: ACM
Jahr der Veröffentlichung: 2018
Tagungsband: Proceedings of the 5th ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming
Seitenbereich: 11 - 17
Sprache: Englisch


Abstract



We present the data parallel programming
library Petalisp --- an extension of Common Lisp for data parallel
programming. The core of Petalisp is deliberately simple. It features
only a single data structure --- the strided array --- and four
operations on such strided arrays, namely element-wise application of
functions, reduction with a binary function, fusion of several arrays
and affine-linear reshaping.

The novelty of our approach is
that the contents of each strided array are subject to lazy evaluation
and that we delay performance analysis, optimization and code generation
entirely to the run time. In doing so, we considerably increase the
ability of our compiler to make qualified decisions, at the price of
significant run time overhead. We show that this overhead is manageable
and that Petalisp is able to execute several thousand explicit array
evaluations per second.




FAU-Autorinnen und Autoren / FAU-Herausgeberinnen und Herausgeber

Heisig, Marco
Lehrstuhl für Informatik 10 (Systemsimulation)
Köstler, Harald Prof. Dr.
Lehrstuhl für Informatik 10 (Systemsimulation)


Zitierweisen

APA:
Heisig, M., & Köstler, H. (2018). Petalisp: Run Time Code Generation for Operations on Strided Arrays. In ACM (Eds.), Proceedings of the 5th ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming (pp. 11 - 17). Philadelphia, PA, USA.

MLA:
Heisig, Marco, and Harald Köstler. "Petalisp: Run Time Code Generation for Operations on Strided Arrays." Proceedings of the ARRAY 2018, Philadelphia, PA, USA Ed. ACM, 2018. 11 - 17.

BibTeX: 

Zuletzt aktualisiert 2019-16-04 um 10:36