AnyDSL: A partial evaluation framework for programming high-performance libraries
Leißa, Roland
;
Boesche, Klaas
;
Hack, Sebastian
;
Pérard-Gayot, Arsène
;
Membarth, Richard
;
Slusallek, Philipp
;
Müller, André
;
Schmidt, Bertil
DOI:
|
https://doi.org/10.1145/3276489
|
URL:
|
https://madoc.bib.uni-mannheim.de/60594
|
Additional URL:
|
https://dl.acm.org/doi/10.1145/3276489
|
URN:
|
urn:nbn:de:bsz:180-madoc-605942
|
Document Type:
|
Article
|
Year of publication:
|
2018
|
The title of a journal, publication series:
|
Proceedings of the ACM on programming languages : PACMPL
|
Volume:
|
2
|
Issue number:
|
Issue OOPSLA, Article 119
|
Page range:
|
1-30
|
Place of publication:
|
New York, NY
|
Publishing house:
|
ACM
|
ISSN:
|
2475-1421
|
Publication language:
|
English
|
Institution:
|
School of Business Informatics and Mathematics > Informatik (Juniorprofessur) (Leißa 2021-)
|
Pre-existing license:
|
Creative Commons Attribution, Non-Commercial, Share Alike 4.0 International (CC BY-NC-SA 4.0)
|
Subject:
|
004 Computer science, internet
|
Abstract:
|
This paper advocates programming high-performance code using partial evaluation. We present a clean-slate programming system with a simple, annotation-based, online partial evaluator that operates on a CPS-style intermediate representation. Our system exposes code generation for accelerators (vectorization/parallelization for CPUs and GPUs) via compiler-known higher-order functions that can be subjected to partial evaluation. This way, generic implementations can be instantiated with target-specific code at compile time.
In our experimental evaluation we present three extensive case studies from image processing, ray tracing, and genome sequence alignment. We demonstrate that using partial evaluation, we obtain high-performance implementations for CPUs and GPUs from one language and one code base in a generic way. The performance of our codes is mostly within 10%, often closer to the performance of multi man-year, industry-grade, manually-optimized expert codes that are considered to be among the top contenders in their fields.
|
Additional information:
|
Online-Ressource
|
 | Das Dokument wird vom Publikationsserver der Universitätsbibliothek Mannheim bereitgestellt. |
 | Dieser Datensatz wurde nicht während einer Tätigkeit an der Universität Mannheim veröffentlicht, dies ist eine Externe Publikation. |
Search Authors in
BASE:
Leißa, Roland
;
Boesche, Klaas
;
Hack, Sebastian
;
Pérard-Gayot, Arsène
;
Membarth, Richard
;
Slusallek, Philipp
;
Müller, André
;
Schmidt, Bertil
Google Scholar:
Leißa, Roland
;
Boesche, Klaas
;
Hack, Sebastian
;
Pérard-Gayot, Arsène
;
Membarth, Richard
;
Slusallek, Philipp
;
Müller, André
;
Schmidt, Bertil
ORCID:
Leißa, Roland ORCID: 0000-0002-2444-6782 ; Boesche, Klaas ; Hack, Sebastian ; Pérard-Gayot, Arsène ; Membarth, Richard ; Slusallek, Philipp ; Müller, André ; Schmidt, Bertil
You have found an error? Please let us know about your desired correction here: E-Mail
Actions (login required)
 |
Show item |
|