-
Notifications
You must be signed in to change notification settings - Fork 570
[RadeonFlow] MXFP4 (a4w4) MoE backend for gfx950 #3832
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
110 commits
Select commit
Hold shift + click to select a range
fa0763b
[PERF] MXFP4 (a4w4) MoE backend for gfx950 (#3470)
ColorsWind b035559
rename aux dir to moe_aux
Bernard-Liu 46ecc44
Port flydsl a4w4 MoE onto randomflow_pr (coexist with HIP #3470) (#3788)
fsx950223 0a0d0ef
flydsl mxfp4 gemm1/gemm2: raw-pointer (data_ptr i64) ABI
ColorsWind 6cbec45
flydsl mxfp4 gemm2: large-M (BM128) optimizations
ColorsWind b51ec85
flydsl mxfp4 gemm1: hardware exp2 in silu
ColorsWind b242ba6
[RadeonFlow] flydsl mxfp4 a4w4 MoE: bring gemm1/gemm2 to parity with …
ColorsWind 05567f6
[RadeonFlow] Integrate HIP Sort/Quant in MoE Pipeline (#3827)
ftyghome a595f9e
lgkmcnt
benenzhu e90d47f
flydsl mxfp4 gemm2: pipeline fp4-out epilog LDS reads (lgkmcnt -68%, …
benenzhu ead7f82
Merge branch 'main' of github.com:ROCm/aiter into dev/randomflow_pr
benenzhu 4fd9bca
mxfp4 moe: route Kimi rows to FlyDSL port + replace kernelName regex …
benenzhu ef6046a
mxfp4 moe: drop HIP gemm1/gemm2 backend, run gemm exclusively on FlyD…
benenzhu a389c89
Merge pull request #1 from RadeonFlow/radeonflow_pr_flydsl_perf2
ColorsWind 48ac23b
flydsl mxfp4 gemm1: prologue vmcnt relax + BM128 scale-first ds_read
ColorsWind 35d2a30
flydsl mxfp4 gemm2: float fabs/maxnum amax in mxfp4out epilog
ColorsWind 6376142
flydsl mxfp4 moe: gate gemm2 mxfp4-out solely on AITER_MXFP4_INTERMED…
ColorsWind da4cb4c
Merge dev/randomflow_pr into radeonflow_pr_flydsl_perf (resolve #3861…
ftyghome d2d28f0
[RadeonFlow] flydsl mxfp4 a4w4 MoE: improv perf (#3861)
ColorsWind 6a50c71
mxfp4 moe tuner: enumerate the FlyDSL a4w4 port as tuning candidates
benenzhu 5a163cb
Merge remote-tracking branch 'rocm/dev/randomflow_pr' into dev/random…
benenzhu 2fafb5c
mxfp4 moe: fix ruff lint (unused imports/var + lambda-assignment)
benenzhu 38195a0
mxfp4 moe: apply black formatting
benenzhu f3c44b3
mxfp4 moe aux: guard gfx950-only fp4-cvt builtin for multi-arch builds
benenzhu 0ac4ffd
mxfp4 moe: drop dead HIP-era tests + the unused D_INTER=192 shape
benenzhu 9eb354c
mxfp4 moe: add more shape dispatch
ftyghome 91c4336
mxfp4 moe: split model dispatch csv files
ftyghome 6a580ab
mxfp4 moe: fix a4w4 test weight layout (use a16w4 shuffle for the port)
benenzhu 318ae1e
mxfp4 moe configs: normalize guitlv CSV line endings to LF
benenzhu b8520c2
mxfp4 moe: drop test_mxfp4_moe_128k_chunk.py (gfx950-only, fails on M…
benenzhu 2f33c0f
Merge branch 'main' into dev/randomflow_pr
coderfeli 5fd3ceb
flydsl mxfp4 gemm1: compiler-managed K-loop fence
ftyghome dac7d97
flydsl mxfp4 gemm2: compiler-managed barrier, drop hand-tuned waitcnts
ftyghome c708799
Merge upstream/dev/randomflow_pr into radeonflow_pr_flydsl_perf
ftyghome 8814138
mxfp4 moe: drop orphan gemm_common.hpp; revert jit lineinfo flag
ColorsWind 499b4e9
[RadeonFlow] accu fix + clean (#3884)
ColorsWind 437bcf9
chore: merge guitlv csv into fp4 csv
ftyghome e333923
cleanup: remove unnecessary comments
ftyghome 66ea2c3
sort rewrite
benenzhu ff7b819
fix: mxfp4 tuned config lock to manually selected ones (#3887)
ftyghome c13225c
feat(mxfp4-moe): AOT pre-compile + flyc.compile low-overhead launch f…
coderfeli 9cfa7dd
fix(mxfp4-moe): import fused_moe deps from source modules for AOT
benenzhu aff0ca3
fix(mxfp4-moe): extract pure kname parsing to avoid JIT load during AOT
benenzhu 7bcee9b
fix(mxfp4-moe): make FlyDSL AOT precompile GPU-free
benenzhu 515d90d
fix: add missing dsv4 shapes
ftyghome c50c3e3
Merge remote-tracking branch 'origin/dev/randomflow_pr' into radeonfl…
ftyghome d82bb7c
rename kernels and csv to align original style
coderfeli e54baa4
style: black-format mxfp4_kname (wrap long ValueError)
coderfeli 71f5314
fix aot
zhangnju 8ce2969
Merge remote-tracking branch 'rocm/main' into dev/randomflow_pr2
benenzhu d99e500
revert non-kimik2_5 fp4 fmoe CSVs to rocm/main
benenzhu 36efe5b
feat(mxfp4-moe): enable the mxmoe a4w4 pipeline only for interleave g…
coderfeli 22d8988
suport seperate
coderfeli c931100
mxfp4 moe: e8m0 scale rounding Even -> RoundUp
ColorsWind 169eee8
flydsl mxfp4 gemm1/gemm2: size A_q/A_scale buffer resources from runt…
ColorsWind b576566
mxfp4 moe test: pin test_moe_2stage to Kimi-K2.5 TP4 a4w4
ColorsWind 2d07af8
Merge upstream/dev/randomflow_pr into radeonflow_pr_flydsl_perf
ftyghome 6d25aea
[RadeonFlow] max_m / round_up fix (#3904)
ColorsWind 68d493f
align shuffle scale
coderfeli eb385ab
Merge remote-tracking branch 'rocm/main' into dev/randomflow_pr2
benenzhu dcfe1b2
format
benenzhu 0ae49ae
flydsl mxfp4 gemm1/gemm2: remove dead MAX_M buffer-size code
ftyghome 266255d
flydsl mxfp4 gemm1/gemm2: move module globals into instantiation params
ftyghome e7209f3
flydsl mxfp4 gemm1/gemm2: strip comments and docstrings
ftyghome ab78e7c
flydsl mxfp4 gemm: extract shared helpers into mxfp4_gemm_common
ftyghome 22fc814
flydsl mxfp4 gemm1: use DPP for epilog amax cross-lane reduction
ftyghome 51a8c89
flydsl mxfp4 gemm2: disable post-misched for BM16 decode kernel
ftyghome b032808
Merge upstream/dev/randomflow_pr into radeonflow_pr_flydsl_perf
ftyghome f55b133
refactor: moe sorting
ftyghome af5366e
Merge remote-tracking branch 'origin/radeonflow_pr_flydsl_perf' into …
ftyghome ee083f9
Merge remote-tracking branch 'origin/dev/randomflow_pr' into radeonfl…
ftyghome 64fcc96
format
benenzhu fbd2a2a
refactor: drop gate_moe in csv dispatch
ftyghome ff1fa90
Merge pull request #3952 from RadeonFlow/dev/randomflow_pr
Bernard-Liu 94d0b26
Merge remote-tracking branch 'origin/main' into pr3832_resolve
coderfeli 49fa6d1
revert: fused_moe act change
ftyghome 53a8b23
revert: Kimi K2.5 additional tests
ftyghome d26c1c9
revert: dispatch sorting impl only by emit_aux
ftyghome 9b396ed
feat: standalone mxfp4 flydsl tuner
ftyghome d8a837f
Merge pull request #3968 from RadeonFlow/dev/randomflow_pr
Bernard-Liu 7631599
format
benenzhu 086689f
chore: add BM64 kernel (#3975)
ftyghome fa55390
[RadeonFlow] avoid scatter reduce copy + addXCD swizzle support (#3978)
ColorsWind 78f8eee
fix: handle empty kernelName and AOT-cover CK-Tile split-K epilogue
benenzhu 7d15e55
fix: round silu_and_mul_fq VEC to power of two, cap at 8
benenzhu c685033
fix aot
Bernard-Liu efc3686
Merge remote-tracking branch 'rocm/main' into dev/randomflow_pr7
benenzhu e7599aa
fix comment for sort_backend
Bernard-Liu 104b512
Merge remote-tracking branch 'origin/dev/randomflow_pr' into dev/rand…
Bernard-Liu 03eb921
Merge branch 'main' into dev/randomflow_pr
coderfeli f22b61b
fix(test): correct a4w4 weight layout and gate mode in moe_2stage
ColorsWind 2098023
fix(mxfp4): default interleave=False for a4w4 gemm1
ColorsWind f6a94d9
feat(mxfp4): add Kimi-K2.5 TP=2 (E=385, inter=1024) aux instance
ColorsWind 55c09eb
Merge remote-tracking branch 'rocm/dev/randomflow_pr' into fix/mxfp4-…
benenzhu c295b0d
format
benenzhu c457b2e
Merge remote-tracking branch 'rocm/main' into fix/mxfp4-a4w4-separate…
benenzhu 9790753
[flydsl] gemm2 a4w4: give epilog lds_acc its own LDS, drop leading ba…
ColorsWind 884eacd
[mxfp4_moe] aux cleanup: drop dead sort_scales D_INTER, add scatter s…
ColorsWind 52eea17
add more dsv4 shapes
Bernard-Liu 5adcf05
mxmoe support mp&timeout
Bernard-Liu 6732142
fix layout bug
Bernard-Liu 9209b51
add expert_mask assert
Bernard-Liu dfb43d2
style: format gemm_moe_tune.py with black
Bernard-Liu e3b4b07
Merge branch 'main' into dev/randomflow_pr
Bernard-Liu c0619e9
simplify annotations
Bernard-Liu 46dd1d5
docs: annotate epilogue AOT compile-only stream/swiglu_limit args
benenzhu 16dec44
Merge remote-tracking branch 'rocm/main' into fix_moe
benenzhu 238d4ec
fix ci
benenzhu 3d0b31e
Merge remote-tracking branch 'rocm/main' into fix_moe
benenzhu aa65f59
Merge remote-tracking branch 'rocm/main' into fix_moe
benenzhu File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
still consider ck?
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
aiter.moe_cktile_2stages_gemm1(...)
if split_k>1 & interleaved:
flydsl_silu_and_mul_interleaved(...)
It's a ck-tile moe but will run to a FlyDSL reduce kernel.
Added this so that the Cl can passed (which require all FlyDSL kernels must be AOT ones).