-
-
Notifications
You must be signed in to change notification settings - Fork 210
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
Deprecate @unpack to reduce specializations (but keep v1.6 compat) #1893
Conversation
Did you measure the impact on precompile/load times? This would be quite interesting for a lot of my packages, too. |
It's at least a piece of the puzzle I'll figure out where we're at after #1892 + SciML/SciMLOperators.jl#155 |
#1892 had a bigger effect so far, but we're almost <100mb now when it's all together. |
Cool - I'm looking forward to it! |
@@ -3,7 +3,11 @@ | |||
# III.5 Variable Step Size Multistep Methods: Formulae 5.9 | |||
function ϕ_and_ϕstar!(cache, du, k) | |||
@inbounds begin | |||
@unpack dts, ϕstar_nm1, ϕ_n, ϕstar_n, β = cache | |||
@static if VERSION >= v"1.8" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if this could be made into a custom @unpack
macro to avoid the code duplications? Or even just changed in UnPack.jl?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unpack.jl handles cases other than types, while this does not. And this will be easy to delete once LTS changes.
I played around a bit and came up with a more lightweight |
Revert #1893 and switch to SimpleUnPack
No description provided.