2018
DOI: 10.1145/3296957.3173182
|View full text |Cite
|
Sign up to set email alerts
|

Automatic Matching of Legacy Code to Heterogeneous APIs

Abstract: 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 to automatically detect opportunities for accelerator exploitation. We focus on calculations that are well supported by established APIs: sparse and dense linear algebra, stencil code… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
6
0

Year Published

2020
2020
2024
2024

Publication Types

Select...
4
1

Relationship

1
4

Authors

Journals

citations
Cited by 6 publications
(7 citation statements)
references
References 43 publications
0
6
0
Order By: Relevance
“…The first two categories have fallen out of fashion, mainly due to the weak robustness against code changes, leaving the stage for the more systematic semantic approaches. In this category, Ginsbach et al propose IDL an Idiom Description Language that gets lowered to a set of constraints [28]. A match is a code fragment that adheres to the set of specifications.…”
Section: Related Workmentioning
confidence: 99%
“…The first two categories have fallen out of fashion, mainly due to the weak robustness against code changes, leaving the stage for the more systematic semantic approaches. In this category, Ginsbach et al propose IDL an Idiom Description Language that gets lowered to a set of constraints [28]. A match is a code fragment that adheres to the set of specifications.…”
Section: Related Workmentioning
confidence: 99%
“…For existing code (e.g., a program written in a general-purpose language) there is a better alternative than rewriting the program using the acceleratorspecific language. This alternative involves replacing parts of the code with calls to the accelerator API [9], [13]. By utilizing libraries that target the accelerator API, this ap-proach allows the compilation of old code, effectively using the accelerator without the need for extensive code rewriting.…”
Section: Programming Hardware Acceleratorsmentioning
confidence: 99%
“…• Constraint-based matching: Also known as patternbased matching, consists in finding constraints and patterns in the code that can be matched into a previously defined set of constraints [29]. Idiom Description Language (IDL) [13] proposed a description language that allows the user to define constraints for detecting particular idioms. Idioms are later translated into a set of constraints over the LLVM IR [19], which are used by the compiler to match the corresponding code.…”
Section: Code Detectionmentioning
confidence: 99%
See 1 more Smart Citation
“…Lift [64] specifies high-level algorithmic expressions that can be translated down to OpenCL implementations for different platforms. The Idiom Description Language (IDL) [54] describes idioms or patterns in programs so that legacy sequential codes can be optimized and targeted to use different optimized APIs and DSLs for linear algebra libraries, such as BLAS and stencil computation. Halide [65] is a DSL for writing image-processing pipelines that separates the concern of specifying computation and how the computation is performed (i.e., through tiling, vectorization, or parallelization).…”
Section: Related Workmentioning
confidence: 99%