Home Contact CV Research / Teaching Hobbies Social
CV Publications Skills M.S.Transcript

Curriculum Vitae

Name:

Grigori Fursin, Ph.D.

Current job:

Tenured Research Scientist at INRIA Saclay, France

Address:

INRIA Saclay, ZAC des Vignes,

3 rue Jean Rostand, 91893, Orsay, France

E-mail

Website:

grigori.fursin@inria.fr

http://fursin.net/research

Birthday:

At some point in 1977

Languages:

English, Russian, French (beginner)

 

Summary

My current research goal is to develop radically new practical techniques to overcome the complexity of current and future architectures, compilers, operating systems and programming environments. I am working on creating self-tuning intelligent adaptive systems, automating and improving architecture and compiler design (particularly for future heterogeneous multi-core systems), optimizing and parallelizing applications to improve performance, power consumption, size and fault-tolerance, reduce cost and time to market based on machine learning, artificial intelligence, statistical methods and biologically inspired techniques. I believe that this is critical to be able to continue innovation in science and industry (bioinformatics, medicine, physics, chemistry, finances, gaming, etc).

In my spare time, I enjoy thinking about emerging technologies and innovative intelligent systems in IT, AI, biotechnology and other areas, and interested in the knowledge transfer, consulting and startups. In my leisure time, I enjoy traveling, playing football, learning new languages, learning to play guitar and participating in community activities. More information about my research activities is available at http://fursin.net/research .

Current job and education:

