-
Notifications
You must be signed in to change notification settings - Fork 15
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
Add parameter to disable early exit of expression evaluation #91
Conversation
Benchmark Results
|
Nice!! Yeah this is exactly what I had in mind 😀 I think the remaining pieces needed are: (1) copying it over to the LoopVectorization and Bumper extensions, and (2) adding some more expression tests to probe different branches of code, as well as with turbo=true and bumper=true. Sorry it’s a bit tedious!! In the future I’d like to just have some macro that generates the LoopVectorization code in the extension. |
Pull Request Test Coverage Report for Build 9741447211Details
💛 - Coveralls |
FYI once this gets merged I may change things so that there is a single Base.@kwdef struct EvaluationOptions{T,B,E}
turbo::Val{T} = Val(false)
bumper::Val{B} = Val(false)
early_exit::Val{E} = Val(true)
end which gets passed around. It should let If you're up for trying it in this PR, feel free, but I didn't want to have to ask you to do too much though, as I already appreciate this PR a lot 🙂 |
Hey! I took a quick stab at the expr(X; options=EvaluationOption(turbo=Val(true)))
# or like below (which I think introduces a type instability)
expr(X; options=EvaluationOption(turbo=true)) this breaks backwards compatibility, so I guess it would be nice to make things work with the current kwarg way of calling the expression? also, we might also want to add Happy to update this however you think is best! |
Also FYI I made a few changes that were easier to implement manually like (1) merging master and (2) changing Re: |
Co-authored-by: Miles Cranmer <[email protected]>
Pull Request Test Coverage Report for Build 10127877451Details
💛 - Coveralls |
ee845cc
to
586baf8
Compare
Thanks again for the great contribution!! |
2831152
to
17a4a24
Compare
Addresses #87.
@MilesCranmer is this roughly what you had in mind? If not, just let me know. If yes, I can also add another test with e.g. a more complicated expression. Let me know what you think!