Automatic matching of legacy code to heterogeneous APIs: An idiomatic approach

Philip Ginsbach, Toomas Remmelg, Michel Steuwer, Bruno Bodin, Christophe Dubach, Michael O'Boyle

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract / Description of output

Heterogeneous accelerators often disappoint. They provide the prospect of great performance, but only deliver it when using vendor specific optimized libraries or domain specific languages. This requires considerable legacy code modifications, hindering the adoption of heterogeneous computing. This paper develops a novel approach that automatically detects opportunities to exploit accelerators. We focus on calculations that are well supported by established APIs: sparse and dense linear algebra, stencils and generalized reductions and histograms.We call such opportunities idioms and use a custom constraint-based Idiom Description Language (IDL) to discover them within user code. Detected idioms are then mapped to BLAS libraries, cuSPARSE and clSPARSE and two DSLs: Halide and Lift. We implemented the approach in LLVM and evaluated it on the NAS and Parboil sequential C/C++ benchmarks, where we detect 60 idiom instances. In those cases where idioms are a significant part of the sequential execution time, we generate code that achieves 1.26× to over 20× speedup on integrated and external GPUs.
Original languageEnglish
Title of host publication23rd ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'18)
PublisherACM
Pages139-153
Number of pages14
ISBN (Electronic)978-1-4503-4911-6
DOIs
Publication statusPublished - 19 Mar 2018
EventThe 23rd ACM International Conference on Architectural Support for Programming Languages and Operating Systems - Williamsburg, United States
Duration: 24 Mar 201828 Mar 2018
https://www.asplos2018.org/

Publication series

NameACM SIGPLAN Notices
PublisherACM
Number2
Volume53
ISSN (Print)0362-1340
ISSN (Electronic)1558-1160

Conference

ConferenceThe 23rd ACM International Conference on Architectural Support for Programming Languages and Operating Systems
Abbreviated titleASPLOS2018
Country/TerritoryUnited States
CityWilliamsburg
Period24/03/1828/03/18
Internet address

Fingerprint

Dive into the research topics of 'Automatic matching of legacy code to heterogeneous APIs: An idiomatic approach'. Together they form a unique fingerprint.

Cite this