Skip to content

Commit fd10ea2

Browse files
committed
use memory requirement heuristic for branching
1 parent 1b732ba commit fd10ea2

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/kronecker.jl

+2-2
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ end
120120
@inline function _kronmul!(y, B::Union{MatrixMap,UniformScalingMap}, X, At::Union{MatrixMap,UniformScalingMap}, T)
121121
na, ma = size(At)
122122
mb, nb = size(B)
123-
if (nb + ma) * na < (ma + mb) * nb
123+
if nb*ma < mb*na
124124
mul!(reshape(y, (mb, ma)), B, convert(Matrix, X*At))
125125
else
126126
mul!(reshape(y, (mb, ma)), convert(Matrix, B*X), At isa MatrixMap ? At.lmap : At.λ)
@@ -136,7 +136,7 @@ Base.@propagate_inbounds function A_mul_B!(y::AbstractVector, L::KroneckerMap{T,
136136
require_one_based_indexing(y)
137137
@boundscheck check_dim_mul(y, L, x)
138138
A, B = L.maps
139-
X = reshape(x, (size(B, 2), size(A, 2)))
139+
X = LinearMap(reshape(x, (size(B, 2), size(A, 2))); issymmetric=false, ishermitian=false, isposdef=false)
140140
_kronmul!(y, B, X, transpose(A), T)
141141
return y
142142
end

0 commit comments

Comments
 (0)