Skip to content

[CI] Run CTest with --parallel 1 for library test drivers#5088

Draft
tony-davis wants to merge 1 commit intomainfrom
users/todavis/rocm-libraries-parallel-1-tests
Draft

[CI] Run CTest with --parallel 1 for library test drivers#5088
tony-davis wants to merge 1 commit intomainfrom
users/todavis/rocm-libraries-parallel-1-tests

Conversation

@tony-davis
Copy link
Copy Markdown
Contributor

Summary

Sets CTest job parallelism to 1 (serial test processes) across TheRock GitHub Actions test drivers in build_tools/github_actions/test_executable_scripts/, to reduce GPU/driver contention and improve stability on shared CI runners.

Changes

  • test_runner.py: single parallel count 1 (replaces 8 and gfx1152/gfx1153 → 4). Affects rocBLAS, MIOpen, hipSPARSELt, rocprofiler-compute jobs that use this runner.
  • test_rocthrust.py: same.
  • Per-component scripts that hardcoded --parallel 81 (rocRAND, rocPRIM, MIOpen provider, hipCUB, hipDNN family, hipRAND, Fusilli, hipBLASLt provider, hipkernel provider).
  • test_rocprofiler_sdk.py: ctest --parallel set to 1; cmake --build --parallel 8 unchanged.

test_rocwmma.py was already parallel 1; no edit.

Out of scope

  • No updates to rocm-libraries/test/therock/ mirrors (TheRock-only for this pass).

Follow-up

If step durations approach timeouts, consider raising per-component timeout_minutes in fetch_test_configurations.py or additional sharding rather than restoring CTest parallelism.

Made with Cursor

Set CTest job parallelism to 1 in GitHub Actions test drivers under
build_tools/github_actions/test_executable_scripts/ to reduce GPU and
driver contention on shared runners.

- test_runner.py: fixed parallel count (rocBLAS, MIOpen, hipSPARSELt,
  rocprofiler-compute)
- test_rocthrust.py and per-component scripts that hardcoded 8
- test_rocprofiler_sdk.py: ctest only; cmake --build --parallel unchanged

rocm-libraries/test/therock mirrors are unchanged for separate rollout.

Co-authored-by: Cursor <cursoragent@cursor.com>
Copilot AI review requested due to automatic review settings May 6, 2026 19:32
@tony-davis tony-davis marked this pull request as draft May 6, 2026 19:33
@tony-davis tony-davis changed the title CI: run CTest with --parallel 1 for library test drivers [CI] Run CTest with --parallel 1 for library test drivers May 6, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates TheRock’s GitHub Actions CTest driver scripts to run tests serially (ctest --parallel 1) in order to reduce GPU/driver contention and improve CI stability on shared runners.

Changes:

  • Set ctest parallelism to 1 in the generic test_runner.py driver.
  • Set ctest parallelism to 1 in test_rocthrust.py.
  • Update multiple per-component test scripts that hardcoded --parallel 8 to --parallel 1 (and test_rocprofiler_sdk.py to use ctest --parallel 1 while leaving build parallelism unchanged).

Reviewed changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
build_tools/github_actions/test_executable_scripts/test_runner.py Forces serial CTest execution via the shared multi-component runner.
build_tools/github_actions/test_executable_scripts/test_rocthrust.py Forces serial CTest execution for rocthrust tests.
build_tools/github_actions/test_executable_scripts/test_rocrand.py Changes rocRAND CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_rocprofiler_sdk.py Changes rocprofiler-sdk CTest invocation to --parallel 1 (build parallelism unchanged).
build_tools/github_actions/test_executable_scripts/test_rocprim.py Changes rocPRIM CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_miopenprovider.py Changes MIOpen provider CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_hiprand.py Changes hipRAND CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_hipkernelprovider.py Changes hip kernel provider CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_hipdnn.py Changes hipDNN CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_hipdnn_samples.py Changes hipDNN samples CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_hipdnn_integration_tests.py Changes hipDNN integration tests CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_hipdnn_install.py Changes hipDNN install tests CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_hipcub.py Changes hipCUB CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_hipblasltprovider.py Changes hipBLASLt provider CTest invocation to --parallel 1.
build_tools/github_actions/test_executable_scripts/test_fusilliprovider.py Changes Fusilli provider CTest invocation to --parallel 1.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread build_tools/github_actions/test_executable_scripts/test_hipdnn.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: TODO

Development

Successfully merging this pull request may close these issues.

2 participants