Build sustainable research software and accelerate knowledge discovery via open R&D!
Tired of keeping up with the ever changing AI/SW/HW stack?
Lost in the ever growing number of design choices?
End up with under-performing and expensive software and hardware?
Never find time and resources to optimize your workload and tune models?
Spend more time on ad-hoc experimentation than on innovation?
Lose ad-hoc research software and artifacts when leading researchers leave?
After suffering from these problems for more than a decade
we eventually decided to develop a
common research SDK called Collective Knowledge
with our partners
to enable practical open science (note that Collective Mind
is a previous and deprecated technology).
The idea behind Collective Knowledge
is to provide an open-source and relatively simple technology
to connect together academia, industry and individual researchers
to exchange research artifacts and workflows and collaboratively
tackle grand challenges in computer engineering and other sciences.
CK SDK assists to
share research artifacts including realistic workloads, data sets and models as
customizable, portable and reusable components with a common JSON API and meta information
(see shared CK repos);
unify multi-objective compile-time and run-time workload optimizations (e.g. cost vs. performance vs. energy vs. accuracy) achieving 10x speedups and 50% energy reductions with the same accuracy for real OpenCL/CUDA applications on latest heterogeneous platforms (see dividiti's projects);
unify statistical, machine learning and deep learning techniques to continuously learn and optimize behavior of complex computer systems (e.g. automatically build performance/energy models, quickly identify performance bottlenecks, accelerate optimization, enable run-time adaptation) (more details);
simplify optimization knowledge sharing across communities of hardware vendors and software developers (see demo of a live CK repo);
stress-test compilers and crowd-tune their optimization heuristics on representative workloads (see CK-CLsmith);
enable interactive graphs and papers (see a demo);