mudler / mudler/vllm.cpp

Capture the actual startup graph-manager fields before profile finalization

Open
#3,059 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
423
Forks
53
Avg merge
20h 26m
Merged PRs (30d)
310

Description

Row: KV-WARMUP-PROFILE

The private startup memory observer prepared for #3046 cannot finalize its first real Qwen3.5-0.8B run on the active e126687a9a828d513c01a07cd69f025f27d63280 vLLM pin.

The approved-image model launch exits 0 and publishes its state capture. Finalization exits 1 with PROFILE3046_REFUSED 'graphs'. The worker's recorded graph manager has type vllm.v1.worker.gpu.cudagraph_utils.ModelCudaGraphManager, an object identity, and an empty field dictionary. The observer's FIELDS includes only CudaGraphManager, and primitive() selects by exact type name. The finalizer then indexes the missing graphs field.

The executing upstream source declares the subclass at vllm/v1/worker/gpu/cudagraph_utils.py:468 and constructs it at gpu/model_runner.py:646. Existing SimpleNamespace-based boundary fixtures did not expose this omission. The previously reviewed private observer source seal is f2447167d61bea11aeb00fbd001068d2368017e49d57e7750d4fd4b14a083d45.

The owning committed spec is .agents/specs/warmup-memory-profiling.md at 85e439a8ec2ac1d6d1b44226d83b3677a2433910. Repair the private passive field capture using the actual pinned runtime type, add a regression that reaches the real serialization/finalization path, and preserve every graph-identity, process-completeness, source and no-extra-query obligation. A new GPU run is required after fresh review and the operator gate; missing fields in the preserved failed capture cannot be reconstructed as observed data.

The failed run is auto-enabled-1, 2026-09-08 04:24–04:31 UTC, with unchanged observer/model/state source. Other startup-observer GPU controls stopped pending this repair. No product/default/numerical/performance acceptance follows from the model's zero exit.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read vllm/v1/worker/gpu/cudagraph_utils.py:468 and gpu/model_runner.py:646 in the pinned runtime, then compare the actual graph-manager fields with the private observer capture. Add a regression reaching real serialization and finalization, preserving the listed graph-identity, completeness, source, and no-extra-query obligations. Done requires fresh review, the operator gate, and a new GPU run.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, python
Domain
ai-infra-agents, observability, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.