05.07.2018 Talk Prof. Dr. Sebastian Hack, Saarland University
Prof. Sebastian Hack, Saarland University, gave his talk “AnyDSL: A Partial Evaluation Framework for Programming High-Performance Libraries” on 5 July 2018 as part of the SFB/TRR 89 “InvasIC”-Seminar.
Writing performance-critical software productively is still a challenging task because performance usually conflicts genericity. Genericity makes programmers productive as it allows them to separate their software into components that can be exchanged and reused independently from each other. To achieve performance however, it is mandatory to instantiate the code with algorithmic variants and parameters that stem from the application domain, and tailor the code towards the target architecture. This requires pervasive changes to the code that destroy genericity.
In this talk, I advocate programming high-performance code using partial evaluation and present AnyDSL, a clean-slate programming system with a simple, annotation-based, online partial evaluator. I will show that AnyDSL can be used to productively implement high-performance codes from various different domains in a generic way map them to different target architectures (CPUs with SIMD units, GPUs). Thereby, the code generated using AnyDSL achieves performance that is in the range of multi man-year, industry-grade, manually-optimized expert codes and highy-optimized code generated from domains specific languages.
For more information, please see http://www.invasic.de.