Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make autodiff caching more fine-grained #600

Open
calcmogul opened this issue Jul 18, 2024 · 0 comments
Open

Make autodiff caching more fine-grained #600

calcmogul opened this issue Jul 18, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@calcmogul
Copy link
Member

calcmogul commented Jul 18, 2024

While our autodiff is faster than CasADi, it's still a bottleneck compared to the IPM algorithm and linear system solve itself. One way to speed it up would be to eliminate unnecessary work. We already cache the linear rows of Jacobians, but we could go further by caching subtrees within the expression tree too.

One way to do this is to set a dirty bit on each node so computations can be skipped. Since variables are flagged from the bottom of the tree, and reverse autodiff works from the top-down, we'll need to be clever about avoiding unnecessary node traversal.

@calcmogul calcmogul added the enhancement New feature or request label Jul 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant