Skip to content
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

Reland "Reroute (Upper/Lower)Triangular * Diagonal through __muldiag #55984" #56270

Merged
merged 9 commits into from
Oct 29, 2024

Conversation

jishnub
Copy link
Contributor

@jishnub jishnub commented Oct 21, 2024

This relands #55984 which was reverted in #56267. Previously, in #55984, the destination in multiplying triangular matrices with diagonals was also assumed to be triangular, which is not necessarily the case in mul!. Tests for this case, however, were being run non-deterministically, so this wasn't caught by the CI runs.

This improves performance:

julia> U = UpperTriangular(rand(100,100)); D = Diagonal(rand(size(U,2))); C = similar(U);

julia> @btime mul!($C, $D, $U);
  1.517 μs (0 allocations: 0 bytes) # nightly
  1.116 μs (0 allocations: 0 bytes) # This PR

@jishnub jishnub added linear algebra Linear algebra arrays [a, r, r, a, y, s] bugfix This change fixes an existing bug labels Oct 21, 2024
@jishnub jishnub added the re-land This relands a PR that was previously merged but was later reverted. label Oct 21, 2024
@jishnub jishnub changed the title Fix multiplying a triangular matrix and a Diagonal Reland "Reroute (Upper/Lower)Triangular * Diagonal through __muldiag #55984" Oct 21, 2024
@jishnub jishnub removed the bugfix This change fixes an existing bug label Oct 22, 2024
@jishnub jishnub merged commit 710e1f9 into master Oct 29, 2024
5 of 7 checks passed
@jishnub jishnub deleted the jishnub/muldiag_tri_fix branch October 29, 2024 07:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arrays [a, r, r, a, y, s] linear algebra Linear algebra re-land This relands a PR that was previously merged but was later reverted.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants