-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Views with reshaped range indices are linear and strided #34729
Conversation
Should get merged after JuliaLang/julia#34729 with an `if` for the version number.
e88082b
to
956acdd
Compare
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.
This looks great. TBH I only looked carefully at the first commit, I assume that has all the functional changes? Thanks also for the cleanup of the subarray tests, I noticed several nice improvements there.
bump? |
Bump again? I'd like to see this in v1.5 if possible. |
@mbauman Can we get this in? Just have 4 more days! |
956acdd
to
b8a2823
Compare
Should get merged after JuliaLang/julia#34729 with an `if` for the version number. Utilize view strided fixes
This came up in a DiffEq task, wherein a matrix is stored as a subset of the parameters vector — and thus to be used, it must be reshaped/subsetted before doing a matmul. This patch gives such a view access to the blassy goodness. The exemplar case looks something like this:
Before, this took nearly 200ns. With this patch we hit BLAS and are down to 100ns. Interestingly, this introduces a bifurcation where it's possible for view to be linear but not strided... but fortunately we've been pretty strict on keeping those two attributes distinct even though they previously were 100% overlapping.
I made sure the SubArray tests passed with JULIA_TESTFULL and while I was there I testsetified the test/subarray.jl file (as a separate and independent commit).
cc: @ChrisRackauckas.