Repository navigation
fix(rccl): fix host microtest hipGetDeviceProperties redefinition - #11160
Merged
mch merged 1 commit intoSep 3, 2026
Merged
Conversation
…efinition Define the versioned public HIP ABI symbol hipGetDevicePropertiesR0600 in the host test HIP fakes instead of the unversioned hipGetDeviceProperties. rocm-systems #10358 replaced the #define hipGetDeviceProperties hipGetDevicePropertiesR0600 macro in hip_runtime_api.h with a static inline hipGetDeviceProperties wrapper that delegates to hipGetDevicePropertiesR0600. The fake's unversioned definition then collided with the header-provided inline, aborting the RCCL build in TheRock CI. Callers inline the header wrapper down to a reference to hipGetDevicePropertiesR0600, so defining that symbol satisfies the link and works with both header generations. Co-authored-by: Pi Agent
✅ All Policy Checks Passed
📖 Need help? See the Policy FAQ for details on every check and how to fix failures. |
pvallem
approved these changes
Sep 3, 2026
Contributor
There was a problem hiding this comment.
Automated Review Guard for Upfront Scrutiny
No findings. The panel reviewed the changed files it was given and flagged nothing above Nit
level.
Bottom line: No blocking issues. The rename to hipGetDevicePropertiesR0600 is the sole definition of that symbol, keeps the g_hipGetDeviceProperties seam wired, and is ABI-neutral under both header generations.
Comment @argus review to re-run, or @argus re-review after pushing.
Kapil-Shyam-Pawar
approved these changes
Sep 3, 2026
mch
deleted the
users/mahughes/aicomrccl-2283-hip-fake-getdeviceprops
branch
September 3, 2026 13:51
Contributor
TheRock Submodule Bump ActivityNewest first
|
1 task done
mikeqinamd
added a commit
that referenced
this pull request
Sep 11, 2026
## Motivation When we release a new version, we would like to ensure that older applications still compile with the new header. This PR introduces `HIP_FORCE_API_VERSION` to specify which API version the application wants to use. By default, it uses the latest version. Older applications can define an older `HIP_FORCE_API_VERSION` in `cflags`. It removes the old `#define` approach so that we do not pollute the application with macros. This is the second attempt. The first attempt: #10358 ## Issue Tracking JIRA ID : AIRUNTIME-2713 ## Test Result The first attempt was reverted because it broke rccl tests. Later, rccl tests was fixed by #11160 I've compiled with all components in TheRock monorepo. All builds fine. ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/rocm-systems/blob/develop/CONTRIBUTING.md.
nileshnegi
pushed a commit
that referenced
this pull request
Sep 16, 2026
…1160) Define the versioned public HIP ABI symbol hipGetDevicePropertiesR0600 in the host test HIP fakes instead of the unversioned hipGetDeviceProperties. rocm-systems #10358 replaced the #define hipGetDeviceProperties hipGetDevicePropertiesR0600 macro in hip_runtime_api.h with a static inline hipGetDeviceProperties wrapper that delegates to hipGetDevicePropertiesR0600. The fake's unversioned definition then collided with the header-provided inline, aborting the RCCL build in TheRock CI. Callers inline the header wrapper down to a reference to hipGetDevicePropertiesR0600, so defining that symbol satisfies the link and works with both header generations. Testing: ran test/host/run_host_tests.sh all — full pipeline (RCCL configure, hipify, configure, build, run) plus kernel-count guards pass. JIRA ID : AICOMRCCL-2283
corey-derochie-amd
pushed a commit
that referenced
this pull request
Oct 14, 2026
…1160) Define the versioned public HIP ABI symbol hipGetDevicePropertiesR0600 in the host test HIP fakes instead of the unversioned hipGetDeviceProperties. rocm-systems #10358 replaced the #define hipGetDeviceProperties hipGetDevicePropertiesR0600 macro in hip_runtime_api.h with a static inline hipGetDeviceProperties wrapper that delegates to hipGetDevicePropertiesR0600. The fake's unversioned definition then collided with the header-provided inline, aborting the RCCL build in TheRock CI. Callers inline the header wrapper down to a reference to hipGetDevicePropertiesR0600, so defining that symbol satisfies the link and works with both header generations. Testing: ran test/host/run_host_tests.sh all — full pipeline (RCCL configure, hipify, configure, build, run) plus kernel-count guards pass. JIRA ID : AICOMRCCL-2283
corey-derochie-amd
pushed a commit
that referenced
this pull request
Oct 15, 2026
…1160) Define the versioned public HIP ABI symbol hipGetDevicePropertiesR0600 in the host test HIP fakes instead of the unversioned hipGetDeviceProperties. rocm-systems #10358 replaced the #define hipGetDeviceProperties hipGetDevicePropertiesR0600 macro in hip_runtime_api.h with a static inline hipGetDeviceProperties wrapper that delegates to hipGetDevicePropertiesR0600. The fake's unversioned definition then collided with the header-provided inline, aborting the RCCL build in TheRock CI. Callers inline the header wrapper down to a reference to hipGetDevicePropertiesR0600, so defining that symbol satisfies the link and works with both header generations. Testing: ran test/host/run_host_tests.sh all — full pipeline (RCCL configure, hipify, configure, build, run) plus kernel-count guards pass. JIRA ID : AICOMRCCL-2283
corey-derochie-amd
pushed a commit
that referenced
this pull request
Oct 15, 2026
…1160) Define the versioned public HIP ABI symbol hipGetDevicePropertiesR0600 in the host test HIP fakes instead of the unversioned hipGetDeviceProperties. rocm-systems #10358 replaced the #define hipGetDeviceProperties hipGetDevicePropertiesR0600 macro in hip_runtime_api.h with a static inline hipGetDeviceProperties wrapper that delegates to hipGetDevicePropertiesR0600. The fake's unversioned definition then collided with the header-provided inline, aborting the RCCL build in TheRock CI. Callers inline the header wrapper down to a reference to hipGetDevicePropertiesR0600, so defining that symbol satisfies the link and works with both header generations. Testing: ran test/host/run_host_tests.sh all — full pipeline (RCCL configure, hipify, configure, build, run) plus kernel-count guards pass. JIRA ID : AICOMRCCL-2283
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Define the versioned public HIP ABI symbol hipGetDevicePropertiesR0600 in the
host test HIP fakes instead of the unversioned hipGetDeviceProperties.
rocm-systems #10358 replaced the
macro in hip_runtime_api.h with a static inline hipGetDeviceProperties wrapper
that delegates to hipGetDevicePropertiesR0600. The fake's unversioned
definition then collided with the header-provided inline, aborting the RCCL
build in TheRock CI. Callers inline the header wrapper down to a reference to
hipGetDevicePropertiesR0600, so defining that symbol satisfies the link and
works with both header generations.
Testing: ran test/host/run_host_tests.sh all — full pipeline (RCCL configure,
hipify, configure, build, run) plus kernel-count guards pass.
JIRA ID : AICOMRCCL-2283