diff --git a/include/cutlass/gemm/kernel/sm90_tile_scheduler_stream_k.hpp b/include/cutlass/gemm/kernel/sm90_tile_scheduler_stream_k.hpp index a298e06bf4..abefc9b6a6 100644 --- a/include/cutlass/gemm/kernel/sm90_tile_scheduler_stream_k.hpp +++ b/include/cutlass/gemm/kernel/sm90_tile_scheduler_stream_k.hpp @@ -333,8 +333,10 @@ class PersistentTileSchedulerSm90StreamK { if (continue_current_work(work_tile_info)) { return false; } + // Create a copy to avoid unit_iter_start_ being modified + uint32_t unit_iter_start = unit_iter_start_; return not get_current_work_for_linear_idx( - unit_iter_start_, + unit_iter_start, current_work_linear_idx_ + ( uint64_t(gridDim.x) * uint64_t(gridDim.y) * uint64_t(gridDim.z) * uint64_t(advance_count) ),