Skip to content

Commit 7c3a9b6

Browse files
committed
Simplify small Bidiagonal-AbstractVecOrMat multiplication
1 parent 243efdb commit 7c3a9b6

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

src/bidiag.jl

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -953,11 +953,10 @@ function _mul!(C::AbstractVecOrMat, A::BiTriSym, B::AbstractVecOrMat, _add::MulA
953953
nB = size(B,2)
954954
(iszero(nA) || iszero(nB)) && return C
955955
iszero(_add.alpha) && return _rmul_or_fill!(C, _add.beta)
956-
if nA <= 3
957-
# naive multiplication
958-
for I in CartesianIndices(C)
959-
col = Base.tail(Tuple(I))
960-
_modify!(_add, sum(A[I[1], k] * B[k, col...] for k in axes(A,2)), C, I)
956+
if nA == 1
957+
A11 = @inbounds A[1,1]
958+
for i in 1:nB
959+
@inbounds _modify!(_add, A11 * B[1,i], C, (1,i))
961960
end
962961
return C
963962
end

0 commit comments

Comments
 (0)