Skip to content

feat(router): count retained GPU baselines without execution credit [D12] - #18030

Closed
yifjiang wants to merge 1 commit into
codex/kv-reuse-d11-bounded-lookupsfrom
codex/kv-reuse-d12-gpu-baselines
Closed

yifjiang wants to merge 1 commit into
codex/kv-reuse-d11-bounded-lookupsfrom
codex/kv-reuse-d12-gpu-baselines

Conversation

@yifjiang

@yifjiang yifjiang commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Use retained GPU inventory as a target baseline after native eviction without granting execution credit. Preserve authoritative attachment and topology precedence; LLM wrappers follow in D13.

Review slice D12 of #16748; part of #16747 and #16746. This draft targets codex/kv-reuse-d11-bounded-lookups for a complete incremental review diff of 499 additions plus deletions, including implementation and tests.

The ZMQ integration fixture waits for its listener's subscription before sending the original one-shot GPU and CPU events. Payloads, sequence numbers, the five-second convergence check and tier assertions remain unchanged. No diagnostic listener delay enters the source.

Reuse remains experimental and default off. Supported activation requires the companion KVCR/native slices and declared deployment profile; retained inventory is advisory and native operations retain ownership until quiescence.

Validation

A controlled 300ms late subscriber makes the original fixture genuinely fail and the subscription barrier pass 22 case executions. The clean D12 fixture-only source passed 177 integration executions, allocated formatting and all-target Clippy. The changed-file hook scope also passed; the inherited D02 HTTP source has a separate exact-tree hook receipt.

These controls qualify subscription readiness and preserve the original production listener. They do not establish the original hosted timeout's cause. The inherited HTTP fix separately passes four focused regressions, all 60 service cases, 150 unchanged HTTP executions and strict all-target Clippy. Current-head hosted CI remains required; native transport and hardware results retain their recorded producer scope.

@devin-ai-integration

devin-ai-integration Bot commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

❌ Dynamo PR CI failed — run 41803083245 (attempt 1) on 7c31512de2

Gate checks: ✅ backend-status-check · ✅ deploy-status-check · ❌ dynamo-status-check

Other Jobs
dynamo-runtime ❌ 2 ✅ 5

Failure details

2 jobs failed (amd64 and arm64, same 2 tests): test_shared_router_settings_fixture_flows_to_binding_kwargs fails with ValueError: unknown router setting(s) for the decode-to-prefill transfer settings, and test_no_registered_env_var_is_read_from_os_environ sees reject_media_status_code 0 instead of 415. No cancelled jobs.

❌ dynamo-runtime / test / sequential cuda13.0, amd64: ValueError unknown router setting(s); reject_media_status_code 0 != 415

Job: dynamo-runtime / test / sequential cuda13.0, amd64 · Failed step: Run CPU-only tests (parallelized) · Logs: gh run view --job 126496502973 -R ai-dynamo/dynamo --log-failed

FAILED components/src/dynamo/common/tests/configuration/test_kv_router_args.py::test_shared_router_settings_fixture_flows_to_binding_kwargs - ValueError: unknown router setting(s): ['enable_decode_to_prefill_gpu_reuse', 'enable_decode_to_prefill_reuse', 'minimum_estimated_ttft_saving_ms', 'minimum_transfer_prefix_blocks', 'transfer_source_estimated_block_us', 'transfer_source_gpu_estimated_block_us', 'transfer_source_lookup_budget_ms', 'transfer_source_prefill_token_us']
  kv_router_args.py:296 in kv_router_kwargs -> :248 apply_router_config -> :234 _router_settings
FAILED components/src/dynamo/frontend/tests/test_frontend_parser_builder.py::test_no_registered_env_var_is_read_from_os_environ - AssertionError: 0
E     Differing items:
E     {'reject_media_status_code': 0} != {'reject_media_status_code': 415}

Two Python unit tests fail (after 3 auto-retries each): _router_settings rejects 8 decode-to-prefill transfer/reuse settings as unknown router settings, and the frontend config built without env vars has reject_media_status_code = 0 instead of the default 415. Deterministic test failures, not infrastructure.

❌ dynamo-runtime / test / sequential cuda13.0, arm64: ValueError unknown router setting(s); reject_media_status_code 0 != 415

Job: dynamo-runtime / test / sequential cuda13.0, arm64 · Failed step: Run CPU-only tests (parallelized) · Logs: gh run view --job 126496503205 -R ai-dynamo/dynamo --log-failed

