-
e614d0894c
Clean up SMEM acc epilogue: flat indexing sO_acc->sC, TMA store from sC_s0
biondizzle
2026-05-27 04:57:40 +00:00
-
1724eeb8ec
Fix TMA store: use epi_s view of sC for proper layout compatibility
biondizzle
2026-05-27 04:55:18 +00:00
-
3a7d87adba
Fix test_smem_acc: use keyword args for lse/row_sums
biondizzle
2026-05-27 04:54:23 +00:00
-
6a621bdf64
D1.5: SMEM accumulator FMHA kernel — one-way TMEM→REGS→SMEM, no round-trip
biondizzle
2026-05-27 04:53:40 +00:00
-
81acf1593c
Revert "D1.5: WIP SMEM accumulator — framework in place, accumulation logic TODO"
biondizzle
2026-05-27 02:17:26 +00:00
-
72d88af400
D1.5: WIP SMEM accumulator — framework in place, accumulation logic TODO
biondizzle
2026-05-27 02:15:23 +00:00
-
a6da93ddfb
Revert "D1.5: Try O rescale with tCtO_base layout (epilogue-proven TMEM addressing)"
biondizzle
2026-05-27 02:12:20 +00:00
-
79e2eb3b42
D1.5: Try O rescale with tCtO_base layout (epilogue-proven TMEM addressing)
biondizzle
2026-05-27 02:10:39 +00:00
-
f94978ffa7
D1.5: Prepare for SMEM accumulator implementation
biondizzle
2026-05-26 21:00:41 +00:00
-
afb93eae22
D1.5: Revert broken TMEM round-trip O rescale, document as fundamentally broken
biondizzle
2026-05-26 20:55:16 +00:00
-
42c5793add
D1.5: Add isolated round-trip test comparing s_k=128 vs s_k=256 with NOOP rescale
biondizzle
2026-05-26 20:45:58 +00:00
-
e35b30dae6
D1.5 debug: try corr_tile_size=32 for O rescale round-trip
biondizzle
2026-05-26 20:43:29 +00:00
-
20ed6d5114
D1.5: Add TMEM load fence before PV with ACCUMULATE, revert debug rescale factor
biondizzle
2026-05-26 20:31:28 +00:00
-
34d64137ec
D1.5 debug: force rescale_factor=0.5 to test if round-trip code executes
biondizzle
2026-05-26 20:29:34 +00:00
-
3be708d923
D1.5 debug: add NOOP rescale test (acc_scale=1.0) to isolate TMEM round-trip corruption
biondizzle
2026-05-26 20:28:55 +00:00
-
c3648e4ebf
D1.5 debug: add targeted s_k=256 rescale diagnostic test
biondizzle
2026-05-26 20:27:37 +00:00
-
bf2c7c8bb8
D1.5: Implement in-kernel O rescale via CUTLASS correction_rescale pattern
biondizzle
2026-05-26 20:26:06 +00:00
-
064ececc9a
Update docs: D1.5 TMEM round-trip fundamentally broken, Python KV merge is production path
biondizzle
2026-05-26 19:53:10 +00:00
-
2b4f4ce538
Remove broken D1.5 paired-atom test (TMEM round-trick is fundamentally broken)
biondizzle
2026-05-26 19:50:31 +00:00
-
ffb3e736bb
D1.5: Revert broken paired-atom O rescale — TMEM round-trip fundamentally broken
biondizzle
2026-05-26 19:50:11 +00:00
-
40cbf0c223
Add D1.5 paired-atom O rescale test (s_k=256/384, hd=64/128)
biondizzle
2026-05-26 19:46:19 +00:00
-
43f0b5d1e8
D1.5: Fix O rescale with paired atoms (incremental approach)
biondizzle
2026-05-26 19:34:26 +00:00
-
4bb0e063cc
D1.5: Replace broken TMEM round-trip with correction epilogue (paired atoms)
biondizzle
2026-05-26 19:11:19 +00:00
-
f97aee6eed
plan update
biondizzle
2026-05-26 19:00:22 +00:00
-
487d960a6a
D5c multi-tile: VERIFIED cos 0.999996 with Python KV merge + sink bias
biondizzle
2026-05-26 15:40:45 +00:00
-
c9eab3c7e0
diag: rewrite multi-tile test with explicit per-segment compile and reference
biondizzle
2026-05-26 15:39:39 +00:00
-
7f983fb855
diag: add direct segment 0 test to compare with run_segment
biondizzle
2026-05-26 15:37:06 +00:00
-
2a5f9dc6e3
fix: simplify run_segment to use full hd V tensor (was incorrectly splitting by pv_n_tile)
biondizzle
2026-05-26 15:34:57 +00:00
-
aa2df1a202
diag: test n_comp=96 with sink bias directly
biondizzle
2026-05-26 15:33:38 +00:00
-
25b236fe00
diag: test D5c multi-tile with no sink bias to isolate issue
biondizzle
2026-05-26 15:31:38 +00:00
-
a3989929de
diag: per-segment reference comparison for D5c multi-tile
biondizzle
2026-05-26 15:29:52 +00:00
-
bbc29945e8
diag: add per-segment debug output for D5c multi-tile
biondizzle
2026-05-26 15:28:19 +00:00
-
e64392f1ac
D5c: add apply_sink_bias flag (independent of n_comp)
biondizzle
2026-05-26 15:26:52 +00:00
-
60b6f8ee79
fix: use separate kernels for segments with/without compressed KV (n_comp is compile-time)
biondizzle
2026-05-26 15:23:21 +00:00
-
2efd15c852
fix: correct swa_len_local calculation per segment for D5c multi-tile
biondizzle
2026-05-26 15:22:03 +00:00
-
3abcc7ff09
D5c: multi-tile test using Python KV merge with sink bias
biondizzle
2026-05-26 15:20:45 +00:00
-
57a8316bc1
update README: D5c sink bias DONE (cos 0.999996, single KV tile)
biondizzle
2026-05-26 15:17:10 +00:00
-
8f7df4d8b5
fix: mRowSums dummy tensor must match mLSE layout (3D, not 1D)
biondizzle
2026-05-26 15:14:35 +00:00
-
ffc4b542bc
D5c: use single KV tile (s_k=128) to avoid broken O rescale
biondizzle
2026-05-26 15:11:50 +00:00
-
fc0f4bcf23
diag: test D5c with single KV tile (s_k=128) to isolate O rescale issue
biondizzle
2026-05-26 15:09:49 +00:00
-
e5381b7312
diag: add baseline test (s_k=256 D3 mask, no sink bias) to isolate D5c issue
biondizzle
2026-05-26 15:08:40 +00:00
-
016edbcc97
D5c: add row_sum output for proper external normalization
biondizzle
2026-05-26 15:07:22 +00:00
-
31e6426049
fix: normalize kernel output using per-row LSE for D5c test
biondizzle
2026-05-26 15:04:47 +00:00
-
014d647ba3
fix: sink bias domain correction — add attn_sink/scale to raw logits
biondizzle
2026-05-26 15:03:49 +00:00
-
dbdbcecadc
fix: sink_bias must be pre-converted to CuTe tensor before passing to compile
biondizzle
2026-05-26 15:02:43 +00:00
-
04b66e0f9c
fix: test_d5c use float for attn_sink in reference functions
biondizzle
2026-05-26 15:01:31 +00:00
-
9d64434954
D5c: add sink bias (attn_sink) logit modification to FMHA kernel
biondizzle
2026-05-26 14:59:52 +00:00
-
60a6f2d296
update README: D5b per-row LSE, D3/D4 DONE
biondizzle
2026-05-26 11:03:57 +00:00
-
865eed0d33
cleanup: remove debug test file
biondizzle
2026-05-26 11:03:45 +00:00
-
5b55cf0767
fix: k_seg is already 3D from slicing, don't add extra unsqueeze(-1)
biondizzle
2026-05-26 11:02:44 +00:00
-
375a682206
debug: isolated KV merge test
biondizzle
2026-05-26 11:01:22 +00:00
-
2252d7c865
fix: make K/V segments contiguous before passing to kernel (TMA needs contiguous tensors)
biondizzle
2026-05-26 11:00:36 +00:00
-
5407dc768a
test: minor comment fix in D5b test
biondizzle
2026-05-26 10:59:51 +00:00
-
bb7ec341cb
fix: D5b test uses reference attn_sum for normalization, correct D5 merge formula
biondizzle
2026-05-26 10:59:04 +00:00
-
6c73069cb9
D5b: Per-row LSE output + Python KV merge test
biondizzle
2026-05-26 10:57:54 +00:00
-
4656fa81f9
update README: D3 and D4 status DONE
biondizzle
2026-05-26 10:56:57 +00:00
-
24993428a2
fix: D4 test reference computation only applies causal mask when is_causal=True
biondizzle
2026-05-26 10:56:04 +00:00
-
e3e01071f4
fix: swa_len as Int32 scalar instead of CuTe tensor
biondizzle
2026-05-26 10:54:41 +00:00
-
df84420414
fix: add is_causal to FmhaKernel __init__ signature
biondizzle
2026-05-26 10:53:14 +00:00
-
841a3e87b2
D4: Causal mask on SWA branch
biondizzle
2026-05-26 10:52:30 +00:00
-
b6b581777a
D3: In-kernel SWA sequence length masking
biondizzle
2026-05-26 10:51:23 +00:00
-
d6a56342cc
D3: add swa_lens parameter to FmhaKernel (in-kernel masking TBD)
biondizzle
2026-05-25 17:31:01 +00:00
-
e9f476b6dc
fix typo: from_dlset → from_dlpack
biondizzle
2026-05-25 17:28:43 +00:00
-
f278348f44
D3: SWA mask with BF16 min pre-masking approach (K[invalid]=BF16_MIN → scores≈-inf)
biondizzle
2026-05-25 17:27:35 +00:00
-
cfbeb9c454
D3: SWA mask test with zero-masking approach (pre-mask K/V in Python)
biondizzle
2026-05-25 17:23:03 +00:00
-
68cb0236b5
D3: add SWA sequence length mask test (reference oracle + full-window regression)
biondizzle
2026-05-25 17:20:53 +00:00
-
7f69979c5f
D1.5: add multi-KV-tile attention test with Python KV merge
biondizzle
2026-05-25 17:18:50 +00:00
-
8f35b75164
D2: comprehensive head-packed test (n_h=1, 64, 128, hd=64, 128)
biondizzle
2026-05-25 17:16:05 +00:00
-
dbe2ecbd41
D2: add num_query_heads/batch_size params + batch grid dimension
biondizzle
2026-05-25 17:15:08 +00:00
-
7c6fdd151d
fix: use reference attn_sum for normalization (kernel LSE per-row may be wrong)
biondizzle
2026-05-25 17:13:34 +00:00
-
673825c242
rewrite D2 regression test: match existing Stage D1 test pattern with cute.compile + PV tiles
biondizzle
2026-05-25 17:11:59 +00:00
-
06cb800242
fix regression test: use normalize=False + external LSE normalization
biondizzle
2026-05-25 17:06:21 +00:00
-
13b5afc471
fully revert FmhaKernel changes to debug regression
biondizzle
2026-05-25 17:04:31 +00:00
-
0b9f9da2f7
revert grid change to debug regression
biondizzle
2026-05-25 17:03:19 +00:00
-
aa66f44ff9
add n_h=1 regression test
biondizzle
2026-05-25 17:00:56 +00:00
-
efdedab399
fix tests: use 3D tensors (M, hd, 1) matching kernel local_tile expectations
biondizzle
2026-05-25 16:54:56 +00:00
-
a4499f5aa8
fix tests: pad Q to 128 rows (M tile size) for all configs
biondizzle
2026-05-25 16:53:17 +00:00
-
af136eee27
fix: use CUstream instead of cuStream(0)
biondizzle
2026-05-25 16:51:52 +00:00
-
4826fa6afb
D2: add num_query_heads/batch_size params + head-packed test
biondizzle
2026-05-25 16:50:49 +00:00
-
d53e0a33a9
NVFP4-3: add use_2cta_instrs conditional to gemm_runner
biondizzle
2026-05-25 16:42:02 +00:00
-
22a2fc563e
cleanup: remove diagnostic test file
biondizzle
2026-05-25 16:25:05 +00:00
-
a064b99d3d
fix test 4: use silu(gate)+swiglu interleaved (matching fused kernel output)
biondizzle
2026-05-25 16:24:04 +00:00
-
e76ea36337
fix test: use proper global_scale from quantize_to_nvfp4 for larger shape test
biondizzle
2026-05-25 16:23:00 +00:00
-
5290c91c35
fix quantize_nvfp4 kernel: use proven single-thread-per-CTA pattern from deinterleave_quantize.cu
biondizzle
2026-05-25 16:21:44 +00:00
-
5508f29625
add GPU quantize diagnostic test
biondizzle
2026-05-25 16:20:29 +00:00
-
c2e3d15633
NVFP4-1.1 integration: GPU-only quantize kernel + MoE pipeline wiring
biondizzle
2026-05-25 16:19:04 +00:00
-
6504f091ca
NVFP4-1.1 Step 3: post-SWiGLU quantization test suite (all PASS)
biondizzle
2026-05-25 09:08:01 +00:00
-
5e8347836f
NVFP4-1.1: working BF16→FP4 quantize kernel (cos 0.979)
biondizzle
2026-05-25 08:58:19 +00:00
-
52d11d7f92
NVFP4-1.1: standalone BF16→FP4 quantize kernel (WIP) + dequantize verification
biondizzle
2026-05-25 03:23:44 +00:00
-
1f310defa0
fix: quantize_activation_nvfp4 returns 2 values, not 3
biondizzle
2026-05-25 03:17:13 +00:00
-
6dac3bcaf0
NVFP4-1.1: add FP4 quantize round-trip test (step 1 of kernel fusion)
biondizzle
2026-05-25 03:15:40 +00:00
-
eb46e4d15e
NVFP4-0.2-0.4: add FP4 primitives diagnostic test
biondizzle
2026-05-25 03:07:53 +00:00
-
29ad36934d
cleanup: remove D2 diagnostic/experimental files, keep working codebase clean
biondizzle
2026-05-25 02:40:12 +00:00
-
d5b69ac122
D2: simpler shape diagnostic using CuTe from Python (no kernel needed)
biondizzle
2026-05-25 02:36:41 +00:00
-
684e9a85fe
fix: use utils.sm100 instead of sm100 in diagnostic
biondizzle
2026-05-25 02:34:25 +00:00
-
7599801f57
D2: add flat_divide shape diagnostic kernel for multi-CTA grid
biondizzle
2026-05-25 02:33:15 +00:00
-
32850f6974
Update README, STAGE_D, STAGE_D2 with D1 rescale findings and D2 status
biondizzle
2026-05-25 01:18:48 +00:00
-
6cc151097e
Revert D2 multi-CTA attempts - keeping per-head launch approach (works correctly)
biondizzle
2026-05-25 01:08:38 +00:00
-
34f5beb767
D2: fix gC coordinate to match 5-mode flat_divide result
biondizzle
2026-05-24 23:44:39 +00:00
-
a3559538cf
D2: try 6-mode coordinate for flat_divide result
biondizzle
2026-05-24 23:43:23 +00:00