[BUG] Incorrect assertion logic in check_barrier_in_range
in barrier.h
#1781
Labels
bug
Something isn't working
check_barrier_in_range
in barrier.h
#1781
Describe the bug
When the Stream-K scheduler is used along with the TMA Cooperative kernel, which can contain more than 2 mma warp groups, stream-k raises a assertion error in fixup() method.Atsm90_tile_scheduler_stream_k.hpp
: L363-378,Here,MaxNumNamedBarriers
is set to 2. However, when it is used in conjunction with the Cooperative kernel, it raises an assertion error caused by the wrong assumption on the number of MMA WGs, I guess.EDIT: the bug seems to be caused by the wrong assertion logic described below.
Steps/Code to reproduce bug
I can't provide the code stub right now since it's proprietary, but the gemm configuration goes like this:
e4m3 x e4m3 -> f16
128x64x64
2x1x1
cutlass::gemm::KernelTmaWarpSpecializedCooperative
cutlass::epilogue::TmaWarpSpecializedCooperative
CollectiveBuilder
I found this error in my project when I accidently entered Debug mode with no
-NDEBUG
flag. It works correctly when it compiles with Release mode in whichassert()
has no effect.Expected behavior
MaxNumNamedBarriers
should be set to 3 or larger.EDIT: See below
Environment details (please complete the following information):
The text was updated successfully, but these errors were encountered: