[Config] Round 5.1: the published-side readers ask the bags, and a platform fact gets one address (#37086)

This commit is contained in:
Cheng Wan
2026-08-30 02:18:33 -07:00
committed by GitHub
parent a6e4021368
commit 7e751153eb
148 changed files with 1585 additions and 1114 deletions
@@ -26,6 +26,8 @@ import json
from dataclasses import dataclass, field, replace
from typing import Any, Dict, List, Optional
from sglang.srt.runtime_context import get_exec
class Phase:
"""The two phases of model forward."""
@@ -201,7 +203,6 @@ def check_cuda_graph_backend(phase: str, backend: str) -> bool:
"""True if cuda_graph_config[phase].backend == backend on the
published config. Returns False if the config has not been published
yet (e.g. unit tests, early startup)."""
from sglang.srt.runtime_context import get_exec
try:
cfg = get_exec().graph.cuda_graph_config
@@ -444,7 +444,7 @@ class ModelRunner:
# Update deep gemm configure
if deep_gemm_wrapper.ENABLE_JIT_DEEPGEMM:
deep_gemm_wrapper.update_deep_gemm_config(gpu_id, server_args)
deep_gemm_wrapper.update_deep_gemm_config(gpu_id)
# For hisparse (must be set before initialize() so CUDA graph capture can see it)
self.hisparse_coordinator = None
@@ -542,7 +542,7 @@ class ModelRunner:
self._rearm_eplb_after_elastic_scale()
def init_msprobe(self):
self.msprobe_debugger = misc_utils.create_msprobe_debugger(self.server_args)
self.msprobe_debugger = misc_utils.create_msprobe_debugger()
def init_weight_updater(self):
self.weight_updater = WeightUpdater(
@@ -910,7 +910,7 @@ class ModelRunner:
)
from sglang.srt.mem_cache.sparsity import parse_hisparse_config
hisparse_cfg = parse_hisparse_config(self.server_args)
hisparse_cfg = parse_hisparse_config()
hisparse_top_k = getattr(
self.model_config.hf_text_config, "index_topk", hisparse_cfg.top_k
)
@@ -26,6 +26,7 @@ from sglang.srt.model_loader.remote_instance_weight_loader_utils import (
)
from sglang.srt.platforms import current_platform
from sglang.srt.runtime_context import (
get_context,
get_exec,
get_model,
get_observability,
@@ -72,7 +73,6 @@ def maybe_downgrade_dtype_for_legacy_gpu(*, model_config: ModelConfig) -> None:
logger.info(
"Compute capability below sm80. Use float16 due to lack of bfloat16 support."
)
from sglang.srt.runtime_context import get_context
# Device-driven, so every runner in the process resolves the same way;
# the per-runner truth is model_config.dtype, this is the record.
@@ -11,13 +11,13 @@ from sglang.srt.configs.model_config import (
from sglang.srt.runtime_context import (
attention_backends,
get_context,
get_observability,
get_schedule,
)
from sglang.srt.server_args import CHUNKED_PREFIX_CACHE_SUPPORTED_ATTENTION_BACKENDS
if TYPE_CHECKING:
from sglang.srt.configs.model_config import ModelConfig
from sglang.srt.server_args import ServerArgs
logger = logging.getLogger(__name__)
@@ -48,8 +48,8 @@ def maybe_disable_chunked_prefix_cache(
logger.info("Chunked prefix cache is turned on.")
def create_msprobe_debugger(server_args: ServerArgs) -> Optional[Any]:
if server_args.msprobe_dump_config is None:
def create_msprobe_debugger() -> Optional[Any]:
if get_observability().msprobe_dump_config is None:
return None
try:
@@ -62,7 +62,7 @@ def create_msprobe_debugger(server_args: ServerArgs) -> Optional[Any]:
return None
seed_all(mode=True)
return PrecisionDebugger(config_path=server_args.msprobe_dump_config)
return PrecisionDebugger(config_path=get_observability().msprobe_dump_config)
def resolve_pp_proxy_topk_size(
@@ -373,7 +373,7 @@ class DefaultPoolConfigurator(MemoryPoolConfigurator):
if memory_config.enable_hisparse:
from sglang.srt.mem_cache.sparsity import parse_hisparse_config
indexer_ratio = parse_hisparse_config(kvc.server_args).host_to_device_ratio
indexer_ratio = parse_hisparse_config().host_to_device_ratio
from sglang.srt.mem_cache.kv_cache_configurator import (
_should_elide_dsa_index_k,
@@ -794,9 +794,7 @@ class DSV4PoolConfigurator(MemoryPoolConfigurator):
if get_memory().enable_hisparse:
from sglang.srt.mem_cache.sparsity import parse_hisparse_config
self.c4_shrink_factor = parse_hisparse_config(
kvc.server_args
).host_to_device_ratio
self.c4_shrink_factor = parse_hisparse_config().host_to_device_ratio
else:
self.c4_shrink_factor = 1
assert self.c4_shrink_factor >= 1
@@ -27,6 +27,7 @@ import torch
from sglang.srt.model_executor.runner_backend_utils.breakable_cuda_graph.context import (
is_in_breakable_cuda_graph,
)
from sglang.srt.runtime_context import get_flags
# Detect whether the current forward pass is in capture mode.
is_capture_mode = False
@@ -84,7 +85,6 @@ def _set_capture_dsa_variant(variant: Optional[str]) -> None:
@contextmanager
def model_capture_mode():
global is_capture_mode
from sglang.srt.runtime_context import get_flags
# Disable dispose_tensor() during capture: freeing mid-capture records data_ptr()==0 into the graph.
is_capture_mode = True