·       2007 - current:   Tenured research scientist and UNIDAPT Group leader (http://unidapt.org) at INRIA Saclay, France

·       2005 - 2007:      Postdoctoral researcher at INRIA Futurs, France

·       1999 - 2004:      Ph.D. from the University of Edinburgh, UK

·       1993 - 1999:      B.S & M.S. from MIPT, Russia

Recent professional activities:

·       SMART'09,08,07 Organizer and PC member            GROW'09 PC member

·       IPDPS'08 PC member    CASES'07 PC member       HiPEAC GCC Tutorial'07 organizer

Recent collaborations:

·        IBM, ARC, CAPS Enterprise, STMicro, NXP, Thales, ARM

·        University of Edinburgh (UK), Imperial College (UK), UPC (Spain), ICT (China), UIUC (USA), Ghent University (Belgium)

Teaching:

·        2008/2009: M2R Course organizer (Future Computing Systems) at LRI, Paris South University, France and teaching part of the course on adaptive self-tuning systems

Current research projects and software development:

·        MILEPOST GCC - the first machine learning based self-tuning research compiler with the Interactive Compilation Interface that uses intelligent search techniques and predictive modeling to find best program optimizations and architectural designs

·        MiDataSets - analysis of the influence of multiple datasets on program performance, optimization and benchmarking

·        UNIDAPT - practical run-time adaptation for statically-compiled programs

·        Continuous Collective Compilation framework - global optimization knowledge reuse from multiple users (combined with all the above techniques)

 

Objectives

Current innovations in science and industry demand ever-increasing computing resources while placing strict requirements on system performance, power consumption, size, response, reliability, portability and design time. Both embedded and large-scale systems tend to evolve toward complex heterogeneous multi-chip systems with dramatically increased design, test and optimization time. Optimizing compilers play a key role in producing executable codes quickly and automatically while satisfying all the above requirements for a broad range of programs and architectures. However, for many years, state-of-the-art compilers fail to deliver satisfactory levels of performance on new systems due to necessarily simplistic hardware models, fixed and black-box optimization heuristics, inability to tune application at fine-grain level, highly dynamic behavior of the system and inability to adapt to varying program and system behavior at run time with low overhead. This suggests that current system design and program optimization technologies are reaching their limits and should be revisited to keep pace with rapidly evolving hardware.

During my Ph.D. at the University of Edinburgh (1999-2004), I had been working with Prof. Michael O'Boyle to introduce iterative compilation at a fine-grain level (function, loop or instruction) to automatically find best optimization settings for large applications (rather than kernels) on rapidly evolving architectures that beat state-of-the art optimizing compilers.

I had also been working with Prof. Olivier Temam to develop a fast and accurate technique to determine lower bound of the execution time of memory intensive applications by replacing all array accesses with scalars to have a stopping criterion for iterative compilation.

In 2004-2005, we developed a new concept to enable continuous run-time optimization and adaptation for statically compiled programs and to speed up iterative compilation by 3 orders of magnitude using a run-time low-overhead program phase detection scheme and function versioning. At the same time, I started developing an Interactive Compilation Interface (ICI) for Open64/PathScale compilers and GCC to create self-tuning intelligent compilers and systems.

We also developed a novel technique to characterize programs or architectures using program reaction to optimizations (transformations). I had been collaborating with my colleagues from the University of Edinburgh, UK to introduce this technique as well as statistical search and machine learning to enable optimization knowledge reuse among different programs and architectures using static and dynamic program and architecture features.

I currently work as a tenured research scientist at INRIA Saclay, France and use my research results in several EU-funded projects (HiPEAC, MilePost, SARC, GGCC and others) to move towards my long-term goal to develop and generalize automatic continuous program optimization and parallelization techniques and architecture design exploration using innovative search methods, adaptation, machine learning and knowledge reuse. This should enable realistic intelligent self-tuning systems, particularly in the presence of rapidly evolving multi-core heterogeneous architectures.

I am developing publicly available software tools for GCC and Open64 compilers. I collaborate with my colleagues from the University of Edinburgh, INRIA, Ghent University, ICT, IBM, ARC, CAPS Enterprise, NXP, STMicro and others, and open to new contacts, collaborations and proposals to realize these goals.

In my spare time, I enjoy thinking about emerging technologies and innovative intelligent systems in IT, AI, biotechnology and other areas, and interested in the knowledge transfer, consulting and startups. In my leisure time, I enjoy traveling, playing football, learning new languages, learning to play guitar and participating in community activities.

More information about my research projects is available online:

http://fursin.net/research


 

Professional experience

09/2007-current

-

Tenured research scientist and UNIDAPT Group founder (http://unidapt.org) at INRIA Saclay, France. I work on continuous collective optimizations, iterative compilation, run-time program adaptation, machine learning (predictive modeling and reinforcement learning), auto-parallelization, architecture design space exploration, hardware/software co-design, performance prediction and low power optimization techniques.

I use my research results in several EU-funded projects (HiPEAC, MILEPOST, OMP, SARC, GGCC and others) to move towards my long-term goal to develop and generalize automatic continuous program optimization and parallelization techniques and architecture design exploration using innovative search methods, adaptation, machine learning and knowledge reuse. This should enable realistic intelligent self-tuning systems, particularly in the presence of rapidly evolving multi-core heterogeneous architectures.

I am developing publicly available software tools for GCC and Open64 compilers. I collaborate with my colleagues from the University of Edinburgh, INRIA, Ghent University, ICT, IBM, ARC, CAPS Enterprise, NXP, STMicro and others, and open to new contacts and proposals to realize these goals.

12/2005-08/2007

-

Postdoctoral researcher in the Alchemy group at INRIA Futurs, France. I had been working with Prof. Olivier Temam to develop a new concept to enable continuous run-time optimization and adaptation for statically compiled programs and to speed up iterative compilation by 3 orders of magnitude using a run-time low-overhead program phase detection scheme and function versioning. At the same time, I started developing an Interactive Compilation Interface (ICI) for Open64/PathScale compilers and GCC to create self-tuning intelligent compilers and systems.

We also developed a novel technique to characterize programs or architectures using program reaction to optimizations (transformations). I had been collaborating with my colleagues from the University of Edinburgh, UK to introduce this technique as well as statistical search and machine learning to enable optimization knowledge reuse among different programs and architectures using static and dynamic program and architecture features.

These techniques are currently used in several EU-funded projects to introduce novel search techniques and machine learning to automatic program optimization and architecture design exploration (in collaboration with the University of Edinburgh, INRIA, Ghent University, ICT, IBM, ARC, CAPS Enterprise, NXP,  STMicro and others).

01/2002-11/2005

-

Research associate at the Institute for Computing Systems Architecture, University of Edinburgh, UK. I had been working with Prof. Michael O'Boyle to introduce iterative compilation at a fine-grain level (function, loop or instruction) to automatically find best optimization settings for large applications (rather than kernels) on rapidly evolving architectures that beat state-of-the art optimizing compilers. I had also been working with Prof. Olivier Temam to develop a fast and accurate technique to determine lower bound of the execution time of memory intensive applications by replacing all array accesses with scalars to have a stopping criterion for iterative compilation.

02/2000-03/2000

-

Visiting researcher at Paris-Sud XI University, France. I had been working in the Alchemy group with Prof. Olivier Temam to develop a fast and accurate technique to predict lower bound of the execution time of memory intensive applications by replacing all array accesses with scalars to have a stopping criterion for iterative compilation.

02/1999-12/2001

-

Research assistant at the University of Edinburgh, UK in the European Project "MHAOTEU" (Memory Hierarchy Analysis and Optimization Tools for the End-User). I had been developing iterative optimization techniques for memory intensive applications.

09/1998-01/1999

-

Programmer at the Laboratory for Computer Technologies in Teaching at Moscow Institute of Physics and Technology, Russia. I had been developing software and DSP boards to be used in Electronics Labs to teach undergraduate and postgraduate students.

02/1998-01/1999

-

Research assistant at the Institute for High-Performance Computing in the Russian Academy of Sciences in the project "Remote access to high-performance computer systems through the Internet". I had been developing a portable software system to enable remote access to heterogeneous high-performance computers as an Internet service and to dynamically manage/balance their resources.

01/1994-06/1994

-

Research assistant at Moscow Institute of Physics and Technology, Russia in the project "Computer simulation of non-linear wave processes in gaseous streams". I had been developing simulation and visualization software.

 


 

Education

2008

-

Attended ACACES'2008 - International Summer School on Advanced Computer Architecture and Compilation for Embedded Systems (with courses by Josep Torrellas, Dean Tulsen, Babak Falsafi and Christos Kozyrakis).

2006

-

Attended ACACES'2006 - International Summer School on Advanced Computer Architecture and Compilation for Embedded Systems (with courses by Wen-mei Hwu, David Padua, David Whalley and Michael Hind).

2005

-

Attended ACACES'2005 - First International Summer School on Advanced Computer Architecture and Compilation for Embedded Systems (with courses by Josh Fisher, Ayal Zaks, Trevor Mudge and Rajiv Gupta).

1999-2004

-

Received Ph.D. degree from the University of Edinburgh, UK (computer science, advisor: Prof. Michael O'Boyle, thesis title - "Iterative Compilation and Performance Prediction for Numerical Applications").

We introduced iterative compilation at a fine-grain level (function, loop or instruction) to automatically find best optimization settings for large applications (rather than kernels) on rapidly evolving architectures that beat state-of-the art optimizing compilers. We also developed a fast and accurate technique to determine lower bound of the execution time of memory intensive applications by replacing all array accesses with scalars to have a stopping criterion for iterative compilation.

These techniques are currently used in several EU-funded projects to introduce novel search techniques and machine learning to automatic program optimization and architecture design exploration (in collaboration with the University of Edinburgh, INRIA, Ghent University, ICT, IBM, ARC, CAPS Enterprise, NXP,  STMicro and others).

1997-1999

-

Received M.S. degree with medal from Moscow Institute of Physics & Technology, Russia (High-Performance Computing, GPA=4.00/4.00). I had been developing a portable software system to enable remote access to heterogeneous high-performance computers as an Internet service and to dynamically manage/balance their resources.

1996-1999

-

Had a research practice at the Institute for High-Performance Computer Systems of Russian Academy of Sciences.

1993-1997

-

Received B.S. degree with highest honors (summa cum laude) from Moscow Institute of Physics & Technology, Russia (Department of Physical & Quantum Electronics, GPA=3.98/4.00).

1990-1993

-

Finished Moscow Physical & Technical College, Russia (GPA=4.00/4.00).

1983-1993

-

Finished Moscow Secondary School, Russia with medal.

 


 

 

Professional activities (serving on PCs, organizing workshops, conferences and tutorials)

2009

-

SMART'09: Organizer and PC member (3rd  Workshop on Statistical and Machine Learning Approaches applied to Architectures and Compilation)

 

-

GROW'09: PC member (1st International Workshop on GCC Research Opportunities)

2008

-

IPDPS'08: PC member (IEEE International Parallel and Distributed Processing Symposium)

 

-

SMART'08: PC member (2nd Workshop on Statistical and Machine Learning Approaches applied to Architectures and Compilation)

2007

-

CASES'07: PC member (International Conference on Compilers, Architecture, and Synthesis for Embedded Systems)

 

-

2nd HiPEAC GCC Tutorial: organizer (http://www.hipeac.net/gcc-tutorial)

 

-

SMART'07: chair and organizer (1st Workshop on Statistical and Machine Learning Approaches applied to Architectures and Compilation http://www.hipeac.net/smart-workshop.html).

In recent years, machine learning and statistical search techniques have shown a great potential in constructing compilers and architectures.  Therefore, we decided to organize this workshop to promote new ideas and to present recent developments in compiler and architecture design using machine learning, statistical approaches, and search in order to enhance their performance, scalability, and adaptability.

2001

-

CPC'01: local organizer (9th Workshop on Compilers for Parallel Computers)

 

 

Professional activities (teaching)

2008/2009

-

Future Computing Systems - M2R Course organizer and teaching part of the course on adaptive self-tuning systems (LRI, Paris South University, France)

2007/2008

-

Continuous adaptive iterative compilation and machine learning techniques (part of the postgraduate course at LRI, Paris South University, France)

2006/2007

-

Continuous adaptive iterative compilation and machine learning techniques (part of the postgraduate course at LRI, Paris South University, France)

2005/2006

-

Adaptive and feedback driven compilation

(part of the postgraduate course at LRI, Paris South University, France)

 


 

Professional activities (advising)

2008

-

Advising Abid Malik (postdoc at INRIA, France working on the MILEPOST project) to improve GCC ICI, add support for fine-grain optimizations such as vectorization, scheduling, register allocation, etc and substitute default GCC optimization heuristic with the automatically learnt one using machine learning and statistical techniques.

2007

-

Advised Victor Jimenez (Ph.D. student at UPC, Barcelona) to develop automatic run-time adaptation techniques for heterogeneous computing systems with multiple ISA.

2006 - cur

-

Advising Piotr Lesnicki (Ph.D. student at Paris-South University, France) to develop automatic adaptive staged compilation techniques (Java and .NET) on multi-core embedded systems.

2006

-

Advised Hamid Daoud (M.S. student at Paris-South University, France) to tune GCC optimization heuristic using machine learning techniques available in WEKA and using GCC ICI (Interactive Compilation Interface).

 

-

Advised Cupertino Miranda (engineer at INRIA, France) to implement Interactive Compilation Interface and a plug-in system for GCC to enable research on program iterative optimizations, and to implement run-time adaptation technique for statically compiled programs with varying context.

2003-2004

-

Advised Edwin Bonilla (M.S. student at the University of Edinburgh, UK) to perform iterative optimizations experiments on the loop level for his M.S. thesis "Predicting Good Compiler Transformations Using Machine Learning"

 

Professional activities (reviewing)

Conferences & workshops: CGO, PACT, CASES, ICS, DATES, HiPEAC, CPC, IJHPSA

 

Professional activities (memberships)

·       ACM member (SIGARCH - Special Interest Group on Computer Architecture)

·       IEEE member (Computer Society)

 

Professional activities (collaborations)

·      IBM

·      ARC

·      CAPS Enterprise

·      AMD

·      STMicro

·      NXP (Philips)

·      ARM

·      University of Edinburgh, UK

·      Imperial College, UK

·      INRIA, France

·      UPC, Spain

·      UIUC, USA

·      Ghent University, Belgium

·      ICT, China

 


 

Major R&D projects

2006-cur

-

 

MILEPOST GCC: Together with my colleagues from the MILEPOST consortium, we am leading the development of the first machine learning based intelligent compiler.  Tuning hardwired compiler optimizations for rapidly evolving hardware makes porting an optimizing compiler for each new platform extremely challenging. Our radical approach is to develop a modular, extensible, self-tuning intelligent compiler that automatically learns the best optimization heuristics based on combining feedback-directed iterative compilation and machine learning (predictive modeling). MILEPOST GCC automatically adjusts its optimization heuristics to improve execution time, code size, or compilation time of specific programs on different architectures. It can be used interactively in research on adaptive computing through the Interactive Compilation Interface (GCC ICI).

Website: http://unidapt.org/software.html#milepostgcc

Major papers: GCC Summit'08, CGO'06

MiDataSets: Together with Prof. Olivier Temam, we decided to prepare multiple datasets for embedded benchmarks to enable research on realistic program optimization, run-time adaptation and benchmarking.

Website: http://unidapt.org/software.html#midatasets

Major papers: HiPEAC'09, GCC Summit'08, HiPEAC'07

2005-cur

-

GCC-ICI: At the end of my PhD study, I started developing an Interactive Compilation Interface (ICI) and a plug-in system for GCC in collaboration with IBM, the University of Edinburgh, CAPS Enterprise, ARC and others. The main purpose is to enable a systematic research on fine-grain program optimizations and to develop self-learning intelligent compilers and self-tuning programs for rapidly evolving hardware.

Website: http://unidapt.org/software.html#ici

Major papers: GCC Summit'08

2004-cur

-

UNIDAPT: During my postdoctoral training in the Alchemy group at INRIA Futurs (France) I had been working with Prof. Olivier Temam to develop a new concept to enable continuous run-time optimization and adaptation for statically compiled programs (self-tuning static binaries adaptable to changes in program inputs, program phases and execution environments at run-time) and to speed up iterative compilation by 3 orders of magnitude (iterative search for different optimization cases). In this technique we statically produce multiple versions of hot functions, apply combinations of aggressive optimizations for different optimization cases (performance/power/fault-tolerance etc) and then use a run-time low-overhead program phase detection scheme based on monitoring of hardware counters to learn program behavior, associate it with different versions of functions (different optimizations), and then react to changes in program run-time behavior based on this association table. Preserving this table across runs enables continuous adaptation of static binaries. We currently develop this technique in GCC, extend it to enable adaptation on multi-core heterogeneous systems and use it in several projects in collaboration with UPC, IBM, CAPS Enterprise, STMicro and others.

Website: http://unidapt.org/software.html#unidapt

Major papers: HiPEAC'09, CGO'07, GCC Summit'07, NPC'07, HiPEAC'05

 

 

-

CCC: I am developing a Continuous Collective Compilation (and Parallelization) framework (currently for GCC and PathScale/Open64 compilers) to enable continuous program and architecture optimization knowledge reuse based on MILEPOST GCC, ICI, UNIDAPT, MiDataSets. We developed a new technique to characterize programs or architectures using program reaction to optimizations (transformations) to be able to learn good optimizations across heterogeneous environments. We use UNIDAPT technique to create self-tuning static binaries adaptable to changing inputs and environments at run-time without even a need for a reference run to detect the influence of optimizations by combining static function multi-versioning and dynamic optimization selection. This framework is currently used in several research projects and will be publicly available in the near future.

Website: http://unidapt.org/software.html#ccc

Major papers: HiPEAC'09, GCC Summit'08, CASES'06, HiPEAC'05

 

-

Open64-ICI: I started developing an Interactive Compilation Interface (ICI) and continuous optimization framework for PathScale/Open64 compilers to enable automatic fine-grain program optimizations. It is currently used in a collaborative project with the ICT, China.

Website: http://open64-ici.sourceforge.net

Major papers: HiPEAC'05

1999-2004

-

I had been developing an iterative compilation framework to automatically optimize memory intensive applications within EU project MHAOTEU (Memory Hierarchy Analysis and Optimization Tools for the End-User). This software had later been used in several M.S. and Ph.D. projects at the University of Edinburgh, UK.

1998-1999

-

I had been developing a portable software system to enable simple remote access to heterogeneous high-performance computers as an Internet service in the Russian Academy of Sciences.

1996-1998

-

I had been developing a system to measure characteristics of semiconductor devices that involved designing and implementing a special DSP board and developing a communication and client software. This system is still used  in the Electronics Labs of the Moscow Institute of Physics and Technology, Russia to teach undergraduate and postgraduate students.

1994

-

I had been developing a simulation and visualization software in the research project "Computer simulation of non-linear wave processes in gaseous streams" at Moscow Institute of Physics and Technology (Russia).


 

Awards, grants and funding

2008-cur

-

HiPEAC grant for the project "Context-aware optimization and run-time adaptation of sequential libraries for multi-core systems" - principal investigator

2007-cur

-

EU funding through the MILEPOST project (machine learning for embedded programs optimization)

2006-cur

-

EU funding through the SARC project (scalable computer architecture)

2006-2007

-

HiPEAC grant for the project "Exploring optimization techniques and runtime code selection mechanisms for heterogeneous systems" - principal investigator

2005-2006

-

HiPEAC Postdoctoral research grant to collaborate with the Alchemy group at INRIA Futurs, France

1999,2000

-

ORS award (UK Scholarship for International Research Students)

1999

-

Golden medal for M.S. studies from Moscow Institute of Physics & Technology (Russia)

1997

-

International George Soros award "In recognition and appreciation of outstanding achievements in the study of science at the university level"

1996-1998

-

Research grants from International Soros Science Education Program

1993

-

Medal for secondary school

 

 

References

Prof. Olivier Temam,

INRIA Saclay, Parc Club Orsay Université,

ZAC des vignes, 3, rue Jacques Monod - Bât G,

91893-ORSAY Cedex, France

 

Prof. François Bodin,

IRISA, Campus de Beaulieu,

35042 Rennes Cedex, France

 

Prof. Michael O'Boyle,

ICSA, School of Informatics, JCMB,

Mayfield Road, Edinburgh, EH9 3JZ, Scotland, UK

 

Dr. Marco Cornero

STMicroelectronics, Advanced System Technology,

Director. In charge of Compilers, Operating Systems and Applications, within the Advanced Systems Technology group of STMicroelectronics.

 


 

 

Publications

-    Grigori Fursin and Olivier Temam. Collective optimization. To appear at the International Conference on High Performance Embedded Architectures & Compilers (HiPEAC 2009), Paphos, Cyprus, January 2009

-    Victor Jimenez, Isaac Gelado, Lluis Vilanova, Marisa Gil, Grigori Fursin and Nacho Navarro. Predictive runtime code scheduling for heterogeneous architectures. To appear at the International Conference on High Performance Embedded Architectures & Compilers (HiPEAC 2009), Paphos, Cyprus, January 2009

-    Grigori Fursin, Cupertino Miranda, Olivier Temam, Mircea Namolaru, Elad Yom-Tov, Ayal Zaks, Bilha Mendelson, Phil Barnard, Elton Ashton, Eric Courtois, Francois Bodin, Edwin Bonilla, John Thomson, Hugh Leather, Chris Williams, Michael O'Boyle. MILEPOST GCC: machine learning based research compiler. Proceedings of the GCC Developers' Summit, Ottawa, Canada, June 2008

     [bib]     [pdf]

-    Veerle Desmet, Grigori Fursin, Sylvain Girbal and Olivier Temam. Leveraging Modular Simulation for Systematic Design Space Exploration. 4th HiPEAC Industrial Workshop on Compilers and Architectures organized by ARM Ltd., Cambridge, UK, November 2007

     [bib]

-    Piotr Lesnicki, Albert Cohen, Grigori Fursin, Marco Cornero, Andrea Ornstein and Erven Rohou. Split Compilation: an Application to Just-in-Time Vectorization. International Workshop on GCC for Research in Embedded and Parallel Systems (GREPS'07) in conjunction with PACT'07, Brasov, Romania, September 2007

     [bib]     [pdf]     [pdf backup]

-    Shun Long, Grigori Fursin, Björn Franke. A Cost-Aware Parallel Workload Allocation Approach based on Machine Learning Techniques. Proceedings of the IFIP International Conference on Network and Parallel Computing (NPC 2007), LNCS-4672, pages 506-515, Dalian, China, September 2007

     [bib]     [pdf]

-    Grigori Fursin, Cupertino Miranda, Sebastian Pop, Albert Cohen and Olivier Temam. Practical Run-time Adaptation with Procedure Cloning to Enable Continuous Collective Compilation. Proceedings of the GCC Developers' Summit, Ottawa, Canada, July 2007

     [bib]     [pdf]

-    Christophe Dubach, John Cavazos, Björn Franke, Grigori Fursin, Michael O'Boyle and Oliver Temam. Enabling fast compiler optimization evaluation via code-features based performance predictor. Proceedings of the ACM International Conference on Computing Frontiers, Ischia, Italy, May 2007

[bib]     [pdf]

-    John Cavazos, Grigori Fursin, Felix Agakov, Edwin Bonilla, Michael F.P.O'Boyle and Olivier Temam. Rapidly Selecting Good Compiler Optimizations using Performance Counters. Proceedings of the 5th  Annual International Symposium on Code Generation and Optimization (CGO), San Jose, USA, March 2007

[bib]     [pdf]

-    Grigori Fursin and Albert Cohen. Building a Practical Iterative Interactive Compiler. 1st International Workshop on Statistical and Machine Learning Approaches Applied to Architectures and Compilation (SMART'07), Ghent, Belgium, January 2007

[bib]     [pdf]

-    Grigori Fursin, John Cavazos, Michael O'Boyle and Olivier Temam. MiDataSets: Creating The Conditions For A More Realistic Evaluation of Iterative Optimization. Proceedings of the International Conference on High Performance Embedded Architectures & Compilers (HiPEAC 2007), Ghent, Belgium, January 2007

[bib]     [pdf]

-    John Cavazos, Christophe Dubach, Felix Agakov, Edwin Bonilla, Michael F.P. O'Boyle, Grigori Fursin and Olivier Temam. Automatic Performance Model Construction for the Fast Software Exploration of New Hardware Designs. Proceedings of the International Conference on Compilers, Architecture, And Synthesis For Embedded Systems (CASES 2006), Seoul, Korea, October 2006

(finalist best paper award)

[bib]     [pdf]

-    Grigori Fursin, Albert Cohen, Michael O'Boyle and Oliver Temam. Quick and practical run-time evaluation of multiple program optimizations. Transactions on High-Performance Embedded Architectures and Compilers, 1(1), pages 13-31, 2006

     [bib]     [pdf]     [pdf  backup]

-    Shun Long and Grigori Fursin. Systematic search within an optimisation space based on Unified Transformation Framework. Accepted for publication in the special issue of the International Journal of Computational Science and Engineering (IJCSE)

     [bib]     [pdf]

-    F. Agakov, E. Bonilla, J. Cavazos, B. Franke, G. Fursin, M.F.P. O'Boyle, J. Thomson, M. Toussaint and C.K.I. Williams. Using Machine Learning to Focus Iterative Optimization. Proceedings of the 4th  Annual International Symposium on Code Generation and Optimization (CGO), New York, NY, USA, March 2006

(best presentation award)

[bib]     [pdf]

-    Grigori Fursin, Albert Cohen, Michael O'Boyle and Oliver Temam. A Practical Method For Quickly Evaluating Program Optimizations. Proceedings of the 1st International Conference on High Performance Embedded Architectures & Compilers (HiPEAC 2005), number 3793 in LNCS, pages 29-46, Barcelona, Spain, November 2005

(highest ranked paper, acceptance rate=18%)

[bib]     [pdf]     [pdf  backup]

-    B. Franke, M. O'Boyle, J. Thomson and G. Fursin. Probabilistic Source-Level Optimisation of Embedded Systems Software. Proceedings of the Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES'05), pages 78-86, Chicago, IL, USA, June 2005

[bib]     [pdf]

-    Shun Long and Grigori Fursin. A heuristic search algorithm based on Unified Transformation Framework. Proceedings of the 7th International Workshop on High Performance Scientific and Engineering Computing (HPSEC-05), pages 137-144, Oslo, Norway, June 2005

     [bib]     [pdf]

-    Grigori Fursin, Mike O'Boyle, Olivier Temam, and Gregory Watts. Fast and Accurate Method for Determining a Lower Bound on Execution Time. Concurrency Practice and Experience, 16(2-3), pages 271-292, 2004

     [bib]     [pdf]

-    G.G.Fursin, M.F.P.O'Boyle, and P.M.W. Knijnenburg. Evaluating Iterative Compilation. Proceedings of the 15th Workshop on Languages and Compilers for Parallel Computing (LCPC'02), College Park, MD, USA, pages 305-315, 2002

     [bib]     [pdf]

-    Grigori Fursin, Mike O'Boyle, Olivier Temam, and Gregory Watts. Fast and Accurate Evaluation of Memory Performance Upper-Bound. Proceedings of the 9th Workshop on Compilers for Parallel Computers (CPC'2001), pages 163-172, Edinburgh, UK, 2001

-    Abella, J., S. A. Ali Touati, A. Anderson, C. Ciuraneta, J. M. Codina, Min Dai,    C. Eisenbeis, G. Fursin, A. Gonzalez, J. Llosa, M. O'Boyle, A. Randrianatoavina,   J. Sanchez, O. Temam, X. Vera, and G. Watts. MHAOTEU Tools for Memory Hierarchy Management. IMACS'2000, 16th IMACS World Congress on Scientific Computation, Applied Mathematics and Simulation, Lausanne, Switzerland, August 2000

[bib]     [pdf]

 


 

Ph.D. thesis

-    Grigori Fursin. Iterative Compilation and Performance Prediction for Numerical Applications. Ph.D. thesis, University of Edinburgh, Edinburgh, UK, January 2004

[bib]     [pdf]     [pdf  backup]

 

Miscellaneous talks (other than conferences)

-       "Enabling Dynamic Optimization and Adaptation for Statically Compiled Programs Using Function Multi-Versioning"

Presented at ScalPerf'08 (Scalable Approaches to High Performance and High Productivity Computing), Bertinoro, Italy, September 2008

-       "Continuous adaptive program optimizations"

Presented at Reservoir Labs and IBM TJ Watson Research Center, New York, USA, August 2008

Presented at Imperial College (Software Performance Engineering Laboratory), London, UK, February 2008

Presented at the Institute of Computing Technology (Chinese Academy of Sciences), Beijing, China, January 2008

-       "Program iterative continuous optimizations, run-time adaptation and machine learning"

Presented at IBM Toronto Lab (compiler group), Canada, July 2007

[ppt]

-       "Machine learning techniques for iterative program optimizations and run-time adaptation"

Presented for TAO group (machine learning group), LRI, Paris-Sud XI University, INRIA & CNRS, France, June 2007

-   "Overview of current activities: Interactive Compilation Interface for fine-grain program optimizations, dataset sensitivity, machine learning to speed up optimizations and DSE, run-time program adaptation, optimizations for heterogeneous computing systems, continuous collective optimizations, HiPEAC activities"

Presented at Intel (compiler group), Moscow, Russia, February 2007

     Presented at the ISP RAS (Institute for System Programming, Russian Academy of Sciences), Moscow, Russia, February 2007

-   "Continuous run-time adaptation and optimization of statically compiled programs"

     Presented at the UPC, Barcelona, Spain, January 2007

     [ppt]

-   "Towards continuous collective compilation"

Presented at the ICSA seminar, University of Edinburgh, UK, December 2006

-   "Continuous adaptive run-time optimizations for scientific applications" and

-   "Using machine learning for compiler optimizations"

Presented at the IBM Thomas J. Watson Research Center, Yorktown Heights, NY, USA, March 2006

-   "Continuous collective compilation for the MilePost project (Machine Learning Techniques for Adaptive Optimization)"

Presented at the MilePost EC negotiation meeting, European Commission, Brussels, March 2006

-   "A practical method for quickly evaluating program optimizations"

Presented at the ICSA seminar, University of Edinburgh, UK, December 2005

-   "Advanced iterative compilation and performance prediction for scientific applications"

Presented at the LRI, Paris-Sud XI University, France, April 2003


 

Technical reports and miscellaneous

-    Grigori Fursin, Mike O'Boyle, Olivier Temam, and Gregory Watts. A Fast and Accurate Evaluation of a Memory Performance Upper-Bound. Report for the MHAOTEU ESPRIT project No 24942, February, 2001

-    Jaume Abella, Cédric Bastoul, Jean-Luc Béchennec, Nathalie Drach, Christine Eisenbeis, Paul Feautrier, Björn Franke, Grigori Fursin, Antonio Gonzalez, Toru Kisku, Peter Knijnenburg, Josep Llosa, Michael O'Boyle, Julien Sébot, and Xavier Vera.