update autodiff docs in the dev guide
This commit is contained in:
parent
0f93363124
commit
788717b60f
2 changed files with 4 additions and 4 deletions
|
|
@ -25,7 +25,7 @@ The actual numbers will depend on your code.
|
|||
|
||||
## 2) Check your llvm-ir reproducer
|
||||
|
||||
To confirm that your previous step worked, we will use llvm's `opt` tool. find your path to the opt binary, with a path similar to `<some_dir>/rust/build/<x86/arm/...-target-triple>/build/bin/opt`. also find `llvmenzyme-19.<so/dll/dylib>` path, similar to `/rust/build/target-triple/enzyme/build/enzyme/llvmenzyme-19`. Please keep in mind that llvm frequently updates it's llvm backend, so the version number might be higher (20, 21, ...). Once you have both, run the following command:
|
||||
To confirm that your previous step worked, we will use llvm's `opt` tool. Find your path to the opt binary, with a path similar to `<some_dir>/rust/build/<x86/arm/...-target-triple>/ci-llvm/bin/opt`. If you build LLVM from source, you'll likely need to replace `ci-llvm` with `build`. Also find `llvmenzyme-21.<so/dll/dylib>` path, similar to `/rust/build/target-triple/enzyme/build/enzyme/llvmenzyme-21`. Please keep in mind that llvm frequently updates it's llvm backend, so the version number might be higher (20, 21, ...). Once you have both, run the following command:
|
||||
|
||||
```sh
|
||||
<path/to/opt> out.ll -load-pass-plugin=/path/to/build/<target-triple>/stage1/lib/libEnzyme-21.so -passes="enzyme" -enzyme-strict-aliasing=0 -s
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ First you need to clone and configure the Rust repository:
|
|||
```bash
|
||||
git clone git@github.com:rust-lang/rust
|
||||
cd rust
|
||||
./configure --enable-llvm-link-shared --enable-llvm-plugins --enable-llvm-enzyme --release-channel=nightly --enable-llvm-assertions --enable-clang --enable-lld --enable-option-checking --enable-ninja --disable-docs
|
||||
./configure --release-channel=nightly --enable-llvm-enzyme --enable-llvm-assertions --enable-option-checking --disable-docs --set llvm.download-ci-llvm=true
|
||||
```
|
||||
|
||||
Afterwards you can build rustc using:
|
||||
|
|
@ -47,7 +47,7 @@ Then build rustc in a slightly altered way:
|
|||
```bash
|
||||
git clone https://github.com/rust-lang/rust
|
||||
cd rust
|
||||
./configure --enable-llvm-link-shared --enable-llvm-plugins --enable-llvm-enzyme --release-channel=nightly --enable-llvm-assertions --enable-clang --enable-lld --enable-option-checking --enable-ninja --disable-docs
|
||||
./configure --release-channel=nightly --enable-llvm-enzyme --enable-llvm-assertions --enable-option-checking --disable-docs --set llvm.download-ci-llvm=true
|
||||
./x dist
|
||||
```
|
||||
We then copy the tarball to our host. The dockerid is the newest entry under `docker ps -a`.
|
||||
|
|
@ -84,5 +84,5 @@ cd build
|
|||
cmake .. -G Ninja -DLLVM_DIR=<YourLocalPath>/llvm-project/build/lib/cmake/llvm/ -DLLVM_EXTERNAL_LIT=<YourLocalPath>/llvm-project/llvm/utils/lit/lit.py -DCMAKE_BUILD_TYPE=Release -DCMAKE_EXPORT_COMPILE_COMMANDS=YES -DBUILD_SHARED_LIBS=ON
|
||||
ninja
|
||||
```
|
||||
This will build Enzyme, and you can find it in `Enzyme/enzyme/build/lib/<LLD/Clang/LLVM>Enzyme.so`. (Endings might differ based on your OS).
|
||||
This will build Enzyme, and you can find it in `Enzyme/enzyme/build/lib/<LLD/Clang/LLVM/lib>Enzyme.so`. (Endings might differ based on your OS).
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue