Skip to content

ci: expose cpu_parallel_mode and run planner tests with -n 0#8378

Merged
nv-anants merged 2 commits into
mainfrom
dtokarev/ci-cpu-parallel-mode
Apr 20, 2026
Merged

ci: expose cpu_parallel_mode and run planner tests with -n 0#8378
nv-anants merged 2 commits into
mainfrom
dtokarev/ci-cpu-parallel-mode

Conversation

@dmitry-tokarev-nv
Copy link
Copy Markdown
Contributor

@dmitry-tokarev-nv dmitry-tokarev-nv commented Apr 20, 2026

Summary

  • Add cpu_parallel_mode input (default 'auto') to shared-test.yml, build-test-distribute-flavor.yml, and the matrix wrapper; forward it to the pytest action's existing parallel_mode.
  • Override to '0' for planner callers in pr.yaml (planner-test) and post-merge-ci.yml (planner-pipeline) to address OOM / flakiness observed with xdist auto.
  • All other callers retain the auto default — no behavior change outside planner.

Test plan

  • PR CI: planner-test step logs 📊 Parallelization: disabled (sequential execution) for GPU runs and passes.
  • CPU-only test steps for vllm/sglang/trtllm continue to log 📊 Parallelization: auto.
  • Post-merge planner-pipeline runs -n 0 after merge.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Made CPU test parallelization configurable in CI workflows, allowing selection of execution modes (auto, none, or custom worker counts) across build and test pipelines instead of using hardcoded defaults.

Add a `cpu_parallel_mode` input (default `auto`) to shared-test.yml,
build-test-distribute-flavor.yml, and the matrix wrapper, wired into
the pytest action's `parallel_mode`. Planner callers in pr.yaml and
post-merge-ci.yml override it to `'0'` to address OOM / flakiness
observed under xdist `auto`.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Signed-off-by: Dmitry Tokarev <dtokarev@nvidia.com>
@dmitry-tokarev-nv dmitry-tokarev-nv requested a review from a team as a code owner April 20, 2026 17:49
@github-actions github-actions Bot added ci Issues/PRs that reference CI build/test actions labels Apr 20, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 20, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: fe4060a9-1dbe-4dc7-ba35-a7fd3edf61f7

📥 Commits

Reviewing files that changed from the base of the PR and between 4ef2894 and 4acb5fc.

📒 Files selected for processing (5)
  • .github/workflows/build-test-distribute-flavor-matrix.yml
  • .github/workflows/build-test-distribute-flavor.yml
  • .github/workflows/post-merge-ci.yml
  • .github/workflows/pr.yaml
  • .github/workflows/shared-test.yml

Walkthrough

GitHub Actions workflows are updated to add a configurable cpu_parallel_mode input parameter that controls pytest-xdist parallelization behavior for CPU-only tests. This replaces hardcoded 'auto' values with a configurable input (default 'auto'), allowing workflow callers to override the parallelization mode. GPU tests remain sequential with parallel_mode: 'none'.

Changes

Cohort / File(s) Summary
Workflow Input Definitions
.github/workflows/build-test-distribute-flavor-matrix.yml, .github/workflows/build-test-distribute-flavor.yml, .github/workflows/shared-test.yml
Added new workflow input cpu_parallel_mode (type: string, default: 'auto') for controlling pytest-xdist parallelization. CPU-only test steps updated to use this input instead of hardcoded values.
Workflow Consumer Updates
.github/workflows/post-merge-ci.yml, .github/workflows/pr.yaml
Added cpu_parallel_mode: '0' to workflow calls invoking reusable test workflows, configuring sequential CPU-only test execution.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description covers the changes and test plan, but is missing required sections from the template: Overview section is absent, Details section is incomplete, no specific file callouts for review, and Related Issues section is missing. Add Overview section summarizing the change, complete Details section, add 'Where should the reviewer start?' with specific files, and include Related Issues section with issue reference.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main changes: exposing a cpu_parallel_mode input and running planner tests with sequential execution (-n 0).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

planner-build already produces a multi-arch (amd64 + arm64) image, so
extend planner-test's platform matrix to cover both. arm64 dispatches
to prod-tester-arm-v1 via shared-test.yml.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Signed-off-by: Dmitry Tokarev <dtokarev@nvidia.com>
@nv-anants nv-anants merged commit 2e3d4a9 into main Apr 20, 2026
89 of 90 checks passed
@nv-anants nv-anants deleted the dtokarev/ci-cpu-parallel-mode branch April 20, 2026 19:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

actions ci Issues/PRs that reference CI build/test size/S

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants