Collective Mind: cleaning up the research and experimentation mess in computer engineering using crowdsourcing, big data and machine learning

08/11/2013
by   Grigori Fursin, et al.
0

Software and hardware co-design and optimization of HPC systems has become intolerably complex, ad-hoc, time consuming and error prone due to enormous number of available design and optimization choices, complex interactions between all software and hardware components, and multiple strict requirements placed on performance, power consumption, size, reliability and cost. We present our novel long-term holistic and practical solution to this problem based on customizable, plugin-based, schema-free, heterogeneous, open-source Collective Mind repository and infrastructure with unified web interfaces and on-line advise system. This collaborative framework distributes analysis and multi-objective off-line and on-line auto-tuning of computer systems among many participants while utilizing any available smart phone, tablet, laptop, cluster or data center, and continuously observing, classifying and modeling their realistic behavior. Any unexpected behavior is analyzed using shared data mining and predictive modeling plugins or exposed to the community at cTuning.org for collaborative explanation, top-down complexity reduction, incremental problem decomposition and detection of correlating program, architecture or run-time properties (features). Gradually increasing optimization knowledge helps to continuously improve optimization heuristics of any compiler, predict optimizations for new programs or suggest efficient run-time (online) tuning and adaptation strategies depending on end-user requirements. We decided to share all our past research artifacts including hundreds of codelets, numerical applications, data sets, models, universal experimental analysis and auto-tuning pipelines, self-tuning machine learning based meta compiler, and unified statistical analysis and machine learning plugins in a public repository to initiate systematic, reproducible and collaborative research, development and experimentation with a new publication model where experiments and techniques are validated, ranked and improved by the community.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/19/2018

A Collective Knowledge workflow for collaborative research into multi-objective autotuning and machine learning techniques

Developing efficient software and hardware has never been harder whether...
research
06/12/2020

The Collective Knowledge project: making ML models more portable and reproducible with open APIs, reusable best practices and MLOps

This article provides an overview of the Collective Knowledge technology...
research
11/02/2020

Collective Knowledge: organizing research projects as a database of reusable components and portable workflows with common APIs

This article provides the motivation and overview of the Collective Know...
research
03/31/2019

SysML'19 demo: customizable and reusable Collective Knowledge pipelines to automate and reproduce machine learning experiments

Reproducing, comparing and reusing results from machine learning and sys...
research
01/19/2018

Introducing ReQuEST: an Open Platform for Reproducible and Quality-Efficient Systems-ML Tournaments

Co-designing efficient machine learning based systems across the whole h...
research
09/09/2009

Interactive Data Integration through Smart Copy & Paste

In many scenarios, such as emergency response or ad hoc collaboration, i...
research
09/02/2022

Programming with Context-Sensitive Holes using Dependency-Aware Tuning

Developing efficient and maintainable software systems is both hard and ...

Please sign up or login with your details

Forgot password? Click here to reset