About Partners Use cases AI Development Repo Contact
We are now looking for additional funding and projects to improve CK-related technology. In the mean time, you can help us by improving CK documentation, writing blog articles and making (video) tutorials about your own CK use cases, share more CK artifacts and workflows, unify research APIs and provide extra tests!
We use GitHub to develop the core CK functionality for sharing and reusing artifacts and workflows via third-party CK repositories. We made a special effort to stabilize CK core and avoid major changes since 2017 (similar to Git or programming languages) apart from adding internal tests or productivity functions requested by the CK users.

We have the following considerations in mind when developing CK and CK-based workflows:

  • Why: we are passionate about collaborative, reproducible, systematic and reusable R&D. We have open-sourced Collective Knowledge to help the community collaboratively tackle grand challenges in computer engineering and other sciences.
  • Open-source/agile: our vision for Collective Knowledge is to follow the Linux, Wikipedia and GitHub way for collaborative R&D. To fully embrace the open-source movement, we use a permissive license, no strings attached!
  • Community-driven: by partnering with leading companies, universities and conferences, we are growing a passionate community of users and developers to create a public repository of customizable and reusable artifacts!
  • Simple: Collective Knowledge is a cross-platform and relatively simple knowledge management system taking advantage of the best modern techniques including JSON, Git, Elasticsearch, SciPy, web services and agile R&D methodology to deal with ever changing software and hardware stack.
  • Portable and extensible: minimal software dependencies, plugin-based architecture and simple JSON API makes CK easily extensible and customizable. CK components can be assembled together just like LEGO bricks to focus on problem-solving. Full API validation can be added at any time after research idea is prototyped and fully validated.
  • Agile documentation (incremental improvements): We have spent considerable effort to document Collective Knowledge via community-maintained wiki covering everything from the basics to advanced use cases including artifact sharing, universal autotuning and predictive analytics. CK users also write blog articles describing their own ways to understand, use and extend CK (see Michel Steuwer's blog).
See this wiki about CK development conventions and testing. Researchers can then use CK to provide a common structure to their local ad-hoc code and data, and pack them with associated CK Python wrappers and JSON API into unified CK repositories (a - typical ad-hoc experimental packs for Artifact Evaluation, b - unified and reusable experimental repositories such as the one for CGO'17 paper):
Such repositories can be easily shared and reused via public or private services including GitHub, BitBucket and GitLab.

Please check further details at the CK GitHub documentation wiki and practical use cases page. Don't hesitate to reach the community via CK public mailing list. If you are interested in long term CK plans, please contact CK authors.

Website designed using CK
               Locations of visitors to this page
(C)opyright 2014-2018 non-profit cTuning foundation and dividiti