autodiff
The tracking issue for this feature is: #124509.
This feature allows you to differentiate functions using automatic differentiation.
Set the -Zautodiff=<options>
compiler flag to adjust the behaviour of the autodiff feature.
Multiple options can be separated with a comma. Valid options are:
PrintTA
- print Type Analysis Information
PrintAA
- print Activity Analysis Information
PrintPerf
- print Performance Warnings from Enzyme
Print
- prints all intermediate transformations
PrintModBefore
- print the whole module, before running opts
PrintModAfterOpts
- print the whole module just before we pass it to Enzyme
PrintModAfterEnzyme
- print the module after Enzyme differentiated everything
LooseTypes
- Enzyme's loose type debug helper (can cause incorrect gradients)
Inline
- runs Enzyme specific Inlining
NoModOptAfter
- do not optimize the module after Enzyme is done
EnableFncOpt
- tell Enzyme to run LLVM Opts on each function it generated
NoVecUnroll
- do not unroll vectorized loops
RuntimeActivity
- allow specifying activity at runtime