Skip to content
@EnzymeAD

Enzyme Automatic Differentiation Compiler

Welcome! 👋

The Enzyme project is a tool which takes arbitrary existing code as LLVM and MLIR, and computes its derivative. This allows developers to use Enzyme to automatically create gradients of their source code without much additional work. By working at the LLVM level Enzyme is able to differentiate programs in a variety of languages (C, C++, Swift, Julia, Rust, Fortran, Python, etc.) in a single tool utilizing LLVM's highly developed optimization pipeline. We are always looking to help developers to get started with Enzyme, and help them integrate gradients into their applications.

Getting Involved

📣 Join the Enzyme AD discussion list to get news about weekly meetings, events, and other ongoing discussions.

💬 Join the Weekly Meeting to keep up with the most recent developments, for questions regarding the usage of Enzyme, and ongoing design and development discussions.

🚀 Have a look at the Installation Guide, and Using Enzyme as well as further documentation on the website.

🤖 Try out Enzyme interactively in its very own Compiler Explorer instance!

Pinned Loading

  1. Enzyme Public

    High-performance automatic differentiation of LLVM and MLIR.

    LLVM 1.4k 136

  2. Enzyme.jl Public

    Julia bindings for the Enzyme automatic differentiator

    Julia 508 74

  3. Enzyme-Tutorial Public

    Jupyter Notebook 19 7

  4. rust Public

    Forked from rust-lang/rust

    A rust fork to work towards Enzyme integration

    Rust 90 8

  5. Enzyme-JAX Public

    Custom Bindings for Enzyme Automatic Differentiation Tool and Interfacing with JAX.

    MLIR 92 19

Repositories

Showing 10 of 31 repositories
  • Reactant.jl Public

    Optimize Julia Functions With MLIR and XLA for High-Performance Execution on CPU, GPU, TPU and more.

    Julia 203 MIT 24 153 (3 issues need help) 76 Updated Aug 16, 2025
  • Enzyme-JAX Public

    Custom Bindings for Enzyme Automatic Differentiation Tool and Interfacing with JAX.

    MLIR 92 19 146 (2 issues need help) 61 Updated Aug 16, 2025
  • Enzyme Public

    High-performance automatic differentiation of LLVM and MLIR.

    LLVM 1,443 136 128 (9 issues need help) 73 Updated Aug 16, 2025
  • AutoAD.jl Public
    Julia 2 MIT 0 0 0 Updated Aug 15, 2025
  • Enzyme.jl Public

    Julia bindings for the Enzyme automatic differentiator

    Julia 508 MIT 74 217 (8 issues need help) 55 Updated Aug 15, 2025
  • Reactant Public
    LLVM 0 2 0 5 Updated Aug 8, 2025
  • Dockerfile 0 MIT 0 0 0 Updated Aug 1, 2025
  • www Public

    🌎 Enzyme project home page

    SCSS 0 12 2 4 Updated Aug 1, 2025
  • Dockerfile 0 MIT 0 0 0 Updated Jul 28, 2025
  • rust Public Forked from rust-lang/rust

    A rust fork to work towards Enzyme integration

    Rust 90 14,303 13 9 Updated Jun 25, 2025