Grigori Fursin - Collective Mind Technology: towards collaborative, systematic and reproducible auto-tuning

12:00
Wednesday
16
Apr
2014
Organized by: 

Arnaud Legrand

Speaker: 

Grigori Fursin

Keywords: 

Grand Amphi

Empirical program and architecture tuning combined with run-time adaptation and machine learning has been demonstrating good potential to improve performance, power consumption and other important metrics of computer systems for more than a decade. However, it is still far from the widespread production use due to unbearably long exploration and training times, ever changing tools and their interfaces, lack of a common experimental methodology, and lack of unified mechanisms for knowledge building and exchange apart from publications where reproducibility of results is often not even considered.
 
In this talk, I will present public plugin-based Collective Mind infrastructure that attempts to systematize analysis and optimization of computer systems using crowdsourcing, extensible repository of knowledge, and machine learning. In this cooperative approach, multi-objective program and architecture tuning is transparently distributed among multiple users while connecting together and unifying existing techniques and tools, and utilizing any available mobile phones, cluster or cloud computer services for online learning. Gradually increasing optimization knowledge helps to continuously improve optimization heuristics of any compiler (currently focusing on GCC and LLVM), predict optimizations for new programs or suggest efficient run-time adaptation strategies depending on end-user requirements. Prototype of the framework and repository is available online at http://c-mind.org/repo with hundreds of shared codelets, numerical applications, data sets, models, universal experimental pipelines, and unified tools. It enables systematic, reproducible and collaborative R&D on auto-tuning and machine learning with a new publication model where experiments and techniques are validated and improved by the community.