4 releases (breaking)

0.4.0 Dec 26, 2021
0.3.0 Dec 16, 2021
0.2.0 Dec 12, 2021
0.1.0 Dec 26, 2018

#26 in #auto-diff

MIT/Apache

23KB
472 lines

Enzyme build helper

Goal

This repository will build enzyme/llvm/clang/rustc in the right configuration such that you can use it in combination with oxide-enzyme.

Requirements

  • git
  • ninja
  • cmake
  • libssl-dev
  • libclang-dev
  • Rust (rustup) with an installed nightly toolchain
  • ~10GB free storage in $HOME/.cache

Usage

Build LLVM, the Rust toolchain and Enzyme with

cargo install enzyme && enzyme-install

Depending on your CPU this might take a few hours.
The build process will run enzyme tests, so your last output should look similar to these lines:

Testing Time: 0.63s
Passed : 299
Expectedly Failed: 5

Extras

  • Q: It fails some (all) tests or the build breaks even earlier. Help?
  • A: Sorry. Please open an issue with relevant information (OS, error message) or ping me on the rust-ml Zulip.
     
  • Q: How often do I have to run this? It takes quite a while..
  • A: We are aware of this and working on offering pre-build versions. In the meantime you have to build it once per rust Version. So we will publish an update once 1.58 hits stable.

License

Dual-licensed to be compatible with the Rust project.

Licensed under the Apache License, Version 2.0 http://www.apache.org/licenses/LICENSE-2.0 or the MIT license http://opensource.org/licenses/MIT, at your option. This file may not be copied, modified, or distributed except according to those terms.

Dependencies

~14–23MB
~354K SLoC