FAILED components/src/dynamo/common/tests/configuration/test_kv_router_args.py::test_shared_router_settings_fixture_flows_to_binding_kwargs - ValueError: unknown router setting(s): ['enable_decode_to_prefill_gpu_reuse', 'enable_decode_to_prefill_reuse', 'minimum_estimated_ttft_saving_ms', 'minimum_transfer_prefix_blocks', 'transfer_source_estimated_block_us', 'transfer_source_gpu_estimated_block_us', 'transfer_source_lookup_budget_ms', 'transfer_source_prefill_token_us']
  kv_router_args.py:296 in kv_router_kwargs -> :248 apply_router_config -> :234 _router_settings
FAILED components/src/dynamo/frontend/tests/test_frontend_parser_builder.py::test_no_registered_env_var_is_read_from_os_environ - AssertionError: 0
E     Differing items:
E     {'reject_media_status_code': 0} != {'reject_media_status_code': 415}

Two Python unit tests fail (after 3 auto-retries each): _router_settings rejects 8 decode-to-prefill transfer/reuse settings as unknown router settings, and the frontend config built without env vars has reject_media_status_code = 0 instead of the default 415. Deterministic test failures, not infrastructure. Same failures as the amd64 job.

For agents
{"pr": 18030, "run_id": 41803083245, "run_attempt": 1, "head_sha": "7c31512de2effbaca1b809178d68b2ddb8a54b1d", "failures": [{"job": "dynamo-runtime / test / sequential cuda13.0, amd64", "job_id": 126496502973, "failed_step": "Run CPU-only tests (parallelized)", "signature": "ValueError: unknown router setting(s) [decode-to-prefill transfer settings]; AssertionError reject_media_status_code 0 != 415", "tests": ["components/src/dynamo/common/tests/configuration/test_kv_router_args.py::test_shared_router_settings_fixture_flows_to_binding_kwargs", "components/src/dynamo/frontend/tests/test_frontend_parser_builder.py::test_no_registered_env_var_is_read_from_os_environ"], "log_cmd": "gh run view --job 126496502973 -R ai-dynamo/dynamo --log-failed"}, {"job": "dynamo-runtime / test / sequential cuda13.0, arm64", "job_id": 126496503205, "failed_step": "Run CPU-only tests (parallelized)", "signature": "ValueError: unknown router setting(s) [decode-to-prefill transfer settings]; AssertionError reject_media_status_code 0 != 415", "tests": ["components/src/dynamo/common/tests/configuration/test_kv_router_args.py::test_shared_router_settings_fixture_flows_to_binding_kwargs", "components/src/dynamo/frontend/tests/test_frontend_parser_builder.py::test_no_registered_env_var_is_read_from_os_environ"], "log_cmd": "gh run view --job 126496503205 -R ai-dynamo/dynamo --log-failed"}]}

Posted automatically by Devin for run 41803083245. Updated on every full-CI run of this PR.

@yifjiang
yifjiang force-pushed the codex/kv-reuse-d11-bounded-lookups branch from 930f359 to 87510bb Compare November 4, 2026 08:16
@yifjiang
yifjiang force-pushed the codex/kv-reuse-d12-gpu-baselines branch 2 times, most recently from 9f87ba6 to 7c31512 Compare November 4, 2026 08:54
@yifjiang
yifjiang force-pushed the codex/kv-reuse-d11-bounded-lookups branch 2 times, most recently from 66e8c36 to fded18a Compare November 4, 2026 20:39
@yifjiang
yifjiang force-pushed the codex/kv-reuse-d12-gpu-baselines branch from 7c31512 to c76acf8 Compare November 4, 2026 20:39
@copy-pr-bot

copy-pr-bot Bot commented Nov 4, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

yifjiang commented Nov 4, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test c76acf8

Wait for the ZMQ subscription before publishing one-shot fixture events.

Signed-off-by: Yifan Jiang <19356972+yifjiang@users.noreply.github.com>
@yifjiang
yifjiang force-pushed the codex/kv-reuse-d11-bounded-lookups branch from fded18a to 7e7acd1 Compare November 5, 2026 00:24
@yifjiang
yifjiang force-pushed the codex/kv-reuse-d12-gpu-baselines branch from c76acf8 to 7cbfc3c Compare November 5, 2026 00:24
@yifjiang

yifjiang commented Nov 5, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test 7cbfc3c

@yifjiang yifjiang closed this Nov 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant