English

Towards a Semantics-Aware Code Transformation Toolchain for Heterogeneous Systems

Programming Languages 2017-01-13 v1 Distributed, Parallel, and Cluster Computing Software Engineering

Abstract

Obtaining good performance when programming heterogeneous computing platforms poses significant challenges. We present a program transformation environment, implemented in Haskell, where architecture-agnostic scientific C code with semantic annotations is transformed into functionally equivalent code better suited for a given platform. The transformation steps are represented as rules that can be fired when certain syntactic and semantic conditions are fulfilled. These rules are not hard-wired into the rewriting engine: they are written in a C-like language and are automatically processed and incorporated into the rewriting engine. That makes it possible for end-users to add their own rules or to provide sets of rules that are adapted to certain specific domains or purposes.

Keywords

Cite

@article{arxiv.1701.03319,
  title  = {Towards a Semantics-Aware Code Transformation Toolchain for Heterogeneous Systems},
  author = {Salvador Tamarit and Julio Mariño and Guillermo Vigueras and Manuel Carro},
  journal= {arXiv preprint arXiv:1701.03319},
  year   = {2017}
}

Comments

In Proceedings PROLE 2016, arXiv:1701.03069. arXiv admin note: substantial text overlap with arXiv:1603.03011

R2 v1 2026-06-22T17:48:33.391Z