This website requires JavaScript.
432dfec3c2
refactor: collapse fp8 recipe hierarchy and state property layers
main
ViperEkura
2026-08-29 20:03:32 +08:00
e3c3e28a11
docs: fix stale developer documentation claims
ViperEkura
2026-08-29 14:34:07 +08:00
a7d4cb25c5
docs: scope trainer environment variables per job
ViperEkura
2026-08-29 14:01:40 +08:00
0546331637
fix: skip gradient checkpointing log when no modules configured
ViperEkura
2026-08-29 11:18:39 +08:00
962c10c52b
perf: fold the delayed-scaling ring update into the quantize kernel
ViperEkura
2026-08-29 09:16:22 +08:00
1cf7d6c76b
perf: fill steady-state decode input ids via d2d copy
ViperEkura
2026-08-28 22:55:35 +08:00
36e39496d4
perf: vectorize tiled fp8 transpose quantize and arm amax via memset
ViperEkura
2026-08-28 22:39:02 +08:00
a1a1a6bf0f
perf: pack gqa q-heads per prefill block to reuse kv tiles
ViperEkura
2026-08-31 13:38:48 +08:00
7dd184a4e5
refactor: split fp8 gemm device code into layered headers
ViperEkura
2026-08-28 17:29:13 +08:00
bf239d194c
refactor: dedupe fp8 kernel helpers and trim comments
ViperEkura
2026-08-28 16:45:21 +08:00
8a353117ea
perf: transpose-quantize backward operands to route all gemms nt
ViperEkura
2026-08-28 16:11:22 +08:00
04a8e2517a
perf: split fp8 gemm cta plan by operand layout
ViperEkura
2026-08-28 12:44:34 +08:00
c4f7f82725
refactor: drop dead fp8 gemm knobs and dedupe ring depth logic
ViperEkura
2026-08-28 01:55:30 +08:00
fac9d07542
refactor: fp8 gemm policy layering with swap-NN and narrow-N ctas
ViperEkura
2026-08-28 01:21:55 +08:00
bbb2d95256
fix: report true rank in logs via dist-aware helpers
ViperEkura
2026-08-27 13:39:38 +08:00
1c04a0b9fa
refactor: move runtime parsers into scripts/docker
ViperEkura
2026-08-27 12:33:32 +08:00
ba8beb81be
fix: serve and train reuse the built image and expose GPUs correctly
ViperEkura
2026-08-27 12:22:02 +08:00
7cfcc6c86a
Merge pull request #26 from Cytosine-code/fix/cuda-kernel-install
ViperEkura
2026-08-27 05:07:44 +08:00
f4c44ebf1c
docs: correct fp8 kernel descriptions in cuda_kernels guide
ViperEkura
2026-08-27 05:07:41 +08:00
f86f605f5f
fix: make CUDA kernel installation reliable
Cytosine
2026-08-27 02:34:16 +08:00
4c82d5d84b
perf: dispatch non-128-divisible shapes to the 64x64 cta
ViperEkura
2026-08-26 19:02:50 +08:00
76aa4edc9f
perf: skip grad-bias reduce for bias-free linears
ViperEkura
2026-08-26 18:50:54 +08:00
6354dbe8bc
perf: interleave prefetch into the mma phase
ViperEkura
2026-08-26 16:36:43 +08:00
f45230fb2c
perf: pair b fragments into ldmatrix x4 loads
ViperEkura
2026-08-26 15:43:09 +08:00
d4534be8ca
perf: single-wave big cta takes a stage deeper pipeline
ViperEkura
2026-08-26 15:00:02 +08:00
1d57588d27
fix: free default ubuntu uid/gid before creating astrai user
ViperEkura
2026-08-26 15:00:15 +08:00
a92bf79295
perf: fast interior loop on the big cta and fused epilogue bias
ViperEkura
2026-08-26 14:52:06 +08:00
f7d96455a5
perf: base-pair fragment addressing and full-ring small cta
ViperEkura
2026-08-26 14:10:14 +08:00
8cfe7536ea
perf: retarget fp8 gemm tile dispatch and prune dead configs
ViperEkura
2026-08-26 08:24:51 +08:00
a8b63fa362
chore: untrack fp8 sweep tool
ViperEkura
2026-08-26 07:22:07 +08:00
4d6a244093
perf: fp8 batched gemm and measured dispatch table
ViperEkura
2026-08-26 06:45:14 +08:00
01eacbde51
perf: speed up fp8 gemm across small and large shapes
ViperEkura
2026-08-25 22:24:51 +08:00
057c0d33df
refactor: split quantize into multi-type primitive
ViperEkura
2026-08-25 20:07:17 +08:00
3e57cc8069
feat: fp8 backward reuses pre-quantized operands
ViperEkura
2026-08-25 17:24:20 +08:00
2eeac02d70
perf: overlap direct crosswise loads with fp8 gemm mma
ViperEkura
2026-08-25 14:22:51 +08:00
5e76fbd1bf
perf: fp8 rings, lean autocast, gemm staging
ViperEkura
2026-08-25 14:22:51 +08:00
4dc5e923e0
perf: finalize fp8 scale rings inside quantize kernels
ViperEkura
2026-08-25 11:07:31 +08:00
998b443aa3
refactor: dedupe fp8 meta state into per-operand rings
ViperEkura
2026-08-24 21:19:45 +08:00
cebdd45d3a
perf: batch crosswise stage loads in fp8 gemm
ViperEkura
2026-08-24 19:49:10 +08:00
7da1439c9e
feat: static fp8 weights and bias with fused epilogue
ViperEkura
2026-08-24 19:23:11 +08:00
29e5f571af
fix: own fp8 linear backward via autograd Function
ViperEkura
2026-08-24 19:03:01 +08:00
74e694921c
perf: speed up fp8 gemm tiles and scheduling
ViperEkura
2026-08-24 18:29:55 +08:00
d5067af064
refactor: harden param PODs and CUTLASS-style fp8 layout tags
ViperEkura
2026-08-24 15:27:52 +08:00
f6db546578
fix: zero-init AttentionParams in pure C tests
ViperEkura
2026-08-24 14:55:32 +08:00
31ca357c61
refactor: namespace csrc kernels and extract common helpers
ViperEkura
2026-08-24 14:49:55 +08:00
34471252ab
perf: pipeline fp8 gemm fragment loads and pack bf16 epilogue
ViperEkura
2026-08-23 21:31:20 +08:00
aa08479285
perf: widen fp8 gemm tile and load fragments with ldmatrix
ViperEkura
2026-08-23 21:12:56 +08:00
4b10d3ca37
perf: vectorize fp8 quantize and swizzle gemm smem
ViperEkura
2026-08-23 20:23:57 +08:00
2bc4d2b8a8
refactor: unify kernel module loading and packaging
ViperEkura
2026-08-23 15:57:04 +08:00
4244df2785
perf: pure FP8 fwd/bwd and lean non-transposed GEMM - drop the fused kernel; forward/backward are quantize + a pre-quantized GEMM - rename module fp8_mm -> fp8_ops (mm.cu -> ops.cu) - kernels/launchers fp8_gemm_kernel / launch_fp8_gemm; drop PqTraits/gather_trans/pack_fp8x4_vector - remove the in-kernel transposed-operand branches (TransA/TransB) - backward: quantize g once (amax_g here), explicit fp8 transposes, fast non-transposed GEMMs (dX = g@w^T, dW = g^T@x^T) - each pass uses a single FP8 format (E4M3 fwd / E5M2 bwd)
ViperEkura
2026-08-23 15:37:42 +08:00
a29bdfae46
refactor: rework attention backend resolution
ViperEkura
2026-08-23 14:47:02 +08:00
10fec8dca1
docs: fix stale docs and align with code
ViperEkura
2026-08-23 14:23:28 +08:00
75304d084d
refactor: unify CUDA skip guards in tests
ViperEkura
2026-08-22 21:08:06 +08:00
16a55bb474
refactor: reorganize CUDA kernels into per-family directories
ViperEkura
2026-08-22 20:39:10 +08:00
cb21af38ba
feat: unify Docker serving configuration in YAML
ViperEkura
2026-08-21 23:16:08 +08:00
dcc96de12a
test: refactor tests and fix inference edge cases
ViperEkura
2026-08-21 22:59:15 +08:00
7d27f3e078
feat: load HuggingFace checkpoints via key/config conversion
ViperEkura
2026-08-20 11:34:48 +08:00
84753d3e08
refactor: deduplicate and restructure test suite
ViperEkura
2026-08-20 01:52:49 +08:00
53a7149577
feat: add distributed rank to logs
ViperEkura
2026-08-20 01:37:00 +08:00
c79d34eee1
refactor: simplify training and inference interfaces
ViperEkura
2026-08-19 20:14:53 +08:00
398e8a3ea3
refactor: deduplicate low-risk code paths
ViperEkura
2026-08-19 16:17:40 +08:00
f252af495c
refactor: remove dead code and deduplicate scheduler setup
ViperEkura
2026-08-19 14:58:37 +08:00
00c2c80c8f
feat: unify Docker training configuration in YAML
ViperEkura
2026-08-19 14:04:35 +08:00
a6c6a54ace
feat: read host training vars from YAML infra section
ViperEkura
2026-08-19 01:26:50 +08:00
3d3ea47d37
refactor: standardize packed 3d inference
ViperEkura
2026-08-19 00:30:14 +08:00
f7f14d0e5f
test: add online GRPO end-to-end training test
ViperEkura
2026-08-19 00:07:16 +08:00
7580d80d45
perf: accelerate FP8 backward with fused fast kernel
ViperEkura
2026-08-18 23:43:06 +08:00
cb51a3587b
perf: optimize fused FP8 GEMM kernel
ViperEkura
2026-08-18 19:56:15 +08:00
1bcd8f53ab
perf: precompute ragged Q tile scheduling
ViperEkura
2026-08-16 23:32:46 +08:00
0d0dc64884
docs: explain extension layer boundaries
ViperEkura
2026-08-16 21:30:03 +08:00
6ac3b51496
refactor: separate extension ops and backends
ViperEkura
2026-08-16 21:15:52 +08:00
3406157431
refactor: standardize packed 3d inference
ViperEkura
2026-08-16 13:15:23 +08:00
0dd9a417b7
refactor: separate KV token address resolution
ViperEkura
2026-08-15 22:59:35 +08:00
a01c1fd427
perf: bypass L1 for attention tile loads
ViperEkura
2026-08-15 21:23:20 +08:00
f8d9ab344d
refactor: remove unused streaming dataset
ViperEkura
2026-08-15 20:55:08 +08:00
3fb4b8ab13
perf: use int32 paged KV indices
ViperEkura
2026-08-15 13:12:16 +08:00
b5afe3d7a4
perf: optimize small-head causal prefill
ViperEkura
2026-08-14 23:25:49 +08:00
69f35c46e0
fix: quantize amax from raw values, not scaled fp8 values - amax for delayed scale was the quantized max (always ~448), so scale collapsed to 1 - this made fp8 gradients diverge (cosine 0.05) and training stall - stop w/x transpose-quantize amax from polluting the grad scale
ViperEkura
2026-08-14 12:38:07 +08:00
0378e62e17
refactor: split fp8 into fp8_ops adapter and fp8 policy module - fp8_ops is the only module touching the pybind (kernel interface) - fp8.py keeps scaling state, delayed amax and aten::linear dispatch - remove circular imports between old fp8_ops/fp8_state/fp8_dispatch
ViperEkura
2026-08-14 12:22:54 +08:00
5244f1a8fc
feat: add te-style scaled fp8 training via fp8_autocast - per-tensor scales applied inside cublasLt via A_SCALE/B_SCALE - delayed scaling: weight amax history ring, refresh every 16 steps - quantize kernels emit atomic amax, device-side scale updates - fp8_autocast context toggles aten::linear dispatch like torch.autocast - fallback to bf16 when M/N not 16-aligned (fp8 gemm constraint) - x/g scales delayed one step, reuse free atomic amax (no abs/max reduce)
ViperEkura
2026-08-14 12:14:04 +08:00
5104638447
perf: use fp8 tensor-core gemm in linear backward - dX/dW run as fp8 cublasLt gemms via fused transpose-cast - shared (m,k,n) algo cache for fwd/bwd, mutex-protected - bias add in-place on bf16 output, drop output copy
ViperEkura
2026-08-14 10:43:03 +08:00
a711d9f478
perf: eliminate gemm output transpose via A/B swap
ViperEkura
2026-08-14 01:41:45 +08:00
15862d4b56
perf: fuse fp8 linear fwd and bwd into single kernel calls
ViperEkura
2026-08-14 01:24:37 +08:00
f9efb705b8
perf: output fp8 gemm in bf16 instead of fp32
ViperEkura
2026-08-14 01:08:26 +08:00
c6a82a5029
refactor: align linear backward dtype with weight
ViperEkura
2026-08-14 00:58:53 +08:00
a5b238dd86
feat: add fp8 training via cublasLt dispatch
ViperEkura
2026-08-14 00:37:52 +08:00
da6d94492d
fix: parse yaml floats with yaml 1.2 schema
ViperEkura
2026-08-13 23:28:06 +08:00
71b6e3aaaf
feat: rework docker workflow for gpu-first training
ViperEkura
2026-08-13 22:47:34 +08:00
f95722a277
feat: add containerized training workflow
ViperEkura
2026-08-12 20:20:07 +08:00
9f48cb8928
refactor: streamline Q block mapping
ViperEkura
2026-08-10 08:39:43 +08:00
9b58fef222
refactor: extract QTileMapper for prefill tile dispatch
ViperEkura
2026-08-09 23:18:00 +08:00
c5fba9c238
perf: flatten paged prefill tile dispatch
ViperEkura
2026-08-09 23:12:01 +08:00
cd31f1f62f
refactor: tidy attention params and launcher interfaces
ViperEkura
2026-08-09 20:52:06 +08:00
a5a3cc1fc2
refactor: unify attention param field names
ViperEkura
2026-08-09 20:22:40 +08:00
d565d44c43
fix: harden attention kernel boundaries - fix scalar prefill head_dim=32 out-of-bounds via G=4 dispatch - fix MMA decode 4D mask head indexing and invalid-row mask access - add q_head/kv_head divisibility and head-dim contiguity checks - validate split-KV scratch and decode out_buf layout in bindings - set max dynamic shared memory for scalar decode D=256 - cover scalar prefill D=32 in pure C test
ViperEkura
2026-08-09 14:52:27 +08:00
596c35fd71
fix: report gradient snr in db
ViperEkura
2026-08-09 13:40:27 +08:00
47b3ed4e44
feat: propagate attention backend across scheduler threads
ViperEkura
2026-08-09 13:29:30 +08:00
c1d05ae11d
perf: benchmark decode via real inference engine
ViperEkura
2026-08-09 11:47:14 +08:00
cf4f5ab9f6
feat: add persistent DataLoader workers
ViperEkura
2026-08-09 11:38:50 +08:00
3416f98c58
fix: wire benchmark cache selection
ViperEkura
2026-08-09 10:56:05 +08:00