Ph.D
Group : Parallel Architecture
Erbium: Reconciling languages, runtimes, compilation and optimizations for streaming applications
Starts on 01/10/1997
Advisor : COHEN, Albert
Funding : Bourse pour étudiant étranger
Affiliation : Université Paris-Saclay
Laboratory : INRIA alchemy
Defended on 11/02/2013, committee :
Albert Cohen, Directeur de recherche, École Normale Supérieure,
Directeur de Thèse
Alain Darte, Directeur de recherche, CNRS, Rapporteur
Marc Duranton, Directeur de recherche, CEA, Examinateur
Daniel Etiemble, Professeur, Univ. Paris Sud, Examinateur
Luciano Lavagno, Professeur, Politecnico du Torino, Rapporteur
Research activities :
Abstract :
As diminishing returns in single-thread performance and power
limitations hit the microprocessor industry, chip-multiprocessors became
ubiquitous. It brought old, difficult problems back into the software
equation. Compilers regain attention by being one of the critical
"puzzle pieces" in the quest for translating Moore's law into the
expected performance improvements, which cannot be achieved without
thread-level parallelism. Nevertheless, parallel systems research has
mainly focused on the language and architectural aspects, and much
potential remains to be explored to compile parallel programs, to
optimize them and to adapt them for the efficient exploitation of
parallel hardware.
This thesis addresses these problems by presenting Erbium, a low level
streaming data-flow language, supporting multiple producer and consumer
task communication; a very efficient runtime implementation for x86
architectures and variants to address other types of architectures; a
compiler integration of the language as an intermediate representation
in GCC; a study of the language primitives dependences, allowing
compilers to further optimise the Erbium code through specific parallel
optimisations as well as through generalized forms of classical compiler
optimisations, such as partial redundancy elimination and dead code
elimination.