julia
354c3674 - Allow SparseArrays to catch `lu(::WrappedSparseMatrix)` (#51161)

Commit
2 years ago
Allow SparseArrays to catch `lu(::WrappedSparseMatrix)` (#51161) Over the `AbstractMatrix` relaxation in v1.9, we missed a potential indirection for wrapped sparse matrices. Instead, by default, a `similar` copy is created (hence a sparse matrix) and then `lu!` with a pivot argument is called. Such a method, however, does not exist in SparseArrays.jl, which means that the `generic_lufact!` method gets called, which is probably really bad performance-wise, due to heavy reading and writing into the sparse matrix. This PR introduces one more level at which SparseArrays.jl (and perhaps other external packages) may interfere and redirect to their own implementations, in-place or out-of-place.
Author
Parents
Loading