Skip to content

CI: Migrate custom jobs to RTX PRO 6000 - #23878

Merged
rapids-bot[bot] merged 2 commits into
NVIDIA:mainfrom
bdice:ci/migrate-custom-jobs-rtxpro6000
Aug 29, 2026
Merged

CI: Migrate custom jobs to RTX PRO 6000#23878
rapids-bot[bot] merged 2 commits into
NVIDIA:mainfrom
bdice:ci/migrate-custom-jobs-rtxpro6000

Conversation

@bdice

@bdice bdice commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Description

Migrates custom CI jobs from L4 to RTX PRO 6000 runners.

The packaged-Java matrix retains L4 for ARM64 because RTX PRO 6000 runners are only available for AMD64.

Checklist

  • I am familiar with the Contributing Guidelines.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@copy-pr-bot

copy-pr-bot Bot commented Aug 28, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@bdice
bdice marked this pull request as ready for review August 28, 2026 17:49
@bdice
bdice requested a review from a team as a code owner August 28, 2026 17:49
@bdice
bdice requested a review from jameslamb August 28, 2026 17:49
@bdice bdice added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Aug 28, 2026

@vyasr vyasr left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@coderabbitai

coderabbitai Bot commented Aug 28, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 33eb02c9-cc91-429d-a411-b16381fb13b2

📥 Commits

Reviewing files that changed from the base of the PR and between 81068be and 8727ad4.

📒 Files selected for processing (2)
  • .github/workflows/pr.yaml
  • .github/workflows/test.yaml

Included review availability: Your plan provides up to 12 included reviews per hour; 11 remain after this review.


📝 Walkthrough

Summary by CodeRabbit

  • Chores
    • Updated documentation, build, and validation workflows to run on RTX PRO 6000 GPU runners.
  • Tests
    • Migrated Java, C++, notebook, pandas, cuML compatibility, Narwhals, sanitizer, benchmark, and memcheck jobs to the updated GPU runner environment.
    • Packaged Java tests now use RTX PRO 6000 runners on AMD64 while retaining existing runners for other architectures.
    • Maintains automated coverage across supported test and verification workflows with updated hardware.

Walkthrough

Changes

GPU-based jobs in the build, sanitizer, Pandas, pull request, and test workflows now select RTX PRO 6000 runners. Packaged Java tests select RTX PRO 6000 for amd64 and L4 for other architectures.

GPU runner migration

Layer / File(s) Summary
Supporting workflow runner updates
.github/workflows/build.yaml, .github/workflows/compute-sanitizer-run.yaml, .github/workflows/pandas-tests.yaml
Documentation build, sanitizer, and Pandas test jobs now select RTX PRO 6000 runners.
CI workflow runner updates
.github/workflows/pr.yaml, .github/workflows/test.yaml
Pull request and test jobs now select RTX PRO 6000 runners. Packaged Java tests retain L4 runners for non-amd64 architectures.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Merge Risk: ⚪ Minimal · up to 8727a

This PR updates CI jobs to use RTX PRO 6000 runners while retaining L4 for ARM64; no actionable merge-blocking risk remains beyond normal checks and review.

Suggested reviewers: vyasr, galipremsagar, jameslamb

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly describes the main change: migrating custom CI jobs from L4 runners to RTX PRO 6000 runners.
Description check ✅ Passed The description directly explains the CI runner migration and the ARM64 exception for packaged Java jobs.
Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (2 skipped: 2 unsupported.)

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@bdice

bdice commented Aug 28, 2026

Copy link
Copy Markdown
Contributor Author

CI runtime comparison: L4 vs. RTX PRO 6000

Updated baseline: the earlier version of this report used PR #23869, which ran before dependency caching was enabled. This comparison instead uses the cached L4 run from PR #23770 (run 33193794748). It started only 35 minutes before this PR's RTX PRO 6000 run and overlapped it in wall-clock time. Both runs include the Setup proxy cache step.

I compared that L4 run with the completed RTX PRO 6000 jobs from this PR's previous commit, 81068be1f0 (run 33196496195). The table includes only name-matched AMD64 jobs whose explicit runner selector this PR changed. It excludes the two ARM64 Java jobs and unrelated shared-workflow matrix jobs that happened to use either GPU. Durations are job wall-clock time from GitHub's started_at and completed_at timestamps.

Job L4 with cache RTX PRO 6000 with cache Change
conda-java-tests 10m 27s 10m 15s -1.9%
pandas-tests (0) 29m 56s 27m 18s -8.8%
pandas-tests (1) 24m 14s 26m 46s +10.5%
third-party-integration-tests-cudf-pandas 17m 34s 13m 05s -25.5%
cuml-compat-tests 11m 52s 10m 28s -11.8%
docs-build 32m 24s 6m 40s -79.4%
conda-notebook-tests 29m 47s 4m 10s -86.0%
narwhals-tests 4m 41s 6m 19s +34.9%
java-tests (CUDA 12, AMD64) 27m 15s 6m 43s -75.4%
java-tests (CUDA 13, AMD64) 18m 11s 7m 12s -60.4%

Summary

  • 8 of 10 matched jobs were faster on RTX PRO 6000.
  • Summed job time fell from 3h 26m 21s to 1h 58m 56s, saving 1h 27m 25s (-42.4%) of runner time.
  • Median job time fell from 21m 12s to 8m 44s (-58.9%).
  • Summed Run script step time fell from 3h 05m 48s to 1h 45m 53s (-43.0%).
  • The two pandas shards were effectively unchanged in aggregate: 54m 10s on L4 versus 54m 04s on RTX PRO 6000 (-0.2%). conda-java-tests was also effectively flat (-1.9%). This confirms that the large differences for those jobs in the original report were primarily a pre-cache/post-cache comparison, not an RTX PRO 6000 effect.
  • third-party-integration-tests-cudf-pandas improved 25.5% and cuml-compat-tests improved 11.8%; narwhals-tests regressed 34.9%.

Same-run matrix comparison

As a tighter cross-check, run 33196496195 contains five shared-workflow matrix jobs with both AMD64 L4 and RTX PRO 6000 entries. This holds the commit, cache configuration, and run timing constant. All entries use the latest driver; CUDA, Python, OS, and dependency variants differ as shown.

Matrix job L4 entry RTX PRO 6000 entries RTX mean vs. L4
conda-cpp-tests 39m 08s (CUDA 13.0, Python 3.12, Ubuntu 24.04) 8m 44s (CUDA 13.3, Python 3.13, Ubuntu 26.04) -77.7%
conda-python-cudf-tests 47m 04s (CUDA 12.2, Python 3.12, Ubuntu 22.04) 14m 40s (CUDA 13.0, Python 3.12, Ubuntu 24.04); 13m 37s (CUDA 13.3, Python 3.13, Ubuntu 26.04) -70.0%
conda-python-other-tests 48m 22s (CUDA 12.2, Python 3.12, Ubuntu 22.04) 11m 32s (CUDA 13.0, Python 3.12, Ubuntu 24.04); 12m 40s (CUDA 13.3, Python 3.13, Ubuntu 26.04) -75.0%
wheel-tests-cudf 16m 40s (CUDA 12.9, Python 3.11, Ubuntu 22.04, oldest deps) 12m 38s (CUDA 13.0, Python 3.12, Ubuntu 24.04); 13m 14s (CUDA 13.3, Python 3.13, Rocky 8); 13m 00s (CUDA 13.3, Python 3.14, Ubuntu 26.04) -22.3%
wheel-tests-cudf-streaming 21m 17s (CUDA 12.9, Python 3.11, Ubuntu 22.04, oldest deps) 2m 57s (CUDA 13.0, Python 3.12, Ubuntu 24.04); 3m 05s (CUDA 13.3, Python 3.13, Rocky 8); 2m 59s (CUDA 13.3, Python 3.14, Ubuntu 26.04) -85.9%

RTX PRO 6000 was faster in all five matrix groups. Giving each matrix equal weight, mean job time was 34m 30s on L4 versus 10m 11s on RTX PRO 6000, a 70.5% reduction (3.39× speedup). Per-matrix reductions ranged from 22.3% to 85.9%.

This same-run result avoids the cache and temporal confound in the original cross-PR comparison, but it still does not isolate GPU hardware: the matrix intentionally varies CUDA, Python, OS, and, for the wheel jobs, dependency age. In particular, the L4 wheel entries use oldest dependencies while the RTX PRO 6000 entries use latest dependencies.

This is still a single observational before/after sample, not an isolated hardware benchmark. The aggregate is dominated by unusually long L4 docs, notebook, and Java jobs, so the 42.4% aggregate reduction should not be interpreted as a general hardware speedup. Although the runs overlapped and used the same cache setup, PR source differences, cache-hit state, network behavior, and runner contention remain uncontrolled. Multiple paired runs would be needed to estimate stable hardware-specific speedups.

@vyasr

vyasr commented Aug 29, 2026

Copy link
Copy Markdown
Contributor

/merge

@rapids-bot
rapids-bot Bot merged commit d658f94 into NVIDIA:main Aug 29, 2026
297 of 300 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

improvement Improvement / enhancement to an existing function non-breaking Non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants