Skip to content

[Doc] Record Qwen3.8 prefill output-quality gate - #403

Merged
yangzhuxinyzx merged 26 commits into
mainfrom
codex/v100-qwen38-prefill-quality-audit-20260828-193700
Aug 29, 2026
Merged

yangzhuxinyzx merged 26 commits into
mainfrom
codex/v100-qwen38-prefill-quality-audit-20260828-193700

Conversation

@yangzhuxinyzx

Copy link
Copy Markdown
Contributor

Purpose

Record the matched output-quality audit for the Qwen3.8 Flash Next NVFP4 TP4 prefill optimization merged in #393. This PR changes documentation only; runtime behavior is unchanged.

Test Plan

  • Compare page4 candidate against the selected-attention control with identical source, model, TP4 V2 runtime, FP16 KV, no MTP, PLE CPU offload, prompts, seeds, and sampling parameters.
  • Exercise official sampling, repeated 32K chunk-boundary retrieval, and 262080-token retrieval at the exact 262144-token total limit.
  • Compare output tokens, decoded text, corruption flags, text health, recall, top-5 logprob trajectories, and warm prefill rates.
  • Run the repository pre-commit hooks for the migration control document.

Test Result

  • Candidate and control both complete with all corruption, text-health, and code-recall gates passing.
  • Seven records and 1704 output tokens are exactly equal between routes, including all 32K and near-256K retrieval output.
  • All 126 long-context greedy steps select the same top-1 token; maximum chosen-token logprob difference is 0.0024374 and the minimum top-1 margin remains at least 4.8125 nats.
  • Warm prefill improves 4744.62 to 6493.38 token/s at 32K and 4131.06 to 5185.43 token/s at 262080 tokens.
  • git diff --check, typos, markdownlint, and all applicable pre-commit hooks pass.

Leonccaa and others added 2 commits August 28, 2026 04:21
Use a fresh async H2D tensor for each block-ID batch so a later scheduler step cannot overwrite pinned storage while an earlier copy is still in flight. Add a CUDA-stream regression test that holds both copies behind pending GPU work.

Upstream-Reference: vllm-project/vllm#48399

Assisted-by: OpenAI Codex
Signed-off-by: Leonccaa <166551845+Leonccaa@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Leonccaa and others added 24 commits August 28, 2026 08:43
Treat each index weight_map assignment as authoritative within its shard so reused safetensors files cannot inject stale or incompatible tensors.

Assisted-by: OpenAI Codex

Signed-off-by: Leonccaa <166551845+Leonccaa@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
…t paths

Mirror of the review fix applied to the upstream submission
(vllm-project/vllm#54230): the enable_multithread_load branch bypassed
the per-file index allowlist, so reused shards kept yielding unindexed
and duplicate tensors with nondeterministic overwrite order under
as_completed. Pass indexed_weights_by_file into
multi_thread_safetensors_weights_iterator and filter inside each worker.
fastsafetensors/instanttensor iterators cannot filter within a shard, so
indexed-subset checkpoints now fall back to the filtered standard
iterator with a warning.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Signed-off-by: Leonccaa <166551845+Leonccaa@users.noreply.github.com>
Assisted-by: OpenAI Codex
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
…promotion-20260829-042116

[Core][SM70] Promote DFlash2 NVFP4 prefill route
Add exact-topology checkpoint-FP16 row GEMV, fused GDN input and HyperConnection routes, and shorten exact QSA top-k to a score-pivot compaction.

The matched TP4 no-MTP I8192/O512 gate reaches 80.732 tok/s from 65.864 tok/s while the frozen GSM8K and long-output health gates pass.

Assisted-by: OpenAI Codex
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
…lter

[Bugfix] Honor safetensors index tensor assignments
[Bugfix] Avoid KVBlockZeroer H2D staging races
…20260829-030630

[Kernel][SM70] Accelerate exact Qwen3.8 decode
…lease-audit-20260829-052327

Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>

# Conflicts:
#	docs/design/sm70_v100_migration_control.md
Make the incompatible TokenSpeed MLA package optional and copy tracked FlashQLA sources into the csrc wheel stage.\n\nReported-by: ga-it <42608074+ga-it@users.noreply.github.com>

Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
…20260829-052327

[Core][SM70] Preserve DFlash2 decode across NVFP4 prefill
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
…ard-20260829-080317

[Bugfix][SM70] Gate DFlash2 verifier by native capability
…re-20260829-074938

[CI/Build][SM70] Close wheel build inputs
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
@yangzhuxinyzx
yangzhuxinyzx marked this pull request as ready for review August 29, 2026 08:45
@yangzhuxinyzx
yangzhuxinyzx merged commit 187b932 into main Aug 29, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants