Skip to content

WIP: compute-matrix: add 'docs-build' matrix, switch docs builds to RTX PRO 6000 - #627

Draft
jameslamb wants to merge 2 commits into
mainfrom
ci/docs-build-matrix
Draft

WIP: compute-matrix: add 'docs-build' matrix, switch docs builds to RTX PRO 6000#627
jameslamb wants to merge 2 commits into
mainfrom
ci/docs-build-matrix

Conversation

@jameslamb

Copy link
Copy Markdown
Member

Introduces a docs-build matrix to the compute-matrix job, so we can centrally control which runner types are used for docs builds.

Details

RAPIDS projects generally need a GPU in their docs builds because things like Sphinx autosummary require actually import-ing the libraries, and many of the libraries require a GPU at runtime.

Today, projects are using the custom-job shared workflow and hard coding a GPU type, mostly L4.

  docs-build:
    uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main
    if: fromJSON(needs.changed-files.outputs.changed_file_groups).build_docs
    with:
      build_type: pull-request
      node_type: "gpu-l4-latest-1"
      arch: "amd64"
      container_image: "rapidsai/ci-conda:26.10-latest"
      script: "ci/build_docs.sh"

(example from NVIDIA/cuml)

L4 runners are heavily used in the shared CI runner system we use right now, which can result in long queue lines:

Look how often they've been 100% utilized in the last 2 days:

image

We'd like to switch to a less-busy runner type, such as RTX Pro 6000:

image

Centralizing that choice of runner type would mean that changing it in the future wouldn't require PRs like NVIDIA/cudf#23878 in every repo. I think that's justified here... it's really unlikely that docs builds would be sensitive to the particular details of a runner, as long as it's a GPU RAPIDS supports.

@jameslamb jameslamb added improvement Improves an existing functionality non-breaking Introduces a non-breaking change labels Sep 3, 2026

docs-build:
pull-request: &docs_build
# Docs builds just need any GPU. Centrallizing the matrix reduces the effort to switch

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.

Suggested change
# Docs builds just need any GPU. Centrallizing the matrix reduces the effort to switch
# Docs builds just need any GPU. Centralizing the matrix reduces the effort to switch

#
# - amd64-only
# - oldest-supported Python, CUDA, and operating system
# - some GPU with low queue

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.

Capacity is more important here. Even if we queue sometimes, a runner type with high capacity will chew through its queue faster.

Suggested change
# - some GPU with low queue
# - some GPU with high capacity (low queue)

# - some GPU with low queue
# - latest driver
#
- { ARCH: 'amd64', PY_VER: '3.11', CUDA_VER: '12.9.2', LINUX_VER: 'rockylinux8', GPU: 'rtxpro6000', DRIVER: 'latest'}

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.

I'd like to use some version of CUDA 13 for our docs builds. Python version is less important. We have better coverage of the environments for CUDA 13 and fewer packaging oddities as CUDA 12 gets harder to support.

@bdice bdice changed the title WIP: compute-matrix: add 'docs-build' matrix, switch docs builds to RTX Pro 6000 WIP: compute-matrix: add 'docs-build' matrix, switch docs builds to RTX PRO 6000 Sep 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

improvement Improves an existing functionality non-breaking Introduces a non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants