AstrAI/csrc/kernels
ViperEkura 69fecaf387 perf: double-buffer KV pipeline and Q direct-to-register in decode
- Double-buffered KV (STAGES=2) for D<=128: next tile cp.async overlaps current tile MMA compute, hiding global load latency
- Q loaded directly from global into mma A-operand registers, removing sQ staging and prologue syncwarp
- Predicated cp.async unifies full and partial tile paths, eliminating scalar fallback branch
- STAGES=1 fallback for D=256 (double-buffer would exceed smem budget)
- Applied to both contiguous and paged decode MMA kernels
- ~1.27x average speedup on L20 (sm_89), zero precision loss
2026-07-12 14:14:54 +08:00
..
attn_common.h feat: paged decode attention with split-KV (scalar + MMA) 2026-07-11 18:14:51 +08:00
attn_decode.cu perf: double-buffer KV pipeline and Q direct-to-register in decode 2026-07-12 14:14:54 +08:00
attn_decode_split_kv.cuh refactor: template AttentionParams, rename .cuh to .h 2026-07-11 11:03:14 +08:00
attn_decode_split_kv_mma.cuh perf: double-buffer KV pipeline and Q direct-to-register in decode 2026-07-12 14:14:54 +08:00
attn_entry_utils.cuh refactor: template AttentionParams, rename .cuh to .h 2026-07-11 11:03:14 +08:00
attn_mma_utils.cuh refactor: template AttentionParams, rename .cuh to .h 2026-07-11 11:03:14 +08:00
attn_paged_decode.cu perf: double-buffer KV pipeline and Q direct-to-register in decode 2026-07-12 14:14:54 +08:00
attn_paged_decode_split_kv.cuh feat: paged decode attention with split-KV (scalar + MMA) 2026-07-11 18:14:51 +08:00
attn_paged_decode_split_kv_mma.cuh perf: double-buffer KV pipeline and Q direct-to-register in decode 2026-07-12 14:14:54 +08:00
attn_prefill.cu refactor: template AttentionParams, rename .cuh to .h 2026-07-11 11:03:14 +08:00
attn_prefill_split_q.cuh refactor: template AttentionParams, rename .cuh to .h 2026-07-11 11:03:14 +08:00
attn_prefill_split_q_mma.cuh refactor: template AttentionParams, rename .cuh to .h 2026-07-11 11:03:14 +08:00