[HiPEAC-announce] update on some collaborative HiPEAC projects

Grigori Fursin grigori.fursin at inria.fr
Mon Nov 24 00:15:42 CET 2008


Dear HiPEAC colleagues,

Considering that we will have HiPEAC meetings in Paris the coming week, 
I would like to give you a brief update on a few collaborative projects
and software developments within HiPEAC clusters (common optimization
infrastructure, static multiversioning for adaptive applications,
collective optimization framework), that we plan to extend
(potentially within FP7) and where we look for some feedback.

However, if you are not interested in these topics, please skip this email!

******************************************************************
1) Common HiPEAC optimization infrastructure using GCC with 
the Interactive Compilation Interface (ICI):

One of the ideas behind the common optimization and simulation
infrastructure is to enable collaborative and replicable
research within HiPEAC. This year we have been using GCC with ICI 
within several projects (including MILEPOST) and got different feedback 
so I will have an expert engineer at INRIA working with me 
from the 1st of December to add the following new features to the ICI:

- port current ICI to GCC 4.4 (with GRAPHITE support) 
- support IPA pass selection and reordering
- provide dependencies between passes
- provide global/fine-grain cost model tuning
  (individual transformations)
- provide ability for code instrumentation 
  (adding external function calls, external libraries,
  adding data arrays for split-compilation, etc)
- port to GCC4CIL
- change machine description through ICI

IBM is working to add a new program feature extractor
within the MILEPOST project for GCC 4.4 (thanks to Mircea Namolaru 
for the implementation) which we hope to integrate within the 
future GCC ICI and MILEPOST GCC...

I would also like to thank colleagues from the HiPEAC Adaptive Cluster,
MILEPOST project and the University of Edinburgh (including Mike O'Boyle, 
Francois Bodin, Tim Jones, Christophe Dubach, Edwin Bonilla, John Thomson, 
Bjorn Franke) for interesting discussions and feedback.

If you are already using ICI and interested to have some other features,
please tell me so that we could decide if we will be able to implement that 
in the new version of ICI. Our goal is to release the new version with the
proper documentation at the beginning of 2009.

We also use GCC ICI within Collective Optimization Framework to enable optimization knowledge
reuse - this framework is being tested within the MILEPOST project now and will be released 
before HiPEAC'09 conference where we will have a presentation.
                
More information can be found here:
http://gcc-ici.sourceforge.net
http://cccpf.sourceforge.net
http://unidapt.org/software.html

******************************************************************
2) We are also extending our static multiversioning framework
for dynamic adaptation and optimization, and plan to add this framework
to the next GCC ICI (function cloning support with the ability to select 
different optimizations for the clones or compile for different ISA on 
heterogeneous systems).

The idea of this framework is to statically generate several clones of hot functions 
optimized for different cases (i.e. for different program behavior due to multiple 
inputs or due to resource sharing on multi-core systems) or compiled for different 
architectures (to run in heterogeneous, reconfigurable
and virtual environments) and then select them at run-time based on
monitoring of hardware counters or dataset features. These techniques
can be used to create adaptive binaries and libraries without complex 
dynamic recompilation frameworks (you can find more information in our 
publication in HiPEAC'05 proceedings).

I would like to thank colleagues from UPC and Imperial College to extend
this framework - we would like to extend it further within FP7 for reconfigurable 
and heterogeneous multi-core systems to improve performance, power consumption
and fault-tolerance - if someone is interested, I will be happy to discuss 
potential collaborations!..

More information is available here:
http://gcc.gnu.org/wiki/functionAdaptation

http://unidapt.sourceforge.net/

Looking forward to see you soon at the HiPEAC Computing Systems Week
and sorry for a long email,
Grigori

========================================
Grigori Fursin, PhD
INRIA Saclay, France
http://fursin.net/research




More information about the HiPEAC-announce mailing list