Skip to content

[rocprofiler-systems] Fix how GFX targets are passed to RCCL and add workflow that builds with all GFX targets#3568

Draft
kcossett-amd wants to merge 4 commits intodevelopfrom
users/kcossett-amd/prevent-rccl-build-failure
Draft

[rocprofiler-systems] Fix how GFX targets are passed to RCCL and add workflow that builds with all GFX targets#3568
kcossett-amd wants to merge 4 commits intodevelopfrom
users/kcossett-amd/prevent-rccl-build-failure

Conversation

@kcossett-amd
Copy link
Contributor

@kcossett-amd kcossett-amd commented Feb 26, 2026

Motivation

Found this bug while attempting to fix another issue. If multiple ROCPROFSYS_GFX_TARGETS are detected, rccl fails to build examples and terminates build.

To avoid anything like this going unnoticed in the future, add a workflow that builds against ROCm 7.1 and uses all supported gfx targets.

Technical Details

Pass a space separated list to RCCL
Add rocprofiler-systems-build-all-targets.yml, whose sole purpose is to test that the build succeeds with multiple GFX targets. No tests are actually ran.

JIRA ID

AIPROFSYST-221

Test Plan

Locally
New workflow ([rocprofiler-systems Build All GPU Targets / build-all-targets (pull_request)]

Test Result

Locally - PASSED
New workflow - PASSED - Requires ~40 minutes

Submission Checklist

@github-actions github-actions bot added project: rocprofiler-systems github actions Pull requests that update GitHub Actions code labels Feb 26, 2026
@kcossett-amd
Copy link
Contributor Author

Formatting failure is for conf.py...

@kcossett-amd kcossett-amd marked this pull request as ready for review February 26, 2026 16:27
@kcossett-amd kcossett-amd requested review from a team and jrmadsen as code owners February 26, 2026 16:27
Copilot AI review requested due to automatic review settings February 26, 2026 16:27
Copy link
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 fixes a bug in how GFX targets are passed to RCCL's Makefile and adds a new CI workflow to test building with all supported GPU architectures. The bug fix converts CMake's semicolon-separated list format to a space-separated string that the RCCL Makefile expects. The new workflow ensures that future changes don't break compilation with multiple GFX targets.

Changes:

  • Fixed RCCL build by converting GFX target list from CMake format (semicolons) to space-separated format expected by Make
  • Added new GitHub Actions workflow to build against all supported GFX targets with ROCm 7.1

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
projects/rocprofiler-systems/examples/rccl/CMakeLists.txt Converts RCCL_GPU_TARGETS from CMake list to space-separated string before passing to make command
.github/workflows/rocprofiler-systems-build-all-targets.yml New workflow that builds rocprofiler-systems with all supported GFX targets to prevent future build regressions

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

@kcossett-amd kcossett-amd marked this pull request as draft February 26, 2026 19:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

github actions Pull requests that update GitHub Actions code organization: ROCm project: rocprofiler-systems

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants