Skip to content

Fix maximum_active_blocks wrappers passing int to CudaHostAdapter* - #3638

Open
chrisXYZhang wants to merge 2 commits into
NVIDIA:mainfrom
chrisXYZhang:fix/maximum-active-blocks-signature
Open

chrisXYZhang wants to merge 2 commits into
NVIDIA:mainfrom
chrisXYZhang:fix/maximum-active-blocks-signature

Conversation

@chrisXYZhang

@chrisXYZhang chrisXYZhang commented Sep 14, 2026

Copy link
Copy Markdown

Summary

  • Six 2.x device wrappers forwarded an int argument to GemmUniversalBase::maximum_active_blocks(), which changed its parameter to CudaHostAdapter* in CUTLASS 3.4. This causes a compilation error. Fixed by commenting out the unused parameter name and calling without forwarding, so it picks up the default nullptr.
  • The column-major specialisations of RankK, Rank2K, and Symm forwarded to primaries that never defined maximum_active_blocks(), making them dead code. Removed them rather than adding a new API to the primaries. Happy to take a different direction if maintainers prefer adding the query instead.

Files changed

Signature fix (6 files):

  • include/cutlass/gemm/device/gemm_universal.h
  • include/cutlass/gemm/device/gemm_universal_with_broadcast.h
  • include/cutlass/gemm/device/gemm_universal_streamk_with_broadcast.h
  • include/cutlass/gemm/device/gemm_universal_with_absmax.h
  • include/cutlass/gemm/device/gemm_with_k_reduction.h
  • include/cutlass/gemm/device/gemm_layernorm_mainloop_fusion.h

Dead forwarder removal (3 files):

  • include/cutlass/gemm/device/rank_k.h
  • include/cutlass/gemm/device/rank_2k.h
  • include/cutlass/gemm/device/symm.h

Test plan

  • Verify compilation of affected device wrappers with CUDA toolkit
  • Confirm no callers depend on the removed methods in rank_k/rank_2k/symm

Fixes #3534

Six 2.x device wrappers forwarded an int argument to
GemmUniversalBase::maximum_active_blocks(), which now expects
CudaHostAdapter*. Comment out the unused parameter name and
call without forwarding so it picks up the default nullptr.

The column-major specialisations of RankK, Rank2K, and Symm
forwarded to primaries that never defined maximum_active_blocks,
making them dead code. Remove them rather than adding a new API.

Fixes NVIDIA#3534
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

maximum_active_blocks wrappers pass int into CudaHostAdapter* and no longer compile

1 participant