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

[img] PDF
3276489.pdf - Published

Download (455kB)

Additional URL:
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 > Programmiersprachen und Compilerdesign (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.

Metadata export


+ Search Authors in

+ Download Statistics

Downloads per month over past year

View more statistics

You have found an error? Please let us know about your desired correction here: E-Mail

Actions (login required)

Show item Show item