Skip to content
forked from ctuning/ck-env

CK repository with components and automation actions to enable portable workflows across diverse platforms including Linux, Windows, MacOS and Android. It includes software detection plugins and meta packages (code, data sets, models, scripts, etc) with the possibility of multiple versions to co-exist in a user or system environment:

License

Notifications You must be signed in to change notification settings

maria-18-git/ck-env

 
 

Repository files navigation

Fighting software and hardware chaos in research

compatibility License

Linux & MacOS: Travis Build Status Windows: AppVeyor Build status

This is a Collective Knowledge repository with the functionality to support portable, customizable, reusable and automated workflows. It lets users automatically detect the target platform with already installed software, data and models required for a given workflow using CK software detection plugins and install missing packages in a unified way. Multiple versions of code, data and models can now co-exist in a user or system environment similar to Python virtualenv.

Further info:

Author

Contributors

Shared CK modules with actions

Installation

First install the CK framework as described here.

Then install this CK repository as follows:

 $ ck pull repo:ck-env

 $ ck list soft
 $ ck list package

Usage

You can detect and register in the CK all the instances of GCC and LLVM as follows:

 $ ck detect soft:compiler.gcc
 $ ck detect soft:compiler.llvm

You can now see multiple versions of the detected software registered in the CK as follows:

 $ ck show env

You can then compile and run unified CK benchmarks shared by the community using any of the above compiler instances (GCC, LLVM, ICC ...) and their versions simply as follows:

 $ ck pull repo:ck-autotuning
 $ ck pull repo:ctuning-programs

 $ ck compile program:cbench-automotive-susan --speed
 $ ck run program:cbench-automotive-susan

If you have Android NDK and SDK installed, CK can automatically detect it together with compiler versions (GCC, LLVM), register them and let you compile and run benchmarks on Android simply via:

 $ ck compile program:cbench-automotive-susan --speed --target_os=android21-arm-v7a
 $ ck run program:cbench-automotive-susan --target_os=android21-arm-v7a

You can find further details about our customizable and cross-platform package/environment manager here.

Questions and comments

Please feel free to get in touch with the CK community if you have any questions, suggestions and comments!

About

CK repository with components and automation actions to enable portable workflows across diverse platforms including Linux, Windows, MacOS and Android. It includes software detection plugins and meta packages (code, data sets, models, scripts, etc) with the possibility of multiple versions to co-exist in a user or system environment:

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 51.8%
  • C++ 12.3%
  • Shell 12.0%
  • HTML 8.5%
  • C 7.4%
  • CMake 6.6%
  • Other 1.4%