Building Source-to-Source Compilers for Heterogeneous Targets

Serge Guelton
Computer Science dept., Telecom Bretagne
Telecom ParisTech., 2011


   title={Building Source-to-Source Compilers for Heterogeneous Targets},

   author={Guelton, Serge},



Download Download (PDF)   View View   Source Source   



Heterogeneous computers – platforms that make use of multiple specialized devices to achieve high throughput or low energy consumption – are difficult to program. Hardware vendors usually provide compilers from a C dialect to their machines, but complete application rewriting is frequently required to take advantage of them. In this thesis, we propose a new approach to building bridges between regular applications written in C and these dialects. From an analysis of the hardware constraints, we propose original code transformations that can meet those constraints, and we combine them using a completely programmable pass manager that can handle the complex compilation flows required by the code generation process for multiple targets. It makes it possible to build a collection of compiler based on the same infrastructure while targeting different architectures. All the code transformations are done at the source level using the PIPS source-to-source compiler framework. New transformations are detailed using denotational semantics on a simplified language and have been combined to build four different compilers : an OpenMP directive generator, a retargetable multimedia instruction generator for SSE, AVX and Neon, an assembly code generator for an FPGA-based image processor and a CUDA generator.
No votes yet.
Please wait...

* * *

* * *

* * *

HGPU group © 2010-2022 hgpu.org

All rights belong to the respective authors

Contact us: