Personal tools
You are here: Home The PIPS Team

The PIPS Team

Over the years, many persons and organisations across all continents have contributed to the PIPS project. This page lists current and past contributors.

The PIPS project is currently developed and/or sponsored at/by the following organizations:

Current contributors

  • Mehdi Amini (PhD student at MINES ParisTech/CRI & HPC Project) : induction variable substitution, use-def chains, dependence graph, Fortran 95 infrastructure, GPU code generation
  • Corinne Ancourt (researcher at Mines ParisTech/CRI): static analysis, code synthesis, communication synthesis, code modelization (OpenGPU project), linear (PIPS proof engine)
  • Christopher D. Carothers (researcher at RPI, Rensselaer Polytechnic Institute) : automatic generation of anti-functions into event-driven simulators
  • Fabien Coelho (researcher at Mines ParisTech/CRI): PIPS software development infrastructure, code generation and optimization for FPGA-based accelerator (FREIA project), PIPS database and resource management, HPF compiler
  • Béatrice Creusillet (HPC Project): responsible for memory effects analyses, array region analyses and array privatization in PIPS. I'm also interested in pointer and shape analyses and the integration of their results in  effects and array regions analyses.
  • Laurent Daverio (research engineer at Mines ParisTech/CRI): PIPS communication and WEB site, XML IO for Newgen
  • Serge Guelton (PhD student at TÉLÉCOM Bretagne & Mines ParisTech/CRI) : Python binding, SIMD code generation, Ter@pix code generation, outlining/inlinig, genetic compilation (FREIA Project)
  • Onil Goubier (HPC Project): Scilab to OpenMP & GPU compilation
  • Rachid Habel (PhD Student at Telecom SudParis):
  • François Irigoin (PIPS team leader at Mines ParisTech/CRI): mostly interested in automatic program proof, but also responsible for PIPS parsers and interested in effect modelization, pointer and shape analsyes; dependence testing, code synthesis, tiling and locality improvement,...  PhD student advisor: Amira, Mehdi, Serge and a few other ones; member of the FREIA and OpenGPU projects
  • Pierre Jouvelot (researcher at Mines ParisTech/CRI): effect analyses, type systems, design and development of Newgen, real-time language for music (Astree project, Faust language)
  • Dounia Khaldi (PhD student at Mines ParisTech/CRI):task parallelization
  • Ronan Keryell (Par4All leader at HPC Project & associated researcher at TÉLÉCOM Bretagne) : CUDA code generation, controlizer, Python and git evangelist in PIPS, Par4All infrastructure...
  • Vivien Maisonneuve: linear algebra, automatic invariant generation, transitive closure
  • Amira Mensi (PhD student at MINES ParisTech/CRI): C pointer and shape analyses
  • Alain Muller (PhD student at TELECOM SudParis): OpenMP to MPI compilation (STEP project)
  • François-Xavier Pasquier (HPC Project): optimization phases
  • Frédérique Silber-Chaussumier (researcher at TELECOM SudParis): OpenMP to MPI compilation (STEP project)
  • Pierre Villalon (HPC Project): OpenMP generation, benchmarking

Noticeable past contributors are numerous:

If you think we overlooked someone, please let us know :-)

  • Olivier Albiez
  • Bruno Baron: constant propagation
  • Denis Barthou: modelization of the parallelization process for constraint programming
  • Molka Becher (intern at MINES ParisTech/CRI): static modelization of the execution time and, possibly, some more memory effects of C intrinsics
  • Pierre Berthomier
  • Youcef Bouchebaba: locality improvement via tiling, scratchpad memory management
  • Éliott Coyac (TÉLÉCOM Bretagne internship): genetic algorithms for iterative compilation in PyPS
  • Ramzi Darmoul (intern at Mines ParisTech/CRI): parallelization of signal processing code (Faust Language, ASTREE project)
  • Son Pham Dinh
  • Benoît Dupont De Dinechin: integration of Paul Feautrier's techniques in PIPS
  • François Ferrand (2003-2004): SAC SIMD compilation
  • Johan Gall (engineer student at TÉLÉCOM Bretagne & intern at KDDI R&D Labs, 2008-2010) : XML/Xpath interface to internal representation
  • Matthieu Godet
  • Sylvain Guérin
  • Christophe Guettier: automatic parallelization and code optimization via constraint programming for signal processing code
  • Adrien Guinet (TÉLÉCOM Bretagne internship): automatic AVX/NEON code generation in PyPS
  • Khadija Imadoueddine (ESILV student, HPC Project, Intel & Mines ParisTech/Geosciences) : Fortran 95 scientific code parallelization
  • Prachi Kalra: complexity modelization
  • Jean François Lascoutx (ESILV student, HPC Project & //Geometry, 2009-2010) : loop instrumentation, parallelization of rendering software
  • Arnauld Leservot: extension of the Array dataFlow graph to the interprocedural case, union library in linear (Presburger arithmetic)
  • Clément Marguet (ESILV student, HPC Project, 2010) : code generation for SCMP architecture
  • Sebastien Martinez (intern at Telecom Bretagne)
  • Akhil Meshram: memory allocation in C parser
  • Nicolas Museux: automatic parallelization and code optimization via constraint programming for signal processing code
  • Nga Nguyen: array bound checking, alias analysis, detection of uninitialized variables, program instrumentation combining static and dynamic analysis to reduce the overhead
  • Guillaume Oget: tpips development
  • Grégoire Payen de La Garanderie (TÉLÉCOM Bretagne internship): improvement of pyps interface
  • Pragneshkumar Patel (LANL (US), HPC Project internship) : parallel-stage decoupled software pipelining
  • Frédéric Perrin (TÉLÉCOM Bretagne internship): automatic SSE code generation in PyPS
  • Loïc Plassart
  • Alexis Platonoff
  • Raphaël Roosz (ESILV student, intern at HPC Project, 2009) : Fortran 95 parser, parallelization information
  • Anh Trinh Quoc
  • Rémi Triolet: interprocedural parallelization; Remi launched the PIPS project in 1988, starting with the Fortran parser and ending with the A&K parallelizaiton algorithm
  • Maria Szymczak (Intern at MINES ParisTech/CRI): PIPS as a WEB service (window interface)
  • Nicky Williams-Preston: reverse engineering, code re-use
  • Yi-qing Yang: dependence testing, dependence abstractions
  • Lei Zhou: complexity modelization and estimation
  • Julien Zory: optimization of expression evaluation
  • Adarsh Yoga (University Bloomington, Indiana, MSc, HPC Project internship, 2010): compilation infrastructure scheme around PyPScc to insert PIPS into an existing build infrastructure

 

Other old collaborations

A team at CEA, led by Benoit de Dinechin, contributed several phases which implement techniques developed by Paul Feautrier (PRISM) for TMC CM-5 and Cray T-3D machines, as well as extensions of these techniques (see Polyhedral model). These external phases were easily blended within PIPS thanks to NewGen, which constraints the number of data structures used by programmers and provide a general framework for low-level classes (list, hash-table,...), and thanks to pipsmake which hides the intra- and inter-procedural chaining of analyses and transformations from the programmer as well as from the user.

Some other people contributed:

  • expression optimization for superscalar and VLIW architectures (Julien Zory)
  • analysis refinement to support automatic computation of module signatures (Olivier Albiez, Nicky Williams-Preston)
  • new effective encodings of sets of integer to support signal processing application better (Oliver Albiez)
  • compilation of signal processing specifications (Corinne Ancourt)

These objectives were defined with our industrial partners (CEA, EDF, SAGEM, Thomson-CSF, now Thales).

Some other institutions also contributed to PIPS:

  • RPI/CS (Rensselaer Polytechnic Institute)
Document Actions