AD Tool: Enzyme
Introduction
Applications
Tools
Research Groups
Workshops
Publications
My Account
About

Enzyme


Summary:
Enzyme is a plugin that performs automatic differentiation (AD) of statically analyzable LLVM. By operating on the LLVM level Enzyme is able to perform AD across a variety of languages and perform optimization prior to AD

URL: https://enzyme.mit.edu

Developers:
  • William S. Moses
  • Valentin Churavy

Mode: Reverse
 
Method: Source transformation
 
Supported Language: C/C++
Fortran 77/90
Fortran2003
Fortran2008
Fortran77
Fortran95
Julia
LLVM
Language independent

Reference:
William Moses, Valentin Churavy
Instead of Rewriting Foreign Code for Machine Learning, Automatically Synthesize Fast Gradients
Conference proceeding, Advances in Neural Information Processing Systems, Curran Associates, Inc., 2020



AwardsSpotlight Presentation, NeurIPS 2020
Best Student Talk, Fall 2020 LLVM Developer's Meeting

Supported Platforms:
  • Windows
  • Unix/Linux
  • Mac
  • Application Server


Licensing: open source

Entries in our publication database that actually use Enzyme in the numerical experiments:  2

The following diagram shows these entries versus the year of the publication.

10+
#Entries
0
1
1
'20 '21
Year
  

Contact:
autodiff.org
Username:
Password:
(lost password)