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

1.10 enablement #330

Merged
merged 5 commits into from
Aug 14, 2023
Merged

1.10 enablement #330

merged 5 commits into from
Aug 14, 2023

Conversation

dkarrasch
Copy link
Contributor

This is to make use of JuliaLang/julia#50058. While that PR has not been merged, I'm putting this up to see whether this is working properly on older julia versions, and then we check nightly later.

Comment on lines -264 to -269
LinearAlgebra.lmul!(A::$t{T,<:oneStridedVecOrMat},
B::oneStridedVecOrMat{T}) where {T<:onemklFloat} =
trmm!('L', $uploc, 'N', $isunitc, one(T), parent(A), B, B)
LinearAlgebra.rmul!(A::oneStridedVecOrMat{T},
B::$t{T,<:oneStridedVecOrMat}) where {T<:onemklFloat} =
trmm!('R', $uploc, 'N', $isunitc, one(T), parent(B), A, A)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

By the signature of trmm!, only matrix arguments are allowed, so either it should be relaxed over there or, as is done here, restricted here.

@@ -1100,7 +1100,7 @@ function trmm(side::Char,
alpha::Number,
A::oneStridedMatrix{T},
B::oneStridedMatrix{T}) where T
trmm!(side, uplo, transa, diag, alpha, A, B)
trmm!(side, uplo, transa, diag, alpha, A, copy(B))
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this was oversight, and the corresponding test required an according change.

Comment on lines +273 to +274
LinearAlgebra.generic_mattridiv!(C::oneStridedMatrix{T}, uploc, isunitc, tfun::Function, A::oneStridedMatrix{T}, B::oneStridedMatrix{T}) where {T<:onemklFloat} =
trsm!('R', uploc, tfun === identity ? 'N' : tfun === transpose ? 'T' : 'C', isunitc, one(T), B, C === A ? C : copyto!(C, A))
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This adds rdiv!-functionality, which could be included in the "old" branch below.

@dkarrasch
Copy link
Contributor Author

Nightly fails, but I don't understand why. Something with StaticArrays.jl?

@dkarrasch
Copy link
Contributor Author

Perhaps we should add testing on v1.10-something also to see whether things work as intended after the alpha2-release.

@dkarrasch
Copy link
Contributor Author

Looks like StaticArraysCore.jl may need an upate, so that tests pass also on nightly?

@maleadt maleadt changed the title use unwrapping mechanism for triangular matrices 1.10 enablement Jul 30, 2023
@dkarrasch
Copy link
Contributor Author

It's strange that symmetric/hermitian tests fail that have not been touched here. Also, the function calls before the tests call basic routines directly, not through * or mul!. So, AFAICT, the whole new dispatch machinery doesn't even come into play?

@maleadt
Copy link
Member

maleadt commented Aug 14, 2023

This also fails outside of this PR, so let's just mark 1.10 as broken for now.

@maleadt maleadt merged commit 7924c97 into JuliaGPU:master Aug 14, 2023
amontoison pushed a commit to amontoison/oneAPI.jl that referenced this pull request Oct 18, 2023
Co-authored-by: Tim Besard <tim.besard@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants