[FlyDSL] Add FP8 LiteTopK prefill operator - #5348
Draft
AMD-yanfeiwang wants to merge 2 commits into
Draft
AMD-yanfeiwang wants to merge 2 commits into
AMD-yanfeiwang wants to merge 2 commits into
Conversation
Contributor
🏷️ CI GuideRuns automatically on every PR:
Extended tests (opt-in via labels):
PR title tags & labels: |
AMD-yanfeiwang
force-pushed
the
perf/fp8-mqa-litetopk
branch
5 times, most recently
from
September 9, 2026 11:51
5f1a26d to
dabd367
Compare
AMD-yanfeiwang
force-pushed
the
perf/fp8-mqa-litetopk
branch
from
September 9, 2026 12:57
dabd367 to
890399e
Compare
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Add a
gfx950FP8 LiteTopK path for the released GLM-5.2-FP8 indexer contract:H=32,D=128,K=2048, measured with the productionQ=8192workload.This is a single FP8 commit stacked on #5309.
Q=1024, K=2048is a valid operator shape when each row has at least 2048 candidates, but it is not the GLM reference workload and is not used for the table below.Implementation
K=2048, context through 1M, and a 16,384-candidate cap.Validation
MI355X (
gfx950), ROCm 7.2.4. These are operator benchmarks over deterministic tensors with the released GLM-5.2-FP8 shape, not a full-model E2E run. Each point is the median of three fresh processes; each process uses 5 warmup and 15 measured alternating dense/LiteTopK pairs. The reference column is the sameQ8192/H32/D128/K2048shape on B200 with captured GLM tensors from vLLM #48726; compare speedups, not absolute latency across hardware.Same-FlyDSL-backend exact-value validation passes for every row. Candidate maxima are 12,461, 14,012, 14,911, and 15,528, below the 16,384 cap.
Its author later reported a GLM-5.2 TP8+EP8 service result in SGLang #32094 of
134.717 s -> 86.004 s(1.566x), but that comment omits the context and full launch configuration, so it is reference-only rather than directly comparable.21 passed, 1 skipped; combined FP8/FP4 and two-GPU device tests pass.git diff --check: pass.References