XFOR (Multifor): A New Programming Structure to Ease the Formulation of Efficient Loop Optimizations

Imen Fassi 1, 2
2 CAMUS - Compilation pour les Architectures MUlti-coeurS
Inria Nancy - Grand Est, ICube - Laboratoire des sciences de l'ingénieur, de l'informatique et de l'imagerie
Abstract : We propose a new programming structure named "XFOR" or "Multifor", dedicated to data-reuse aware programming. It allows to handle several for-loops simultaneously and map their respective iteration domains onto each other according to a running frequency the grain) and a relative position (the offset). Additionally, XFOR eases loop transformations application and composition. Experiments show that XFOR codes provides significant speed-ups when compared to the original code versions, but also to the Pluto optimized versions. We implemented the XFOR structure through the development of three software tools: (1) a source-to-source compiler named IBB for Iterate-But-Better!, which automatically translates any C/C++ code containing XFOR-loops into an equivalent code where XFOR-loops have been translated into for-loops. IBB takes also benefit of optimizations implemented in the polyhedral code generator CLooG which is invoked by IBB to generate for-loops from an OpenScop specification; (2) an XFOR programming environment named XFOR-WIZARD that assists the programmer in re-writing a program with classical for-loops into an equivalent but more efficient program using XFOR-loops; (3) a tool named XFORGEN, which automatically generates XFOR-loops from any OpenScop representation of transformed loop nests automatically generated by an automatic optimizer.
Document type :
Theses
Complete list of metadatas

Cited literature [66 references]  Display  Hide  Download

https://hal.inria.fr/tel-01251721
Contributor : Philippe Clauss <>
Submitted on : Wednesday, January 6, 2016 - 4:13:17 PM
Last modification on : Saturday, October 27, 2018 - 1:23:52 AM
Long-term archiving on : Thursday, April 7, 2016 - 4:08:10 PM

Identifiers

  • HAL Id : tel-01251721, version 1

Citation

Imen Fassi. XFOR (Multifor): A New Programming Structure to Ease the Formulation of Efficient Loop Optimizations. Computation and Language [cs.CL]. Université de Strasbourg, 2015. English. ⟨tel-01251721⟩

Share

Metrics

Record views

397

Files downloads

247