gqa_pack_ctas

Function gqa_pack_ctas 

Source
pub fn gqa_pack_ctas(num_kv_heads: u32, num_seqs: u32) -> u32
Expand description

CTAs a packed launch puts on the device, against the unpacked count.

Exposed because it is the whole trade and it belongs next to the constant that sets it, not only in a comment: (nkv, num_seqs) against (nq, num_seqs) is a DECODE_GQA_PACK_WIDTH-fold cut in CTAs for an unchanged amount of work. At the GB10 shape (nkv = 4, 48 SMs) the packed grid stops under-filling the device at num_seqs >= 12; below that the launch leaves SMs idle, which is the cost side of the A/B this is gated behind.