Repository navigation
[Kernel][FA] Support paged FP8 Flash attention with asymmetric K/V head dim on gfx950 #1066
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
coderfeli
merged 59 commits into
ROCm:main
from
sammysun0711:upstream/fa-paged-fp8-asymmetric-v
Sep 14, 2026
Merged
Changes from all commits
Commits
Show all changes
59 commits
Select commit
Hold shift + click to select a range
45f1bb9
feat(fmha): support paged FP8 D192 with asymmetric values
sammysun0711 ef39d59
test(fa): guard large offset test by available VRAM
sammysun0711 490bb16
fix(fmha): order paged copies on the launch stream
sammysun0711 ff77071
fix(fmha): guard paged FP8 flattened dimensions
sammysun0711 e40644e
refactor(fmha): clean up paged FP8 address helpers
sammysun0711 a3c0d34
fix(fmha): preserve paged BF16 seqlen compatibility
sammysun0711 2175c2f
fix(fmha): validate paged output device
sammysun0711 4b04045
perf(fmha): reduce paged FP8 V192 register pressure
sammysun0711 5b8fe46
feat(fmha): enable paged FP8 D128 attention
sammysun0711 2fc285e
perf(fmha): add paired-page D128 fast path
sammysun0711 f56ab1f
perf(fmha): relax paged D128 P*V accumulator anchors
sammysun0711 aa3126c
perf(fmha): vectorize paged D128 V fragment loads
sammysun0711 3db264f
perf(fmha): use permlane16 for paged D128 V staging
sammysun0711 c554b1d
perf(fmha): keep paged D128 permlane results in native order
sammysun0711 b48cb40
perf(fmha): overlap paged D128 V prefetch
sammysun0711 fe33810
perf(fmha): defer paged D128 logit scaling
sammysun0711 88ff0b9
perf(fmha): overlap paged D128 V loads with QK
sammysun0711 9232c17
perf(fmha): defer paged D192 logit scaling
sammysun0711 7f4f709
perf(fmha): use direct FP8 P*V for paged V128
sammysun0711 7c02fdb
perf(fmha): cache compiled fp8 page attention
sammysun0711 fc7f9b8
perf(fmha): schedule paged BF16 V192 fragments on demand
sammysun0711 a3a4c4f
perf(fmha): use segmented FP8 P*V for paged V192
sammysun0711 9d07ca5
perf(fmha): pipeline paged FP8 V prefetch
sammysun0711 688884b
perf(fmha): extend paged FP8 BN128 to varlen batches
sammysun0711 c388f3b
perf(fmha): balance paged FP8 D192 batches
sammysun0711 e82ca92
refactor(fmha): use typed paged FP8 helpers
sammysun0711 fc99957
refactor(fmha): remove unreachable paged FP8 split-K code
sammysun0711 484646f
refactor(fmha): remove unreachable paged FP8 non-causal paths
sammysun0711 e92b34b
docs(fmha): trim paged FP8 schedule narration
sammysun0711 fcb549e
refactor(fmha): attach compile hints to paged launcher
sammysun0711 4c0912b
refactor(fmha): use architecture-dispatched paged FP8 waits
sammysun0711 dded5be
refactor(fmha): simplify static paged FP8 contracts
sammysun0711 50d98a1
fix(fmha): rebase and fix dense and paged FP8 trait integration
sammysun0711 c9e72fa
perf(fmha): extend paged BN128 to D192/V128
sammysun0711 c15f035
perf(fmha): use an eight-slot paged D128 prefetch ring
sammysun0711 f537e4e
perf(fmha): add compact paired-page FP8 V192 pipeline
sammysun0711 cfbdfb5
refactor(fmha): specialize paged FP8 layout contracts
sammysun0711 3791131
refactor(fmha): use explicit-width paged FP8 arithmetic
sammysun0711 fa3cee0
test(fmha): share the paged FP8 reference calculation
sammysun0711 752c52e
refactor(fmha): use public paged FP8 memory views
sammysun0711 7148042
refactor(fmha): share paged launch and compile preparation
sammysun0711 44302e9
docs(fmha): clean up paged FP8 implementation comments
sammysun0711 4a72f6e
refactor(fmha): keep segmented LDS offsets in tile units
sammysun0711 e6e7f86
perf(fmha): share a balanced maximum across paged FP8 tile pairs
sammysun0711 cf79b38
perf(fmha): split the D192 V128 unmasked attention prefix
sammysun0711 9df3371
perf(fmha): select scalar centering for native paged FP8
sammysun0711 9b291b2
perf(fmha): interleave paired D192/V128 batches in grid X
sammysun0711 1c2a27a
perf(fmha): prune bounded paged FP8 rescaling
sammysun0711 eb85926
perf(fmha): interleave small paired D128 batches
sammysun0711 3cc57af
refactor(fmha): simplify paged FP8 pipeline helpers
sammysun0711 9e8c5ef
refactor(fmha): centralize paged dispatch policy and test helpers
sammysun0711 cacbae0
docs(fmha): clarify paged FP8 layout and scheduling invariants
sammysun0711 3bbbeef
refactor(fmha): adopt official LLVM memory primitives
sammysun0711 497c76f
refactor(fmha): unify paged FP8 attention on official APIs
sammysun0711 9251049
perf(fmha): optimize native small-page FP8 attention
sammysun0711 5196a22
perf(fmha): streamline small-page FP8 data movement
sammysun0711 3579e32
fix(fmha): harden paged FP8 contracts and use public FMA
sammysun0711 08ac7cb
refactor(fmha): simplify paged FP8 scheduling and tests
sammysun0711 8a662b0
increase CI test timeout to 70 min
sammysun0711 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
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.
Uh oh!
There was an error while loading. Please reload this page.