Skip to content

Commit

Permalink
trying to fix travis
Browse files Browse the repository at this point in the history
  • Loading branch information
gfursin committed Feb 18, 2020
1 parent 73029ab commit d2b9da3
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 135 deletions.
10 changes: 0 additions & 10 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,16 +15,6 @@ env:

matrix:
include:
- os: osx
osx_image: xcode9.2
language: generic
python: 2.7
env: TRAVIS_CK_CXX_COMPILER=llvm WANTED_PYTHON_VERSION=2.7
- os: osx
osx_image: xcode9.2
language: generic
python: 2.7
env: TRAVIS_CK_CXX_COMPILER=gcc WANTED_PYTHON_VERSION=2.7
- os: osx
osx_image: xcode9.2
language: generic
Expand Down
2 changes: 1 addition & 1 deletion AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
N: Grigori Fursin
E: [email protected]
H: http://fursin.net
O: cTuning foundation / dividiti
O: cTuning foundation
C: original concept and design
W: since 1 November 2014
=======================================================================
Expand Down
157 changes: 33 additions & 124 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
[![compatibility](https://github.com/ctuning/ck-guide-images/blob/master/ck-compatible.svg)](https://github.com/ctuning/ck)
[![automation](https://github.com/ctuning/ck-guide-images/blob/master/ck-artifact-automated-and-reusable.svg)](http://cTuning.org/ae)

[![DOI](https://zenodo.org/badge/29007219.svg)](https://zenodo.org/badge/latestdoi/29007219)
[![License](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)

Linux & MacOS: [![Travis Build Status](https://travis-ci.org/ctuning/ck-autotuning.svg?branch=master)](https://travis-ci.org/ctuning/ck-autotuning)
Expand All @@ -10,89 +8,56 @@ Windows: [![AppVeyor Build status](https://ci.appveyor.com/api/projects/status/g
Universal, customizable and multi-objective software and hardware autotuning
============================================================================

This is a stable repository for universal, customizable,
multi-dimensional, multi-objective SW/HW autotuning
with JSON API across Linux, Android, MacOS and Windows-based machines
using [Collective Knowledge Framework](https://github.com/ctuning/ck).
This is a [CK repository](https://github.com/ctuning/ck) for the universal, customizable,
multi-dimensional and multi-objective SW/HW benchmarking, autotuning
and co-design with a unified JSON API across Linux, Android, MacOS
and Windows-based machines.

![logo](https://github.com/ctuning/ck-guide-images/blob/master/image-pipelines2.png)

Please, check out examples in this [demo directory](https://github.com/ctuning/ck-autotuning/tree/master/demo)
and notes about [CK portable and customizable workflows](https://github.com/ctuning/ck/wiki/Portable-workflows).

These reusable and customizable modules are now used in various common
experimental scenarios include universal,
customizable, multi-dimensional, multi-objective
[DNN crowd-benchmarking](http://cKnowledge.org/ai)
and [compiler crowd-tuning](http://github.com/ctuning/ck-autotuning).

See continuously aggregated public results results and
unexpected behavior in the [CK live repository](http://cKnowledge.org/repo)!

Also check out our related Android apps to let you participate in our experiment crowdsourcing using
spare Android mobile phones, tables and other devices:
* [collaborative deep learning optimization app](http://cKnowledge.org/android-apps.html)
* [compiler tuning using small kernels](http://cKnowledge.org/android-apps.html)
* [CK crowd-scenarios](https://github.com/ctuning/ck-crowd-scenarios)

Further details are available at [CK wiki](https://github.com/ctuning/ck/wiki),
[open research challenges wiki](https://github.com/ctuning/ck/wiki/Enabling-open-science)
and [reproducible and CK-powered AI/SW/HW co-design competitions at ACM/IEEE conferences](http://cKnowledge.org/request).

Prerequisites
=============
* [Collective Knowledge Framework](http://github.com/ctuning/ck)
* [Compilers for your target machine (Linux, Windows, MacOS, Android)](https://github.com/ctuning/ck/wiki/Compiler-autotuning#Installing_compilers)
This repository included CK modules, actions and components for unified

Description
===========
During many years of research on machine learning based autotuning
we spent more time on data management then on innovation. At the end,
we decided to provide a complete solution in CK where our plugin-based
autotuning tools are combined with our repository and python or
R-based machine learning plugins.

We are gradually moving, simplifying and extending autotuning
from Collective Mind into new CK format! Since design and optimization
spaces are very large, we are trying to make their exploration practical
and scalable by combining autotuning, crowdsourcing, predictive
analytics and run-time adaptation.

Modules from this repository will be used to unify:
* program compilation and execution (with multiple data sets)
* benchmarking
* statistical analysis
* crowd-benchmarking
* statistical analysis of empirical results
* plugin-based autotuning
* automatic performance modeling
* static and dynamic features extraction
* machine learning to predict optimizations and run-time adaptation
* learning to predict optimizations and run-time adaptation
* reproducibility of experimental results

Further info:
* [Shared portable CK program workflows](https://codereef.ai/portal/c/program)
* [Open CodeReef platform to publish and download stable CK components](https://CodeReef.ai/portal/static/docs)
* [MLPerf crowd-benchmarking demo](https://CodeReef.ai/demo)
* [Documentation about portable CK workflows](https://github.com/ctuning/ck/wiki/Portable-workflows)
* [Related CK publications](https://github.com/ctuning/ck/wiki/Publications)

Maintainers
===========
* [dividiti](http://dividiti.com)

Authors
=======

* [Grigori Fursin](http://fursin.net/research.html), dividiti/cTuning foundation
* [Anton Lokhmotov](https://www.hipeac.net/~anton), dividiti (UK)

License
=======
* BSD, 3-clause
Contributors
============
* See the list of [contributors](https://github.com/ctuning/ck-autotuning/blob/master/CONTRIBUTIONS)

Installation
============

> ck pull repo:ck-autotuning
First install the CK framework as described [here](https://github.com/ctuning/ck#installation).

Usage
=====
Then install this CK repository as follows:

Please, refer to the [CK online guides](https://github.com/ctuning/ck/wiki)
```
$ ck pull repo:ck-autotuning
```

You can now browse and reuse program workflows shared at the [CodeReef portal](https://CodeReef.ai/portal/c/program).

Please refer to the [CK online guides](https://github.com/ctuning/ck/wiki)
including [CK portable workflows](https://github.com/ctuning/ck/wiki/Portable-workflows)
and [autotuning example](https://github.com/ctuning/ck/wiki/Autotuning).
and the [autotuning example](https://github.com/ctuning/ck/wiki/Autotuning).

Troubleshooting
===============
Expand All @@ -113,64 +78,8 @@ Troubleshooting
$ ck install package:lib-ncurses-6.0-root
```

Publications
============

The concepts have been described in the following publications:

```
@article{fursin:hal-01054763,
hal_id = {hal-01054763},
url = {http://hal.inria.fr/hal-01054763},
title = {{Collective Mind}: Towards practical and collaborative auto-tuning},
author = {Fursin, Grigori and Miceli, Renato and Lokhmotov, Anton and Gerndt, Michael and Baboulin, Marc and Malony, Allen, D. and Chamski, Zbigniew and Novillo, Diego and Vento, Davide Del},
abstract = {{Empirical auto-tuning and machine learning techniques have been showing high potential to improve execution time, power consumption, code size, reliability and other important metrics of various applications for more than two decades. However, they are still far from widespread production use due to lack of native support for auto-tuning in an ever changing and complex software and hardware stack, large and multi-dimensional optimization spaces, excessively long exploration times, and lack of unified mechanisms for preserving and sharing of optimization knowledge and research material. We present a possible collaborative approach to solve above problems using Collective Mind knowledge management system. In contrast with previous cTuning framework, this modular infrastructure allows to preserve and share through the Internet the whole auto-tuning setups with all related artifacts and their software and hardware dependencies besides just performance data. It also allows to gradually structure, systematize and describe all available research material including tools, benchmarks, data sets, search strategies and machine learning models. Researchers can take advantage of shared components and data with extensible meta-description to quickly and collaboratively validate and improve existing auto-tuning and benchmarking techniques or prototype new ones. The community can now gradually learn and improve complex behavior of all existing computer systems while exposing behavior anomalies or model mispredictions to an interdisciplinary community in a reproducible way for further analysis. We present several practical, collaborative and model-driven auto-tuning scenarios. We also decided to release all material at http://c-mind.org/repo to set up an example for a collaborative and reproducible research as well as our new publication model in computer engineering where experimental results are continuously shared and validated by the community.}},
keywords = {High performance computing; systematic auto-tuning; systematic benchmarking; big data driven optimization; modeling of computer behavior; performance prediction; predictive analytics; feature selection; collaborative knowledge management; NoSQL repository; code and data sharing; specification sharing; collaborative experimentation; machine learning; data mining; multi-objective optimization; model driven optimization; agile development; plugin-based auto-tuning; performance tracking buildbot; performance regression buildbot; performance tuning buildbot; open access publication model; collective intelligence; reproducible research},
language = {Anglais},
affiliation = {POSTALE - INRIA Saclay - Ile de France , cTuning foundation , University of Rennes 1 , ICHEC , ARM [Cambridge] , Technical University of Munich - TUM , Computer Science Department [Oregon] , Infrasoft IT Solutions , Google Inc , National Center for Atmospheric Research - NCAR},
booktitle = {{Automatic Application Tuning for HPC Architectures}},
publisher = {IOS Press},
pages = {309-329},
journal = {Scientific Programming},
volume = {22},
number = {4 },
audience = {internationale },
doi = {10.3233/SPR-140396 },
year = {2014},
month = Jul,
pdf = {http://hal.inria.fr/hal-01054763/PDF/paper.pdf},
}
@inproceedings{ck-date16,
title = {{Collective Knowledge}: towards {R\&D} sustainability},
author = {Fursin, Grigori and Lokhmotov, Anton and Plowman, Ed},
booktitle = {Proceedings of the Conference on Design, Automation and Test in Europe (DATE'16)},
year = {2016},
month = {March},
url = {https://www.researchgate.net/publication/304010295_Collective_Knowledge_Towards_RD_Sustainability}
}
@inproceedings{Fur2009,
author = {Grigori Fursin},
title = {{Collective Tuning Initiative}: automating and accelerating development and optimization of computing systems},
booktitle = {Proceedings of the GCC Developers' Summit},
year = {2009},
month = {June},
location = {Montreal, Canada},
keys = {http://www.gccsummit.org/2009}
url = {https://scholar.google.com/citations?view_op=view_citation&hl=en&user=IwcnpkwAAAAJ&cstart=20&citation_for_view=IwcnpkwAAAAJ:8k81kl-MbHgC}
}
```

* http://arxiv.org/abs/1506.06256
* http://hal.inria.fr/hal-01054763
* https://hal.inria.fr/inria-00436029
* http://arxiv.org/abs/1407.4075
* https://scholar.google.com/citations?view_op=view_citation&hl=en&user=IwcnpkwAAAAJ&citation_for_view=IwcnpkwAAAAJ:LkGwnXOMwfcC

Feedback
========
Questions and comments
======================

If you have problems, questions or suggestions, do not hesitate to get in touch via the following mailing lists:
* https://groups.google.com/forum/#!forum/collective-knowledge
* https://groups.google.com/forum/#!forum/ctuning-discussions
Please feel free to get in touch with the [CK community](https://github.com/ctuning/ck/wiki/Contacts)
if you have any questions, suggestions and comments!

0 comments on commit d2b9da3

Please sign in to comment.