-
-
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
specialize copyto! and multiplication by numbers for Q from qr #39533
Conversation
This fixes two performance bugs reported in https://github.com/JuliaLang/julia/issues/38972 and https://github.com/JuliaLang/julia/issues/38972 (multiplication of `Q` from `qr` by a `Diagonal` or `UniformScaling`). In particular, it improves the performance of generating random orthogonal matrices as described in https://discourse.julialang.org/t/random-orthogonal-matrices/9779/7.
The same could be done for |
I would be happy to include these modifications here (if you create a PR into my branch or post them as suggested changes as review). Otherwise, it would also be great if you could open a new PR to Julia. Anyway, it would be nice if someone could review this and we could get this merged. |
Bump. Is there anything that needs to be done before this can be merged? |
…Lang#39533) * specialize copyto! and multiplication by numbers for Q from qr This fixes two performance bugs reported in https://github.com/JuliaLang/julia/issues/38972 and https://github.com/JuliaLang/julia/issues/38972 (multiplication of `Q` from `qr` by a `Diagonal` or `UniformScaling`). In particular, it improves the performance of generating random orthogonal matrices as described in https://discourse.julialang.org/t/random-orthogonal-matrices/9779/7. * fix typo in new qr tests * resolve mehod ambiguity of copyto!
…Lang#39533) * specialize copyto! and multiplication by numbers for Q from qr This fixes two performance bugs reported in https://github.com/JuliaLang/julia/issues/38972 and https://github.com/JuliaLang/julia/issues/38972 (multiplication of `Q` from `qr` by a `Diagonal` or `UniformScaling`). In particular, it improves the performance of generating random orthogonal matrices as described in https://discourse.julialang.org/t/random-orthogonal-matrices/9779/7. * fix typo in new qr tests * resolve mehod ambiguity of copyto!
This fixes two performance bugs reported in JuliaLang/LinearAlgebra.jl#800 and JuliaLang/LinearAlgebra.jl#800 (multiplication of
Q
fromqr
by aDiagonal
orUniformScaling
). In particular, it improves the performance of generating random orthogonal matrices as described in JuliaLang/LinearAlgebra.jl#800.Latest Julia nightly (v1.7.0-DEV.448)
This PR
Of course, further performance optimizations are likely possibly by introducing better specializations of various multiplication methods of
Q
by something from the left/right as mentioned in JuliaLang/LinearAlgebra.jl#800, but this should be a good first step.I cannot add labels to this, but "linear algebra" and "performance" would be appropriate, I think.