Skip to content

[gfx1250] Add 256x256 compute-bound GEMM (WIP) - #971

Draft
aoli26 wants to merge 8 commits into
mainfrom
gfx1250/gemm-opt-0805
Draft

[gfx1250] Add 256x256 compute-bound GEMM (WIP)#971
aoli26 wants to merge 8 commits into
mainfrom
gfx1250/gemm-opt-0805

Conversation

@aoli26

@aoli26 aoli26 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Motivation

Add 256x256 tile specific compute-bound A8W4 kernel for gfx1250. A4W4 and A8W8 WIP.

Technical Details

  • gemm_a8w4_256x256_gfx1250.py (new): hand-scheduled for exactly one profile — 256x256x128 tile, 2x2 waves. Hand-placed s_wait_dscnt/READY fences, odd/even wave-parity loop clones, operand-major planar LDS with B in its own 64 KiB segment.
  • tdm_ops.py: add update_tensor_descriptor_2d_lds_addr (re-point one persistent descriptor per ring slot); widen lds_memref to accept !fly.memref. Both additive.
  • Also folds the a8w8 mx32/mx128/ptpc variants into one launcher via is_mxscale / block_size constexprs.

Test Plan

pytest tests/kernels/test_gemm_fp8fp4_gfx1250.py on gfx1250.

Test Result

All tests passed.

Submission Checklist

@aoli26
aoli26 force-pushed the gfx1250/gemm-opt-0805 branch from 3cf26da to 462fd44 Compare August 6, 2026 09:35
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.

1 participant