Skip to content

fix: cap CUDA IPC multimodal pool budget - #30902

Closed
mickqian wants to merge 1 commit into
sgl-project:mainfrom
mickqian:codex/mm-feature-transport-auto
Closed

mickqian wants to merge 1 commit into
sgl-project:mainfrom
mickqian:codex/mm-feature-transport-auto

Conversation

@mickqian

@mickqian mickqian commented Jul 12, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • treat SGLANG_MM_FEATURE_CACHE_MB as a hard per-node CUDA IPC pool budget across tokenizer workers
  • report the actual total and per-worker HBM reservation at startup
  • add CPU-only regression coverage for budget splitting

Root cause

Each tokenizer worker owns a distinct allocation on base_gpu_id. The previous 128 MiB per-worker floor could make the aggregate reservation larger than the configured budget (for example, a 1 GiB budget with 16 workers reserved 2 GiB).

Behavior

The pool now splits the configured budget exactly across workers. A pool miss retains the existing CPU-transport fallback, so SGLang does not allocate additional CUDA memory to preserve IPC.

Validation

  • PYTHONPATH=$PWD/python uv run python -m pytest test/registered/unit/multimodal/test_cuda_ipc_pool_budget.py -v
  • direct-file unittest invocation
  • pre-commit hooks (including registered-test CI validation)

CI States

Latest PR Test (Base): ❌ Run #29174721443
Latest PR Test (Extra): ❌ Run #29174721370

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@mickqian

mickqian commented Jul 17, 2026

Copy link
Copy Markdown
Collaborator Author

closing due to duplication with #31227

@mickqian mickqian closed this Jul 17, 2026
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.

1 participant