-
Notifications
You must be signed in to change notification settings - Fork 32
Faster substitutions with smart_subs_dict
#3025
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
Conversation
dweindl
commented
Nov 12, 2025
- Disable evaluation during substitution
- Use xreplace instead of subs
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3025 +/- ##
==========================================
- Coverage 78.03% 77.40% -0.64%
==========================================
Files 311 311
Lines 20584 20587 +3
Branches 1499 1499
==========================================
- Hits 16063 15935 -128
- Misses 4511 4642 +131
Partials 10 10
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
|
For my current benchmark, this reduces the time for one Disabling evaluation during substitution may prevent simplification of some expressions during substitution, but those can be simplified later on. |
* Disable evaluation during substitution * Use xreplace instead of subs For my current benchmark, this reduces the time for one `smart_subs_dict` call from over 21h (still running...) to ~12min. Disabling evaluation during substitution may prevent simplification of some expressions during substitution, but those can be simplified later on.
Flatten out expressions first to avoid expensive repeated substitutions in matrices. For my current benchmark, this yields another 10x improvement compared to AMICI-dev#3025.
Flatten out expressions first to avoid expensive repeated substitutions in matrices. For my current benchmark, this yields another 10x improvement compared to AMICI-dev#3025.
Flatten out expressions first to avoid expensive repeated substitutions in matrices. For my current benchmark, this yields another 10x improvement compared to #3025.