fix(agentx): refresh GB200 Dynamo-vLLM with complete DP metrics - #2822
fix(agentx): refresh GB200 Dynamo-vLLM with complete DP metrics#2822cquil11 wants to merge 5 commits into
Conversation
|
Thanks for the contribution! Please reach out to respective companies' CODEOWNER to fill in the latest PR_REVIEW_CHECKLIST.md before pinging core maintainer on Slack for review. In order for the signoff PR check bot to trigger, you must follow the PR_REVIEW_CHECKLIST.md template correctly, including the phrase For PR verification, add the PR authors are responsible for ensuring that after merging, all GitHub Action jobs fully pass. A lot of the time, failures are just flakes and simply re-running the failed jobs will fix it. See GitHub's docs on re-running failed jobs 感谢你的贡献!请联系相应公司的 CODEOWNER 填写最新的 PR_REVIEW_CHECKLIST.md,然后再在 Slack 上联系核心维护者进行审阅。为了触发 signoff PR 检查机器人,你必须正确遵循 PR_REVIEW_CHECKLIST.md 模板,包括保留英文语句 如需进行 PR 验证,请为此 PR 添加 PR 作者有责任确保合并后所有 GitHub Action 任务完全通过。 很多时候失败只是偶发抖动(flake),重新运行失败的任务即可解决。参见 GitHub 关于重新运行失败任务的文档 |
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=33832457082 |
| description: | ||
| - "Refresh: we're refreshing this run with the correct metrics." | ||
| pr-link: TBD |
There was a problem hiding this comment.
🔴 The new entry uses pr-link: TBD, but validate_perf_changelog.py's validate_added_pr_link() only accepts the literal XXX or https://github.com/SemiAnalysisAI/InferenceX/pull/XXX as placeholders (PR_LINK_PLACEHOLDERS set) plus the exact expected PR URL — TBD matches neither. Fix: use pr-link: XXX (or the real PR URL) so the changelog gate does not fail this PR.
Extended reasoning...
utils/validate_perf_changelog.py validate_added_pr_link(link, pr_number) is called for every entry added versus base (line 206). During the PR run pr_number is not None, so it checks link not in PR_LINK_PLACEHOLDERS and link != expected; PR_LINK_PLACEHOLDERS = {'XXX', '.../pull/XXX'} (lines 24-27) does not contain 'TBD', so the check raises ChangelogValidationError('new PR entry must use .../pull/ or an XXX placeholder; found 'TBD''), failing the changelog CI gate for this otherwise-valid appended entry.
Verification: normal (mechanism corrected): The defect is real and reachable, but NOT via the path the candidate names. perf-changelog.yaml:6878 sets pr-link: TBD. validate_added_pr_link (utils/validate_perf_changelog.py:144-160) accepts only PR_LINK_PLACEHOLDERS = {"XXX", "https://github.com/SemiAnalysisAI/InferenceX/pull/XXX"} (lines 24-27) or the exact expected .../pull/<pr_number>; TBD is…
Signed-off-by: Cam Quilici <cjquilici@gmail.com>
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=33832938060 |
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=33836384426 |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit b742758. Configure here.
| decode_environment: *worker_environment | ||
| prefill_environment: | ||
| <<: *worker_environment | ||
| PYTORCH_CUDA_ALLOC_CONF: "expandable_segments:True" |
There was a problem hiding this comment.
NixlConnector conflicts with expandable segments
High Severity
Prefill now sets PYTORCH_CUDA_ALLOC_CONF to expandable_segments:True while both workers still use NixlConnector for KV transfer. vLLM treats that pairing as incompatible because expandable CUDA VMM can remap pages that NIXL already registered for RDMA, so prefill either fails at startup or the disagg KV path can corrupt or stall.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit b742758. Configure here.
|
see unofficial run visualizer at https://inferencex.semianalysis.com/inference?unofficialRun=33856022457 |


Summary
Refresh the current GB200 DeepSeek-V4 Dynamo-vLLM disaggregated AgentX curve with offloading disabled, replacing the incomplete engine metrics in run 31743991710 (for example, point 439846).
ba37b7c. Custom Dynamo-vLLM benchmarks now discover every node-local metrics endpoint, including DP4–7 on the second node of each DEP8 instance. Control endpoints and request routing are unchanged.kv-offloading: noneand require native KV-cache metrics in both recipes.PYTORCH_CUDA_ALLOC_CONF=expandable_segments:Trueon prefill only. Two full-sweep jobs failed allocating ~978 MiB activation tensors with ~2.65 GiB reserved but unused; decode allocation, KV budgets, and batching stay unchanged. The pinned image passed a GB200 allocation + sleep/wake compatibility check. Full-sweep confirmation is still required.agentx-fast.Validation