diff options
| author | Sai Praveen Bangaru <31557731+saipraveenb25@users.noreply.github.com> | 2023-02-09 17:40:20 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-02-09 17:40:20 -0500 |
| commit | df02f3f50f977112ca1fbb148cd48ee41d560f41 (patch) | |
| tree | 7732e8fec9f33aff9666b3710c7adb899788c4be /docs/user-guide/07-autodiff.md | |
| parent | d911e1bed9572664b1d0554feb3c7d1a2a880518 (diff) | |
Reverse-mode Loop Support (#2635)
* Full loop support now working. MaxItersAttr in progress
* Lookup table updates?
* Fixed the max iters decoration
* Minox fixes & remove superfluous code
* fixup warnings
* Revert "Lookup table updates?"
This reverts commit 7d9b0793fb5239f31d1155776e846dcf1892d8d9.
* Update 07-autodiff.md
* Change maxiters to MaxIters
* Added asserts
* Update 07-autodiff.md
Diffstat (limited to 'docs/user-guide/07-autodiff.md')
| -rw-r--r-- | docs/user-guide/07-autodiff.md | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/docs/user-guide/07-autodiff.md b/docs/user-guide/07-autodiff.md index d72299229..488800a98 100644 --- a/docs/user-guide/07-autodiff.md +++ b/docs/user-guide/07-autodiff.md @@ -567,6 +567,6 @@ The compiler can generate forward derivative and backward propagation implementa - No access to global variables or shader parameters within a differentiable function. - All operations to global resources, including texture reads or atomic writes, are treating as a non-differentiable operation. - If a differentiable function contains calls that cause side-effects such as updates to global memory, there will not be a guarantee on how many times the side-effect will occur during the resulting derivative function or back-propagation function. -- All loops in a backward differentiable function must end within a statically known number of iterations. If the maximum number of iterations is not trivially deductible by the type system as a compile-time constant, a manually attribute is needed at the loop to provide the number. If the number of actually executed iterations exceeds what is being specified, the resulting runtime behavior is undefined. +- `for` loops: In a backward differentiable function, loops currently cannot have `continue` statements although `break` statements are supported. Loops must use the attribute `[MaxIters(<count>)]` to specify a maximum number of iterations. This will be used by compiler to allocate space to store intermediate data. If the actual number of iterations exceeds the provided maximum, the behavior is undefined. -The above restrictions do no apply if a user-defined derivative or backward propagation function is provided. +The above restrictions do not apply if a user-defined derivative or backward propagation function is provided. |
