-
-
Notifications
You must be signed in to change notification settings - Fork 5.7k
Remove many */mul! methods for AdjOrTrans of sym/herm/diag/triangular
#41188
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
Conversation
|
Tests pass locally, and I think they do because multiplication of some brutally constructed |
|
Another option to detect issues in packages is to make all of the currently removed methods throw an error, run pkgeval and see what happens. I'll push some smaller test adjustments next. |
|
@nanosoldier |
|
Your benchmark job has completed - no performance regressions were detected. A full report can be found here. cc @christopher-dG |
* methods for symmetric/hermitian* methods for AdjOrTrans of sym/herm/diag/triangular
|
This is ready for review. @andreasnoack @tkf? |
andreasnoack
left a comment
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.
Great to get rid of all these unused methods. Once the error message has been expanded then this should be good to go.
* methods for AdjOrTrans of sym/herm/diag/triangular*/mul! methods for AdjOrTrans of sym/herm/diag/triangular
I believe these are relicts from the transition to lazy
AdjointandTransposewrappers back in the v0.7/v1.0 times, perhaps artifacts of a mechanical translation of previous methods. Types à laAdjoint{...,Hermitian}, however, cannot be constructed from (the recommended) calls oftranposeandadjoint. They can only be constructed via brute force by calling the view constructors (with capital initial letters) directly. That is, in turn, not recommended, because it avoids the multiple dispatch mechanism built intoadjoint, which may or may not return anAdjointview, depending on types. The same holds, BTW, for adjoints/transposes of triangular matrices (EDIT: and diagonal matrices). In summary, because these wrapped type combinations should not occur in the wild, I don't expect any "slow fallback" issue to arise, but we should check, of course. IIRC, though, in our benchmark suite we may be testing still forTranspose/Adjoint(A), which should be changed if necessary. Independently from that, a pkgeval run should reveal if packages still relies on these methods.