Commit Graph
10959 Commits
Author SHA1 Message Date
Mick b058dc9106 [diffusion] fix: reject ring parallelism where it would silently miscompute (#33353) 2026-08-04 11:15:23 +08:00
EchO 1e64fc1563 [Fix] Honor FlashMLA natural-log LSE in DCP reduction (#33065) 2026-08-03 19:55:52 -07:00
Khoa Pham 91fae8a72c [DCP] Bound a request by the aggregate KV pool, not one rank's share (#33448) 2026-08-03 19:36:25 -07:00
Oguz UlgenandCheng Wan c113ead98a Bump helion version to 1.4 (#32562)
Co-authored-by: Cheng Wan <54331508+ch-wan@users.noreply.github.com>
2026-08-03 19:10:31 -07:00
Yuwei AnandClaude Opus 5 92087ef4d2 fix(mem_cache): state the MLA KV bound in the DCP index space (#33432)
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-03 19:07:49 -07:00
Baizhou Zhang eb31a53338 Revert "Add flashinfer rmsnorm + quant fusion support SM90, SM100, SM120" (#33455) 2026-08-03 19:03:56 -07:00
Xingyu Liu 572924634b [mem_cache] Build empty-prefix last_loc sentinel on-device to avoid per-call H2D sync (#32575)
Signed-off-by: xingyuliu <charlotteliu12x@gmail.com>
2026-08-03 18:55:03 -07:00
Baizhou Zhang 7f6a2e2b50 [Refactor] Clean up and split DSA indexer (#33443) 2026-08-03 18:05:01 -07:00
3960983753 Add flashinfer rmsnorm + quant fusion support SM90, SM100, SM120 (#32994)
Signed-off-by: Devashish Lal <devcode@fb.com>
Co-authored-by: Devashish Lal <devcode@fb.com>
Co-authored-by: Xiaoyu Zhang <1182563586@qq.com>
2026-08-04 08:37:42 +08:00
Xiaoyu Zhang f829fb3ff7 [diffusion] Fix component accuracy topology reuse (#33317) 2026-08-04 08:35:03 +08:00
1307968605 [JIT] Drop redundant per-kernel arch overrides (#32952)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Xiaoyu Zhang <1182563586@qq.com>
2026-08-04 08:33:54 +08:00
Po-Han Huang (NVIDIA) 7eb27372b3 fix(server): capture legal multi-request prefill CUDA graph batches (#30206) 2026-08-03 16:56:59 -07:00
zijiexiaandClaude Opus 4.8 b819d2fb5b [Docs] Rename docs_new/ to docs/ (#32123)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-03 16:51:00 -07:00
Hanming Lu bc7e1a07c3 Bound prefill delayer all-branch delay and decay the max_prefill_bs high-watermark (#32880) 2026-08-03 14:43:02 -07:00
cctry db0fe370b7 [PD] Fix false health-503 during decode retraction re-admission (#33118) 2026-08-03 09:44:25 -07:00
cctry 6cf661117d [PD] Add a queues.prealloc_ready counter to the load snapshot (#33133) 2026-08-03 09:44:11 -07:00
Mick 0ba46c88e5 [diffusion] CI: add minimax-h3 2-gpu consistency coverage (#33281) 2026-08-03 22:40:08 +08:00
huangtingweiandjackyYang6 3953788596 [HiSparse]Fix DeepSeek V4 HiSparse PD Transfers with Separate Host and Device KV Indices (#31901)
Co-authored-by: jackyYang6 <82102811+jackyYang6@users.noreply.github.com>
2026-08-03 20:35:04 +08:00
Mohammad Miadh Angkad d48ab2d386 Fix BCG circular import during server startup (#33371) 2026-08-03 01:53:16 -07:00
Xun Sun a2d1003b18 [Mooncake] Fix ProcessGroup API imports (#32403) 2026-08-03 01:16:41 -07:00
amd-oshkarav 92999d84f4 [AMD]Qwen3.5 integration gfx950 fmha fp8 hd256 (#32046) 2026-08-03 00:25:31 -07:00
Liangsheng Yin 45c00daa1b [misc] Deep-merge nested config overrides and parse request bodies with orjson (#33351) 2026-08-02 23:55:06 -07:00
204e0fbac0 [SM120] Only split touched SWA pages in FlashMLA page-split kernel (#32320)
Co-authored-by: 百麒 <yaozhong.lyz@alibaba-inc.com>
Co-authored-by: David Orman <ormandj@corenode.com>
2026-08-02 23:45:07 -07:00
Wang, FangYuanandBingxu Chen 21d930aae3 [AMD] Fix JIT compile failure in sgl_kernel/warp.cuh (#33195)
Co-authored-by: Bingxu Chen <bingxche@amd.com>
2026-08-02 23:35:29 -07:00
Chengyu LinandRain Jiang e00f32ed4f feat: rust sglang server openai apis (#33103)
Co-authored-by: Rain Jiang <rain-jiang@outlook.com>
2026-08-02 23:13:44 -07:00
Baizhou Zhang 0bf0640b9d [CP] Support breakable CUDA graphs for zigzag strategy (#33136) 2026-08-02 23:11:57 -07:00
YAMYandSam Li 5fe97637df Support DeepGEMM for standard MoE dispatch (#33128)
Co-authored-by: Sam Li <lsam@nvidia.com>
2026-08-02 21:48:13 -07:00
Liangsheng Yin f5f021672a [Fix] Treat an empty grammar constraint as unset in SamplingParams (#33328) 2026-08-02 21:45:51 -07:00
Xiaoyu Zhang b64fd800d4 docs(diffusion): update skills for MiniMax-H3 (#33282) 2026-08-03 12:44:01 +08:00
Qiaolin Yu b1754a8f3b [gdn] fused replayssm ring write into flashinfer gdn mtp verify kernel (#33102) 2026-08-02 21:31:22 -07:00
Cheng Wan b8109b5d63 config: retire the last process-global config field reads (#33338)
`get_server_args().<field>` reads one process's startup record. Nine sites still
did that for a value that has a namespace: the attention backend (5),
`skip_tokenizer_init` (2), the draft-aware `load_format`, and a chunked-prefill
size in `sglang.kernels`. They now read `get_exec().kernel` / `get_serving()` /
`get_model()` / `get_schedule()`, so they see the resolved value including
post-publish overrides.

The multimodal processor's device selection moves to the instance it was
constructed with rather than to a namespace: `base_gpu_id` differs per worker (the
encode-server DP workers each specialise their own copy), so no process-global
value can stand in for it, and engines sharing a tokenizer process each need their
own. Branch order, the NPU preprocess patches, and the case that leaves "device"
unset are unchanged.

What stays on `get_server_args()` is the derived API — `@property` and method
members computed from several fields plus the HF config
(`mamba_cache_chunk_size`, `get_model_config()`, `enable_mamba_extra_buffer*`) —
plus three config-intent reads of live-shadowed sizes, each of which needs an
answer the live topology property cannot give (the DSA indexer's PP gate must
short-circuit before touching the PP group, `allocation`'s DCP gate asks whether
DCP was configured at all, and the CUDA-IPC recycler runs where no group exists).

A new AST ratchet pins both shapes it can see — the direct call and an alias
bound from it in the same function — at 0 and 12 respectively, exempting the
derived APIs and those three sites by name. The alias-form baseline is not zero:
those reads are mostly per-runner fields in model code, and lowering them is the
next slice.

Two fixtures stopped faking config: `test_dllm_fdfo_kv_reuse` rebound
`allocation.get_server_args` to a SimpleNamespace, which silently stops
intercepting the moment a reader migrates; it publishes a real config instead.
2026-08-02 21:24:42 -07:00
Cheng Wan aa3bbbc6e8 observability: publish the generated forward-pass-metrics endpoint to the bags (#33337)
When --forward-pass-metrics-ipc-name is left unset the reporter generates an
endpoint and has to hand it to external consumers (the documented contract is
that they read it back from the server config). That readback is the scheduler's
get_internal_state, which already reports get_context().resolved_server_args_dict(),
so the write moves to get_context().override and the read alongside it to
get_observability() — the endpoint still shows up in /server_info's
internal_states, and the ServerArgs instance stops being a message bus.

The test's server_args stand-in (a SimpleNamespace with a hand-rolled override)
becomes a real published config, so the reporter exercises the same accessors as
production.

Writer ratchet 19 -> 18.
2026-08-02 21:24:11 -07:00
Cheng Wan 0b3e8bedd1 config: keep runtime hicache and weight-version updates off ServerArgs (#33336)
The scheduler's runtime HiCache attach/detach wrote its own ServerArgs so the
internal-state readback would show the change; that readback already reports
the resolved config, so the writes become get_context().override(...) and the
namespace readers see them too.

The tokenizer side is per-engine — several Engines can share one process — so
its control-plane updates (weight version, model path + load format, HiCache
attach/detach) stay with the manager instead of moving to the process-global
bags. TokenizerManager gains record_config_updates / config_value /
resolved_config_dict, and the readbacks that used to observe the instance write
(/server_info, /model_info, the HiCache status endpoint, the gRPC bridge) now
overlay those updates onto the startup config.

test_server_info's stub grew the real manager instead of a SimpleNamespace, so
the overlay it now exercises cannot drift from production.

Writer ratchet 26 -> 19.
2026-08-02 21:23:38 -07:00
Cheng Wan 9bc8848fcf spec: build every draft worker from a draft ServerArgs copy (#33335)
EAGLEWorkerV2, StandaloneWorkerV2, MultiLayerEagleWorkerV2 and
FrozenKVMTPWorkerV2 wrote the draft's context_length onto the ServerArgs
instance they share with the target worker, and the scheduler wrote the draft's
load_format onto that same object just before creating them. The target's config
carried draft values from then on, and anything constructed later in the process
inherited them.

Scheduler.maybe_init_draft_worker now makes one draft copy through
draft_server_args_copy() and hands it to both the worker factory and the worker,
so every algorithm gets it — the four built-ins, dflash/dspark (which deepcopy
it again inside build_draft_tp_worker), and anything registered through
SpeculativeAlgorithm.register. The copy starts from the config the process
resolved, not from the pristine seed, so load-time overrides made before this
point (the chunked-prefix gate, the SM100 GDN prefill default) are part of what
the draft sees; context_length and load_format are applied on top.

The construction runs under a preserved publish of that copy, the shape
build_draft_tp_worker already used. Weight loading reads the bags rather than the
instance it was handed — Inkling's ModelOpt scale normalization keys on
load_format — so the draft has to be built with its own config published, and
the target's is back in the slot when construction returns.

The EAGLE hot-token-map write is deleted, not moved. init_token_map runs from
alloc_memory_pool, long after the draft's TpModelWorker built its ModelConfig,
and hot_vocab_size is only ever read off model_config.hf_config, which
json_model_override_args reaches at ModelConfig construction. The write could not
affect the draft model; only the shared instance saw it. hot_token_id is
unchanged, so a draft checkpoint that declares hot_vocab_size behaves as before.

Tests: draft_server_args_copy carries the target context_length, a configured
draft load_format and any load-time override while leaving the target's instance
alone; and the scheduler handoff pins that the factory and the worker both
receive the copy, that the copy is the published config during construction, and
that the target's is restored afterwards.

Writer ratchet 31 -> 26.
2026-08-02 21:22:52 -07:00
Cheng Wan ebb1c88d23 config: stop writing config onto the published ServerArgs at three sites (#33334)
Each of these wrote a value after resolution so a later reader would find it on
the instance. None of them needed the instance: one write was redundant, and the
two that carry a value the resolved-config readback reports move to
get_context().override, which the readback overlays.

- The SM100 GDN prefill default was written onto ServerArgs and read back one
  line later by initialize_linear_attn_config. It is now the return value of
  flashinfer_gdn_prefill_default, threaded into initialize_linear_attn_config
  (an explicit --linear-attn-prefill-backend still wins) and recorded with
  get_context().override so /server_info reports the backend in effect.
- The XGrammar fallback recorded grammar_backend="none" on the instance. No code
  reads the field after the factory reads it once, but get_internal_state
  reports the whole resolved config, so the fallback now lands there instead:
  the readback tells the truth and the seed keeps the requested backend.
- UnifiedRadixCache.init_hicache re-applied the direct-IO layout fixup that
  __post_init__ already applies: init_hicache only runs when hierarchical cache
  is on, which is exactly when _handle_hicache normalizes page_first to
  page_first_direct (pinned by test_hicache_io_backend_and_mem_layout_
  compatibility::direct_with_page_first). Three fixtures reached the fixup by
  building ServerArgs(model_path="dummy"), whose resolution is skipped, so they
  now declare the layout resolution would have produced.

Writer ratchet 34 -> 31.
2026-08-02 21:22:05 -07:00
Baizhou Zhang e824b24250 [CP] Fuse zigzag attention into a single call (#33137) 2026-08-02 20:46:42 -07:00
Mark 741e33db81 fix(sampling): reject conflicting structural tag constraints (#32525) 2026-08-02 20:24:55 -07:00
Liangsheng YinandMick dd6ddc053b [Fix] Drop deprecated multimodal processor residency state (#33308)
Co-authored-by: Mick <mickjagger19@icloud.com>
2026-08-02 20:02:53 -07:00
28a2472f95 [DeepSeek-V4] Fix nvcc 13 crash building the topk_v2 kernel (#32910)
Co-authored-by: guptaishaan <guptaishaan@users.noreply.github.com>
Co-authored-by: Xiaoyu Zhang <1182563586@qq.com>
2026-08-03 10:59:42 +08:00
Liangsheng YinandMick 4bc593fdc8 [Perf] Broadcast single-image DP vision embedding instead of pad-to-max all-gather (#33307)
Co-authored-by: Mick <mickjagger19@icloud.com>
2026-08-02 19:39:53 -07:00
Liangsheng Yin 2a7a299c27 [Spec] Support sampling in the DSPARK graph-folded draft proposal (#33298) 2026-08-02 18:46:39 -07:00
5d2dbb35a6 [rust-server] PD disaggregation support (#33125)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Rain Jiang <rain-jiang@outlook.com>
2026-08-02 18:32:59 -07:00
Rain JiangandKan Wu c844244da5 support dp attn with client lb (#33105)
Co-authored-by: Kan Wu <wukanustc@gmail.com>
2026-08-02 18:32:35 -07:00
kangwangamd 12eadf86f1 [AMD] Enable mamba JIT transfer kernel on ROCm (fix transfer_kv_mamba NameError) (#31741) 2026-08-02 16:40:17 -07:00
Cheng Wan 88e5a0f635 test: stand up the config tiers two unit tests read from (#33294) 2026-08-02 15:46:34 -07:00
Yuwei AnandClaude Opus 5 8cc941a672 [BCG][4/N] Enable bcg on megamoe & flashinfer a2a backend (#33150)
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-02 14:56:03 -07:00
Mohammad Miadh Angkad ec741e4161 Fix DSpark loading for hybrid DSV4 NVFP4 (#33276) 2026-08-02 18:05:09 +00:00
Yuwei AnandClaude Opus 5 1a3bea77f2 [Feat] DCP + HiCache L2 Support (ported from kimi-k3) (#33112)
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-02 23:35:27 +08:00
f8e62a9224 [NPU] Add PR test cases (#32392)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: sglang-npu-bot <sglangnpu@163.com>
2026-08-02 23:00:02 +08:00
70fe2e0dd5 [diffusion] model: support minimax-h3 (#33275)
Co-authored-by: zhenaozhenfu <zhenaozhenfu@minimaxi.com>
Co-authored-by: BBuf <1182563586@qq.com>
Co-authored-by: andyluo7 <andy.luo@amd.com>
Co-authored-by: Zijie Xia <zijie_xia@icloud.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: chao-xue <877184285@qq.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-02 22:32:37 +08:00