AstrAI/csrc
ViperEkura 85dc771460 perf: reduce MMA kernel registers, switch to static smem
- Move Qa[KD][4] into tile loop (reload from sQ per tile)
  cutting ~32 resident registers for HEAD_DIM=128
- Replace extern __shared__ with static template-sized smem
  (no cudaFuncSetAttribute or dynamic allocation needed)
- Add __launch_bounds__ with MIN_BLOCKS param, dispatch by HEAD_DIM
  (hd=128→4, hd=64→6, hd=32→6)
- Remove dynamic smem from scalar kernel and C test
- Result: hd=128 168→128 regs, 25%→33% occupancy
2026-07-10 00:39:47 +08:00
..
kernels perf: reduce MMA kernel registers, switch to static smem 2026-07-10 00:39:47 +08:00
tests perf: reduce MMA kernel registers, switch to static smem 2026-07-10 00:39:47 +08:00
__init__.py feat: add optional CUDA kernel system (csrc/) + fused GQA decode attention 2026-07-06 12:09:58 +08:00
build.py perf: add fast-math and vectorization nvcc/cxx build flags 2026-07-07 22:28:32 +08:00