Skip to content

Commit dd146b1

Browse files
Fix performance issue when RHS is a Matrix (#137)
1 parent f49e91b commit dd146b1

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name = "LinearMaps"
22
uuid = "7a12625a-238d-50fd-b39a-03d52299707e"
3-
version = "3.2.1"
3+
version = "3.2.2"
44

55
[deps]
66
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"

src/LinearMaps.jl

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -213,11 +213,11 @@ end
213213
# the following is of interest in, e.g., subspace-iteration methods
214214
function mul!(Y::AbstractMatrix, A::LinearMap, X::AbstractMatrix)
215215
check_dim_mul(Y, A, X)
216-
return _generic_mapmat_mul!(Y, A, X)
216+
return _unsafe_mul!(Y, A, X)
217217
end
218218
function mul!(Y::AbstractMatrix, A::LinearMap, X::AbstractMatrix, α::Number, β::Number)
219219
check_dim_mul(Y, A, X)
220-
return _generic_mapmat_mul!(Y, A, X, α, β)
220+
return _unsafe_mul!(Y, A, X, α, β)
221221
end
222222

223223
function _generic_mapmat_mul!(Y, A, X, α=true, β=false)
@@ -236,6 +236,9 @@ _unsafe_mul!(y, A::AbstractMatrix, x, α, β) = mul!(y, A, x, α, β)
236236
function _unsafe_mul!(y::AbstractVecOrMat, A::LinearMap, x::AbstractVector, α, β)
237237
return _generic_mapvec_mul!(y, A, x, α, β)
238238
end
239+
function _unsafe_mul!(y::AbstractMatrix, A::LinearMap, x::AbstractMatrix)
240+
return _generic_mapmat_mul!(y, A, x)
241+
end
239242
function _unsafe_mul!(y::AbstractMatrix, A::LinearMap, x::AbstractMatrix, α, β)
240243
return _generic_mapmat_mul!(y, A, x, α, β)
241244
end

0 commit comments

Comments
 (0)