Deep learning program generator
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
clgen Update checksum of tiny corpus. May 19, 2018
docs Add new docs module. May 19, 2018
make Move third party code into separate directory Jan 30, 2018
native
proto Add a contentfile_separator option. May 19, 2018
.env Add an autoenv file Nov 15, 2016
.gitignore Add Protocol Buffers for corpus, model, sampler. May 19, 2018
.travis.yml Cache-hot Jan 31, 2018
LICENSE.txt License under GPL Sep 19, 2016
Makefile Update 'python -m pip' syntax. May 19, 2018
README.md Development version bump May 19, 2018
configure Development version bump May 19, 2018
corpus.tar.bz2 Update top level symlink paths Apr 25, 2017
install-cpu.sh Development version bump May 19, 2018
install-cuda.sh Development version bump May 19, 2018
install-deps.sh Development version bump May 19, 2018
mkrelease.sh
model.json Update top level symlink paths Apr 25, 2017
sampler.json Update top level symlink paths Apr 25, 2017
setup.py Development version bump May 19, 2018

README.md


CLgen is an open source application for generating runnable programs using deep learning. CLgen learns to program using neural networks which model the semantics and usage from large volumes of program fragments, generating many-core OpenCL programs that are representative of, but distinct from, the programs it learns from.

Getting Started

See the online documentation for instructions on how to download and install CLgen.

Download a tiny example dataset to train and sample your first CLgen model:

$ wget https://github.com/ChrisCummins/clgen/raw/master/tests/data/tiny.tar.bz2
$ tar xf tiny.tar.bz2
$ clgen sample model.json sampler.json

Resources

Presentation slides:

Publication "Synthesizing Benchmarks for Predictive Modeling" (CGO'17).

Jupyter notebook containing experimental evaluation of CLgen.

Documentation for the Python API and command line interface.

License

Copyright 2016, 2017, 2018 Chris Cummins chrisc.101@gmail.com.

Released under the terms of the GPLv3 license. See LICENSE.txt for details.