@@ -519,7 +519,7 @@ function add_transform_kernel!(tdst::TensorMap,
519519 structure_src = transformer. structure_src. fusiontreestructure
520520
521521 tforeach (transformer. rows, transformer. cols, transformer. vals;
522- backend. scheduler ) do row, col, val
522+ scheduler = backend. subblockscheduler ) do row, col, val
523523 sz_dst, str_dst, offset_dst = structure_dst[col]
524524 subblock_dst = StridedView (tdst. data, sz_dst, str_dst, offset_dst)
525525
@@ -546,7 +546,7 @@ function add_transform_kernel!(tdst::TensorMap,
546546 rows = rowvals (transformer. matrix)
547547 vals = nonzeros (transformer. matrix)
548548
549- tforeach (axes (transformer. matrix, 2 ); backend. scheduler ) do j
549+ tforeach (axes (transformer. matrix, 2 ); scheduler = backend. subblockscheduler ) do j
550550 sz_dst, str_dst, offset_dst = structure_dst[j]
551551 subblock_dst = StridedView (tdst. data, sz_dst, str_dst, offset_dst)
552552 nzrows = nzrange (transformer. matrix, j)
602602
603603function _add_abelian_kernel! (tdst, tsrc, p, fusiontreetransform, α, β,
604604 backend:: TensorKitBackend , allocator)
605- tforeach (fusiontrees (tsrc); backend. scheduler ) do (f₁, f₂)
605+ tforeach (fusiontrees (tsrc); scheduler = backend. subblockscheduler ) do (f₁, f₂)
606606 return _add_abelian_block! (tdst, tsrc, p, fusiontreetransform,
607607 f₁, f₂, α, β, backend. arraybackend, allocator)
608608 end
@@ -624,16 +624,17 @@ function _add_general_kernel!(tdst, tsrc, p, fusiontreetransform, α, β, backen
624624 tdst = scale! (tdst, β)
625625 end
626626 β′ = One ()
627- if backend. scheduler isa SerialScheduler
627+ if backend. subblockscheduler isa SerialScheduler
628628 for (f₁, f₂) in fusiontrees (tsrc)
629629 for ((f₁′, f₂′), coeff) in fusiontreetransform (f₁, f₂)
630630 @inbounds TO. tensoradd! (tdst[f₁′, f₂′], tsrc[f₁, f₂], p, false , α * coeff,
631631 β′, backend. arraybackend, allocator)
632632 end
633633 end
634634 else
635- tforeach (Iterators. product (sectors (codomain (tsrc)), sectors (domain (tsrc)))) do (s₁,
636- s₂)
635+ tforeach (Iterators. product (sectors (codomain (tsrc)), sectors (domain (tsrc)));
636+ scheduler= backend. subblockscheduler) do (s₁,
637+ s₂)
637638 return _add_nonabelian_sector! (tdts, tsrc, p, fusiontreetransform, s₁, s₂, α,
638639 β′, backend. arraybackend, allocator)
639640 end
0 commit comments