Revert '[SWDEV-544298] AINIC implementation [#2798]' - #3418
Merged
Conversation
This reverts commit 00e9b8d.
1 task
Member
|
This has build failures on it. Was it a clean revert? If new changes landed since the original commit we may need to revert them too. See https://github.com/ROCm/TheRock/blob/main/docs/rfcs/RFC0002-MonoRepo-Gardener-Rotations.md#reverting-vs-fixing-forward
|
Collaborator
Author
|
There's no other PR relating to the NIC other than #2798. |
marifamd
marked this pull request as ready for review
February 20, 2026 22:38
Contributor
Contributor
Collaborator
Author
|
The test build went pass amdsmi. https://github.com/ROCm/TheRock/actions/runs/22244137887/job/64354403909. @ScottTodd please advise if I should merge now or wait till the build finish. or if any other test is needed. |
Member
|
Looks okay to merge without waiting for further workflows to complete. |
dmitrii-galantsev
approved these changes
Feb 20, 2026
2 tasks
1 task
amd-josnarlo
pushed a commit
that referenced
this pull request
Feb 23, 2026
* Revert "[SWDEV-544298] AINIC implementation (#2798)" This reverts commit 00e9b8d. * Revert "[ROCM-2942] Fix AMDSMI_STATUS_NO_DATA on NIC devices & tests not completing (#3289)" This reverts commit 3c85365. --------- Co-authored-by: Jenkins <jenkins-compute@amd.com> Co-authored-by: Maisam Arif <Maisam.Arif@amd.com>
ajanicijamd
pushed a commit
that referenced
this pull request
Feb 24, 2026
This change undoes the revert: bfe5604 Revert '[SWDEV-544298] AINIC implementation [#2798]' (#3418) 1f7eb27 SWDEV-544298_AINIC_implementation - Handle case where machine has no NIC and we are doing 'amd-smi static' (#3250) 00e9b8d [SWDEV-544298] AINIC implementation (#2798) The reason why it was reverted was that it was that the external CMake project, amdsmi_unified, was doing in-source build. We cannot change that CMakeLists.txt file to make it do out of source dir builds. This changes fixes that problem by copying the amdsmi_unified project into the build dir, then building it there, ensuring that even if it builds in its source dir, it is still in the parent project's build dir.
oosman330
added a commit
that referenced
this pull request
Feb 25, 2026
This change undoes the revert: bfe5604 Revert '[SWDEV-544298] AINIC implementation [#2798]' (#3418) 1f7eb27 SWDEV-544298_AINIC_implementation - Handle case where machine has no NIC and we are doing 'amd-smi static' (#3250) 00e9b8d [SWDEV-544298] AINIC implementation (#2798) The reason why it was reverted was that it was that the external CMake project, amdsmi_unified, was doing in-source build. We cannot change that CMakeLists.txt file to make it do out of source dir builds. This changes fixes that problem by copying the amdsmi_unified project into the build dir, then building it there, ensuring that even if it builds in its source dir, it is still in the parent project's build dir.
radhaksri
pushed a commit
that referenced
this pull request
Feb 26, 2026
This change undoes the revert: bfe5604 Revert '[SWDEV-544298] AINIC implementation [#2798]' (#3418) 1f7eb27 SWDEV-544298_AINIC_implementation - Handle case where machine has no NIC and we are doing 'amd-smi static' (#3250) 00e9b8d [SWDEV-544298] AINIC implementation (#2798) The reason why it was reverted was that it was that the external CMake project, amdsmi_unified, was doing in-source build. We cannot change that CMakeLists.txt file to make it do out of source dir builds. This changes fixes that problem by copying the amdsmi_unified project into the build dir, then building it there, ensuring that even if it builds in its source dir, it is still in the parent project's build dir.
Merged
dayatsin-amd
pushed a commit
that referenced
this pull request
Apr 7, 2026
* Revert "[SWDEV-544298] AINIC implementation (#2798)" This reverts commit 00e9b8d. * Revert "[ROCM-2942] Fix AMDSMI_STATUS_NO_DATA on NIC devices & tests not completing (#3289)" This reverts commit 3c85365. --------- Co-authored-by: Jenkins <jenkins-compute@amd.com> Co-authored-by: Maisam Arif <Maisam.Arif@amd.com>
dayatsin-amd
pushed a commit
that referenced
this pull request
Apr 7, 2026
This change undoes the revert: bfe5604 Revert '[SWDEV-544298] AINIC implementation [#2798]' (#3418) 1f7eb27 SWDEV-544298_AINIC_implementation - Handle case where machine has no NIC and we are doing 'amd-smi static' (#3250) 00e9b8d [SWDEV-544298] AINIC implementation (#2798) The reason why it was reverted was that it was that the external CMake project, amdsmi_unified, was doing in-source build. We cannot change that CMakeLists.txt file to make it do out of source dir builds. This changes fixes that problem by copying the amdsmi_unified project into the build dir, then building it there, ensuring that even if it builds in its source dir, it is still in the parent project's build dir.
dmitrii-galantsev
added a commit
that referenced
this pull request
Apr 22, 2026
## Motivation Trying to manually sanitize PR strings is painful. Use github-script to handle it all for us. This should prevent issues like #3418 (comment) where double quotes broke the script. ## Test Plan - [ ] Make a PR with double quotes in the name and see if script breaks. - [x] Run the workflow via act to test syntax Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
ApoKalipse-V
added a commit
that referenced
this pull request
Apr 23, 2026
commit b3aabb45064e63ec721f13a48146c0fe76d76c02
Author: alexxu-amd <159800977+alexxu-amd@users.noreply.github.com>
Date: Thu Apr 23 10:23:25 2026 -0400
[rocr-debug-agent] Correct .readthedocs path for monorepo migration (#5340)
## Motivation
.readthedocs.yml contains outdated path.
## Technical Details
Correct the path to match monorepo setup.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
## Test Result
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit b5cd2c0530096f57e56cf2bebdfe2b7a7d09c060
Author: jamessiddeley-amd <James.Siddeley@amd.com>
Date: Thu Apr 23 10:10:59 2026 -0400
[rocprof-compute] Removed --exit-zero from ruff formatting workflow (#5308)
## Motivation
The formatting workflow uses`ruff check . --fix --exit-zero`.
This PR drops `--exit-zero` from the ruff CI step so the workflow
actually fails on lint errors that aren't auto fixable instead of
silently passing them
## Technical Details
N/A
## JIRA ID
N/A
## Test Plan
N/A
## Test Result
N/A
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: Vignesh Edithal <Vignesh.Edithal@amd.com>
commit 8508fd9b5e9a42a39929eabfc5d4b5e12c90f92a
Author: Ammar ELWazir <ammar.elwazir@amd.com>
Date: Thu Apr 23 09:04:20 2026 -0500
feat(perfxpert): consolidate agentic redesign and validation stack (#4576)
## Summary
This PR is the consolidation point for the current
`experimental/python/perfxpert` stack. It is no longer just the original
rename branch: it now carries the agentic redesign, provider/runtime
hardening, launcher/backend integration, parity/regression coverage, and
the docs/media refresh on top of the `ROCInsight` -> `PerfXpert` rename.
## Scope
In scope:
- `experimental/python/perfxpert/**`
Explicitly out of scope for this PR:
- `.github/**`
- CI/workflow-only changes (handled separately)
## Design / Feature Areas
### 1. Rename + package surface
- rename from `rocinsight` to `perfxpert`
- updated package/import/CLI/env-var/doc branding
- preserved the Python and CLI entry surfaces under the new package name
### 2. Agentic analysis stack
- layered agent hierarchy with Root, Analysis, Recommendation,
Correctness, and specialist agents
- shared agent brain across batch `perfxpert analyze`, Python API, MCP,
and interactive launcher flows
- fence-sliced prompt layering retained across the hierarchy
### 3. Provider + runtime hardening
- provider registry/config loading and public provider surface fixes
- typed provider error taxonomy and provider routing cleanup
- fallback-chain support in the runtime session layer
- recursion-guard and gate-cascade fixes carried forward into the
consolidated branch
### 4. Launcher + backend integration
- multi-backend `perfxpert-code` surface (`opencode`, `claude`, `codex`,
`gemini`)
- MCP registration + staged prompt wiring for backend adapters
- source-checkout preference for the locally built patched `opencode`
binary before bundled/PATH fallbacks
- bundled build script now tolerates Bun lockfile-format churn by
retrying without `--frozen-lockfile`
### 5. CLI + user workflows
- top-level `init`, `diff`, `ci`, `doctor`, `providers`, and analyze
flows present on the consolidated branch
- source-only, trace-only, and combined analyze paths preserved
- diff/CI/reporting surfaces merged into the same branch state
### 6. Validation / safety stack
- parity fixtures and parity harness added to the branch
- red-team and regression-gate coverage retained
- exit-dashboard and audit-gate docs/tests carried into the consolidated
branch
- MCP registry/tool exposure checks preserved
### 7. Docs / schemas / media
- guide and architecture docs updated to reflect the live product
surface
- refreshed guide GIF set carried on the branch
- schema/version docs updated with the additive JSON formatter evolution
- stale unsupported examples removed or rewritten to match the actual
CLI/runtime surface
## Current Validation On Branch
Focused validation completed on the live branch state:
- `214 passed` on the shared runtime / CLI / MCP / setup / docs /
launcher slice
- `25 passed` on the launcher + setup-build + docs-links slice
- local patched `opencode` build completed successfully from the pinned
submodule
- source-checkout launcher resolution now prefers the locally built
patched binary:
-
`/tmp/rocm-systems-pr4576-consolidated/experimental/python/perfxpert/opencode/packages/opencode/dist/opencode-linux-x64/bin/opencode`
Representative commands run on this branch state:
```bash
PYTHONPATH=experimental/python/perfxpert pytest -q \
experimental/python/perfxpert/tests/test_agents/test_runtime.py \
experimental/python/perfxpert/tests/test_agents/test_framework.py \
experimental/python/perfxpert/tests/test_cli/test_analyze_args.py \
experimental/python/perfxpert/tests/test_cli/test_provider_error_surface.py \
experimental/python/perfxpert/tests/test_cli/test_backend_dispatch.py \
experimental/python/perfxpert/tests/test_cli/test_launcher_subcommands.py \
experimental/python/perfxpert/tests/test_tools/test_agents/test_mcp_registry_has_agent_tools.py \
experimental/python/perfxpert/tests/test_integration/test_cli_dispatch.py \
experimental/python/perfxpert/tests/test_setup/test_setup_build.py \
experimental/python/perfxpert/tests/test_integration/test_docs_links.py \
experimental/python/perfxpert/tests/test_tools/test_opencode_launcher.py
```
```bash
PYTHONPATH=experimental/python/perfxpert pytest -q \
experimental/python/perfxpert/tests/test_tools/test_opencode_launcher.py \
experimental/python/perfxpert/tests/test_setup/test_setup_build.py \
experimental/python/perfxpert/tests/test_integration/test_docs_links.py
```
## Notes
- This PR description is intentionally scoped to the consolidated
`perfxpert` branch state, not the original rename-only PR.
- `.github` changes are intentionally excluded from this PR.
- Final ROCm/manual parity validation and the remaining doc/spec
closeout continue on top of this branch.
commit e7d104593dabd87674c40e5fc2f6cb0d87e46d8f
Author: Aurelien Bouteiller <abouteil@amd.com>
Date: Thu Apr 23 09:53:32 2026 -0400
[rocshmem] rocgdb debugging scripts (#5122)
## Motivation
Improve debugability of deadlocked rocshmem application by providing
rocgdb scripting that analyzes live deadlocked processes and summarizes
and groups wavefront backtraces and highlight wavefronts that are stuck
in a rocshmem api.
## Technical Details
Use python scripting to drive rocgdb, add a small script to ease
attaching and summarizing for multiprocesses.
## JIRA ID
AIROCSHMEM-377
## Test Plan
* [x] Ran the debug script on the pr-provided deadlock example
* [x] Ran the debug script on a modified functional test that deadlocks
intentionally, witnessed wg groupings
* [x] Ran the debug script on modified deepep that deadlocks
intentionally, witnessed wg groupings in a useful way
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Signed-off-by: Aurelien Bouteiller <abouteil@amd.com>
Signed-off-by: Aurelien Bouteiller <aurelien.bouteiller@amd.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
commit d192aa1e21d1f220d0c3eb06c5730a3d75f0b81f
Author: marantic-amd <marantic@amd.com>
Date: Thu Apr 23 15:16:09 2026 +0200
[rocprofiler-systems] Adapt CPU metrics to PMC collector approach (#4612)
## Motivation
- Add CPU metrics collector with policy-based PMC architecture
- Replace the legacy cpu_freq module with a new CPU collector that
follows the same policy-based design as the GPU and NIC collectors. The
CPU collector integrates into the unified PMC sampler via
collector_slice, sampling per-CPU frequency, load, and process-level
metrics.
## Technical Details
- New components:
- procfs driver: reads /proc/stat, /proc/cpuinfo, getrusage() with
persistent FDs and zero-copy parsing for minimal overhead
- procfs provider: lightweight wrapper with factory pattern for DI
- CPU device: manages per-CPU state with delta-based load computation
- CPU traits: adapts base::collector for single-device multi-core model
- CPU cache/perfetto policies: trace cache and Perfetto output
- Mock driver and 17 unit tests covering init, freq, load, process
metrics, filtered CPU sets, and repeated sampling
- Integration:
- Added to g_collector_slices alongside GPU/NIC in pmc::sampler
- New ROCPROFSYS_CATEGORY_CPU_LOAD category for Perfetto traces
- Renamed cpu_freq_sample to cpu_pmc_sample in trace cache (0x0007)
- Updated perfetto_processor and rocpd_processor to handle CPU load
deserialization and emit per-CPU counter tracks
- Pause support: cache_policy emits zero entries for all monitored CPUs
when metrics are empty (pause path)
- Removed:
- library/cpu_freq.cpp, cpu_freq.hpp
- library/components/cpu_freq.cpp, cpu_freq.hpp
- cpu_freq instance block from process_sampler.cpp
## JIRA ID
- AIPROFSYST-224
- AIPROFSYST-79
## Test Plan
- Added additional unit tests to the feature
- Tested with existing test suite
## Test Result
- All test passed
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 34bef1e6accfef4c5a3e01542b638229a09eb7a1
Author: accauble <accauble@users.noreply.github.com>
Date: Thu Apr 23 09:03:54 2026 -0400
[rocjitsu] Add pre-commit hook to check for clang-format in rocjitsu files (#5311)
## Motivation
I keep forgetting to run the clang_format.sh script so I'm adding a
pre-commit hook that rocjitsu developers can install to check if they
need to run the script.
## Technical Details
Heavily commented because I used claude and I have never written a
git-hook. Adding two basic scripts:
-- A script to "install" the hook in rocm-systems. Only need to do this
once per clone.
-- The hook: checks staged files to see if they are formatted correctly.
If not, halts the commit and tells the user what went wrong.
## JIRA ID
None
## Test Plan
Tested:
1. Installation script works as expected
2. Checked that a poorly-formatted staged file was caught by the hook
3. Checked that a well-formatted staged file is allowed
4. Checked that a poorly-formatted cpp file outside the rocjitsu
directory doesn't get caught by the hook
## Test Result
They work!
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: Rosa, Ada <arosa@amd.com>
commit 35534db977d5e5cbdd5ec88b7bd8b586ea2077a1
Author: Milan Radosavljevic <milan.radosavljevic@amd.com>
Date: Thu Apr 23 13:09:43 2026 +0200
[rocprofiler-systems] Restructure unit tests to improve test isolation (#4853)
## Motivation
Unit tests hang under Thread Sanitizer (TSan) due to a deadlock during
atexit static destruction. The thread_deleter calls
rocprofsys_finalize_hidden() which logs via spdlog, triggering a TSan
race report whose symbolizer deadlocks on its own slot lock while
closing a file descriptor. This causes the sanitizer CI workflow to time
out.
## Technical Details
Root cause: unit test executable was including
`rocprofsys-object-library` which pulled `library.cpp`. with
`library.cpp` static variables were included which should trigger
`ensure_finalization(true)`. `ensure_finalization(true)` was calling
`thread_deleter`. Unit test should include only isolated code, where
this is breaking this rule.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
- Run full unit test suite: ./bin/rocprof-sys-unit-tests — all 480 tests
pass
- Run logger fork/stress tests under TSan — no deadlock
- Verify rocprofiler-systems-object-library is not linked into the test
binary-
## Test Result
All unit tests pass under TSan without hanging during atexit. The test
binary no longer links library.cpp's static initializers, preventing
thread_data instantiation and thread_deleter finalization entirely.
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 783707e8cb0a210e78d1723542c42b61eb95f63d
Author: Jonathan L'Work <113400649+Jonathan03ant@users.noreply.github.com>
Date: Thu Apr 23 06:17:30 2026 -0400
[rocprofiler-sdk]: Fix crash on iGPUs without PMC support #148 (#5294)
commit f89f4135b732c7bb83b6d25363160a847762e000
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed Apr 22 17:22:29 2026 +0000
Bump cryptography in /projects/rocr-debug-agent/docs/sphinx
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.6 to 46.0.7.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/46.0.6...46.0.7)
---
updated-dependencies:
- dependency-name: cryptography
dependency-version: 46.0.7
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
commit 7321d441181f08e8c53f48e7b580f8dd2434a73d
Author: cfallows-amd <Carrie.Fallows@amd.com>
Date: Wed Apr 22 22:12:49 2026 -0400
[rocprofiler-compute] Bugfix for memchart Matrix Ops value (#5310)
## Motivation
Fix Matrix Ops value pickup in memcharts- was trying to read for MFMA
but recent roof updates have converted it to general matrix operations
label which forced it to N/A value.
## Technical Details
Change MFMA metric title to Matrix Ops to reflect db entry.
Only affects CDNA memcharts
## JIRA ID
AIPROFCOMP-559
## Test Plan
Manual testing on MI350 system - profiled rocflop and occupancy samples
to test for workload that captures # of MFMA ops, and workload that has
0 MFMA ops, respectively.
Also regenerated hashes.
## Test Result
CLI analysis for block 3 shows Matrix Ops reflecting accurate MFMA
values:
<img width="1485" height="653" alt="Screenshot 2026-04-22 165029"
src="https://github.com/user-attachments/assets/2b3d8d59-e038-4a1a-bdac-0db98bd94da1"
/>
<img width="1448" height="645" alt="Screenshot 2026-04-22 165104"
src="https://github.com/user-attachments/assets/1c8423e0-4af8-44c8-b9d7-3a3203f39900"
/>
GUI mode also reflects these changes to the value outputs, no N/A.
## Submission Checklist
- [X] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
commit 4a65e8d0efcdcd584778d8b5d86d25563891afad
Author: Dmitrii <dmitrii.galantsev@amd.com>
Date: Wed Apr 22 20:01:57 2026 -0500
[RDC] Fix embedded profiler by loading librdc_rocp.so with RTLD_GLOBAL (#3922)
rocprofiler-sdk discovers tools by searching for rocprofiler_configure
in the global symbol namespace during hsa_init(). librdc_rocp.so was
loaded with RTLD_LAZY (implicit RTLD_LOCAL), hiding the symbol and
silently preventing profiler counter collection in embedded mode.
commit cbfa12fb0ea9a8c39b9e0f3232f3e821e2ce239f
Author: marandje <marko.arandjelovic@amd.com>
Date: Thu Apr 23 01:28:40 2026 +0200
Fix false queue-idle detection for first unsignaled packet (#5073)
## Motivation
- `Unit_hipGetProcAddress_MemoryApisMemset` is failing because
`hipStreamSynchronize` may return before `hipMemset*Async` operation has
actually completed when it is the only operation enqueued on the stream.
## Technical Details
- If a single command is enqueued on a stream without an attached
completion signal, `IsQueueIdle()` can incorrectly report the queue as
idle. In the original logic, the write index starts at `0`, so an empty
queue and a queue containing exactly one command at index `0` are
indistinguishable.
- When `hipStreamSynchronize` is called on stream A, the finish path may
call `ReleaseAllHwQueues()`, which can release an idle hardware queue
belonging to stream B. If stream B has only a single enqueued command
without a completion signal, that queue can be released prematurely. A
later synchronization on stream B may then reacquire a different queue
that is already idle, causing `hipStreamSynchronize` to return too
early.
- `last_write_index_` and `last_packet_with_signal_index_` still starts
counting from zero but are preinitialized with an invalid queue index.
## JIRA ID
ROCM-20999
## Test Plan
Run hip-tests.
## Test Result
All hip-tests passed.
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 4a47fe94289240c48cd005cf0499c71221d29a0c
Author: akolliasAMD <99202231+akolliasAMD@users.noreply.github.com>
Date: Wed Apr 22 16:28:06 2026 -0600
removed akolliasAMD from codeowners on rocSHMEM repo (#5250)
## Motivation
Removing akolliasAMD from CODEOWNERS for team changes
## Test Plan
No test needed
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit c08c171dbb0d974eee4c42dc9e7709e2cb13cf56
Author: marandje <marko.arandjelovic@amd.com>
Date: Thu Apr 23 00:18:39 2026 +0200
Remove the queue from a set of active queues only when last enqueued command is cleared (#5193)
## Motivation
Unit_hipMultiThreadStreams1_AsyncAsync fails when GPU_ENABLE_PAL=0. In
HostQueue::finish(), lastEnqueueCommand_ is preserved, but the queue is
still removed from activeQueues. When the next command is enqueued, the
queue is not added back to activeQueues because lastEnqueueCommand_ is
still non-null, which prevents the null stream from implicitly
synchronizing with that queue.
## Technical Details
This change removes the queue from the set of active queues only when
last enqueued command is cleared.
## JIRA ID
ROCM-20999
## Test Plan
Run Unit_hipMultiThreadStreams1_AsyncAsync 100x.
## Test Result
All iterations passed.
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit c74978d8d5f3c7f8732da86659f08acf71b9427f
Author: Sajina PK <sputhala@amd.com>
Date: Wed Apr 22 18:14:48 2026 -0400
[rocprof-systems]: Fix makeinfo build failures on systems without texinfo (#5131)
## Motivation
Bundled `binutils` bfd build can invoke `makeinfo` to refresh GNU Info
manuals. On images without `Texinfo`, that fails with `makeinfo: not
found` even though we only need static libraries (libbfd, libiberty,
etc.).
## Technical Details
- Set `MAKEINFO` to a no-op (true, via `find_program`) in the configure
environment for the timemory `binutils-external` and rocprofiler-systems
`rocprofiler-systems-libiberty-build` ExternalProjects.
- Pass `MAKEINFO=…` on the make command line so existing build trees and
`CONFIGURE_HANDLED_BY_BUILD` flows still override the value baked into
generated Makefiles.
- [x] Merge the timemory update:
https://github.com/ROCm/timemory/pull/30
- [x] Once the timemory PR is merged update the submodule pointer to
head of rocprofiler-systems branch
## JIRA ID
## Test Plan
Manual test building `rocprofiler-systems` project.
## Test Result
Pass
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 4c8dc1a07aaec317ed9bf7da1f7854cac74da62a
Author: spolifroni-amd <Sandra.Polifroni@amd.com>
Date: Wed Apr 22 16:55:44 2026 -0400
[rocdecode, rocjpeg] added env var doc (#5247)
## Motivation
rocdecode and rocjpeg both needed a list of env vars that affected their
runtimes
commit 08cec46e16354c0b34a404acb5c3e94d8035695d
Author: Dmitrii <dmitrii.galantsev@amd.com>
Date: Wed Apr 22 15:42:26 2026 -0500
[ci] Use github-script instead of curl (#3424)
## Motivation
Trying to manually sanitize PR strings is painful.
Use github-script to handle it all for us.
This should prevent issues like
https://github.com/ROCm/rocm-systems/pull/3418#issuecomment-3937597408
where double quotes broke the script.
## Test Plan
- [ ] Make a PR with double quotes in the name and see if script breaks.
- [x] Run the workflow via act to test syntax
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
commit ef7520eccdbe4658a2864ac2ff78bfdb7a1a529c
Author: Scott Tsai <scottt.tw@gmail.com>
Date: Thu Apr 23 04:32:28 2026 +0800
Fix rocprofiler-sdk build on gcc 15 (#934)
This PR fixes building rocprofiler-sdk on gcc 15 by updating two of its
external submodules:
* rocprofiler-sdk/external/yaml-cpp
* rocprofiler-sdk//external/elfio
to include `cstdint.h` where it needs them instead of implicitly through
other C++ standard headers.
commit fc3df3bf950cc16c6bbddd95735e9b9ee4758835
Merge: 1c40b0c84e b5210bf473
Author: Zach Byrne <zbyrne@amd.com>
Date: Wed Apr 22 14:07:44 2026 -0600
[hipfile] Add io size, bandwidth, and latency stats broken down by gpu to ais-stats (#4991)
[AIHIPFILE-159]
HipFile stats stores counters in a series of buckets broken up by
backend, IO operation, and IO size. This lets ais-stats show histograms
for different IO sizes. Also enables stats collection by default.
commit 1c40b0c84e60006d154ec08710fd8e0c54fb3a09
Merge: eb5dee8755 5412a62035
Author: James Newling <james.newling@gmail.com>
Date: Wed Apr 22 12:43:21 2026 -0700
[RocJitsu] Basic CI workflow (#5216)
Add basic CI that runs on free github runners.
Builds in ~10 mins.
Tests run in ~5 seconds.
See 'Checks' to see what tests ran.
commit eb5dee875516bf2fd001a3781938036947fbdb66
Author: Adam Pryor <61172547+adam360x@users.noreply.github.com>
Date: Wed Apr 22 13:38:00 2026 -0500
[RDC] Use longer sampling window when using SIMD rocprof metric (#5251)
## Motivation
SIMD util from rocprof needs a longer sampling window to give meaningful
results
## Test
Verified rocprof metrics behavior correctly with longer sampling window
Signed-off-by: Adam360x <Adam.pryor@amd.com>
commit 8d566d526860fea2822d57e5084ffd14c65ac031
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sat Mar 28 15:30:54 2026 +0000
Bump cryptography in /projects/rocr-debug-agent/docs/sphinx
Bumps [cryptography](https://github.com/pyca/cryptography) from 43.0.0 to 46.0.6.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/43.0.0...46.0.6)
---
updated-dependencies:
- dependency-name: cryptography
dependency-version: 46.0.6
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
commit 07a818e54c4a7f1fd24dd851c98b51730627edf2
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Fri Apr 3 03:38:20 2026 +0000
build(deps): bump pygments in /projects/rocr-debug-agent/docs/sphinx
Bumps [pygments](https://github.com/pygments/pygments) from 2.18.0 to 2.20.0.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.18.0...2.20.0)
---
updated-dependencies:
- dependency-name: pygments
dependency-version: 2.20.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
commit fb4aa4aac81f5f0099480ad35cf8b330ac8547b1
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue Apr 7 07:38:17 2026 +0000
Bump tornado in /projects/rocr-debug-agent/docs/sphinx
Bumps [tornado](https://github.com/tornadoweb/tornado) from 6.4.2 to 6.5.5.
- [Changelog](https://github.com/tornadoweb/tornado/blob/master/docs/releases.rst)
- [Commits](https://github.com/tornadoweb/tornado/compare/v6.4.2...v6.5.5)
---
updated-dependencies:
- dependency-name: tornado
dependency-version: 6.5.5
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
commit f3cabf66b29ae140410bd432841d1a8833f50202
Author: Lancelot SIX <lancelot.six@amd.com>
Date: Fri Apr 17 16:23:11 2026 +0100
Cleanup unused arch.
commit cdbf9cb8ba938b1990afbd929170291df73b5856
Author: Lancelot SIX <lancelot.six@amd.com>
Date: Fri Apr 17 16:20:15 2026 +0100
gfx12: Fix writing to pseudo_state_priv
I noticed that the debugger can't write the $state_priv register, writes
are eventually skipped.
It turns out this is because gfx12_architecture_t::write_pseudo_register
fails to memcpy the value to the register.
Fix this.
commit 1dd1c995a1181ecf8356d04846c35dccccbdb9d5
Author: Yiltan <ytemucin@amd.com>
Date: Wed Apr 22 11:59:22 2026 -0400
[rocshmem] Remove warnings: local memory global used by non-kernel function (#4948)
## Motivation
In an effort to cleanup rocSHMEM, we are fixing the warnings. The
specific warning this PR fixes is
```
warning: <unknown>:0:0: in function xyz: local memory global used by non-kernel function
```
## Technical Details
`__shared__` cannot be declared with in a `__device__` function
## JIRA ID
AIROCSHMEM-332
commit c6708bf70c9a47954916551644ff38992c622010
Author: Siwei He <siweihe.eng@gmail.com>
Date: Wed Apr 22 11:03:34 2026 -0400
kfdtest: Use CopyDwordIsa in Ptrace test (#5233)
Fix: Switch to CopyDwordIsa, which is simpler and appropriate for this
test's purpose (testing ptrace access to invisible VRAM, not scratch
memory). This avoids the scratch space conversion logic entirely.
## Motivation
PtraceAccessInvisibleVram test failure due to change in
ScratchCopyDwordIsa. This test is better using CopyDwordIsa
## Technical Details
## JIRA ID
ROCM-23360
ROCM-20237
## Test Plan
Able to compile the test and pass the PtraceAccessInvisibleVram test.
## Test Result
Test passed. Since this change only affects PtraceAccessInvisibleVram
test. It's safe to test only this sub test case.
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 8821e322291b57fe68aa64891ccb836a77f9da77
Author: Edgar Gabriel <edgargabriel@users.noreply.github.com>
Date: Wed Apr 22 09:51:45 2026 -0500
[rocSHMEM] remove static amdsmi-loader instance (#5236)
## Motivation
the constructor in a static amdsmi-loader instance tried to open the
amdsmi lib and dlsym the functions used even if we do not compile with
pod-detection. The static instance however not actually required.
## Test Result
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 0b6b84f76d0e69c311b49a25b48bff0a8c3aa7ff
Author: Shadi Dashmiz <94885391+shadidashmiz@users.noreply.github.com>
Date: Wed Apr 22 09:11:21 2026 -0400
ROCM-20929 - fix hiptests issues (#5159)
- check for proper peer enablement
- remove constexpr evalution
## Motivation
2 tests are failing due to error in the test code
## Technical Details
Constexpr caused the block of code to not run so that p2p check was
incomplete.
Check if P2P is supported before testing the error code. If P2P isn't
supported at all, skip the test.
## JIRA ID
ROCM-20929
## Test Plan
Hip test in the ticket
## Test Result
PSDB - passed
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
commit 00238f6c365df815d616fa9c6928fe5d58a48cc6
Author: Aurelien Bouteiller <abouteil@amd.com>
Date: Tue Apr 21 22:21:16 2026 -0400
Workaround for the DIEExpression failure to build with Debug (#5205)
RelWithDebInfo and Debug configurations fail to build with DIEExpression
error on certain versions of hip/clang.
THis is a workaround, a complete solution is pending on the compiler
side of the house we should reconsider when this is deployed.
## Motivation
Being able to debug is critical.
## Technical Details
Disable expanded dwarf decorators, rely on normal dwarf.
Also reenable -O0 in debug since that now also compiles.
This disables some debug info but that cannot be avoided until the
compiler gets updated.
## JIRA ID
AIROCSHMEM-227
## Test Plan
* [x] Build with debug
* [x] can rocgdb the code without crashing rocgdb
* [x] some debug info avail (not all, its not possible)
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 2ea2e50ea976340213f399bc7f6a7f6df0ff59d4
Author: jamessiddeley-amd <James.Siddeley@amd.com>
Date: Tue Apr 21 21:57:42 2026 -0400
[rocprof-compute] Move intermediate csv deprecation warning to 7.13 upcoming changes (#5255)
## Motivation
Move deprecation warning out of 'Unreleased' section and move to changes
to ROCm 7.13 upcoming changes section instead
## Technical Details
No functional changes
## JIRA ID
N/A
## Test Plan
N/A
## Test Result
N/A
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 1140233ffee37996820dcfaa710273fd2061a331
Author: Mark Meserve <mark.meserve@amd.com>
Date: Tue Apr 21 17:48:00 2026 -0500
rocprofiler-sdk: attach: multiprocess support (#4804)
- Adds the ability to attach to a process and all of its descendant
processes in a single call
- Adds rocattach_attach_tree and rocattach_detach_tree to rocattach
- Adds --attach-children option to rocprofv3
- Defaults to True
- Adds test to verify attach tool loading through a process tree
- Adds test to verify tool data through rocprofv3
- Some logging and documentation cleanup
commit e4029c3fed5478c48a3f5c4c36924b19a8c093cd
Author: Aryan Salmanpour <aryan.salmanpour@amd.com>
Date: Tue Apr 21 14:22:06 2026 -0700
[rocjpeg][samples] - Add total wall time for jpeg decoding (#5206)
## Motivation
This PR adds overall wall time for the jpegDecodePerf sample.
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
## Test Result
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit bd00380ee6b9d90e17a7282b763ee7af22f18682
Author: Aryan Salmanpour <aryan.salmanpour@amd.com>
Date: Tue Apr 21 14:17:51 2026 -0700
[rocdecode][ctest] - Add option to enable extended ctest tests (#5004)
## Motivation
Add a CMake option `ENABLE_EXTENDED_TESTS` to enable extended ctest
tests for rcodecode.
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
## Test Result
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: kiritigowda <kiritigowda@gmail.com>
commit c5245d48f55fbca612be4fc6fc1c5813ae559da4
Author: Benjamin Welton <Benjamin.Welton@amd.com>
Date: Tue Apr 21 13:32:08 2026 -0700
[rocprofiler-sdk] Add runtime guards to ROCP_* log macros (#5222)
## Summary
- Add runtime log level checks to `ROCP_INFO`, `ROCP_WARNING`,
`ROCP_ERROR` and their `_IF` variants
- Prevents evaluation of stream arguments (including `fmt::format`
calls) when the severity is below the configured minimum log level
- Uses abseil's `LOG_IF` which internally short-circuits via a ternary
pattern, ensuring zero argument evaluation overhead when logging is
suppressed
- `ROCP_TRACE` already guards via `VLOG_IS_ON`;
`ROCP_FATAL`/`ROCP_DFATAL` are never suppressed
## Test plan
- [ ] CI builds pass across all OS variants
- [ ] Verify log output is unchanged at default log level (WARNING)
- [ ] Verify no output from `ROCP_INFO`/`ROCP_WARNING` when
`ROCP_LOG_LEVEL=error`
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Opus 4 <noreply@anthropic.com>
commit 5412a620359b09593cfd3e0b0959c7a1a443c56e
Author: James Newling <james.newling@gmail.com>
Date: Mon Apr 20 21:37:22 2026 +0000
add libdrm-dev dep in CI
commit 8a03fbe617fa1f2441a08f772471824c2a0f9ffb
Author: James Newling <james.newling@gmail.com>
Date: Mon Apr 20 21:32:11 2026 +0000
add most basic of vanilla CIs
commit 58d180e1f39538c7bf724cf225aca18bef944297
Author: Maisam Arif <Maisam.Arif@amd.com>
Date: Tue Apr 21 14:52:48 2026 -0500
[AMD-SMI] Upgrade precommit workflow to have diff highlighting (#4534)
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
commit d9b2e09246116d69de08e8108df838b8f7f67324
Author: Darren Lao <Darren.Lao@amd.com>
Date: Tue Apr 21 15:52:01 2026 -0400
Fix amdsmi_pcie_info_t speed unit (#5245)
Fixes https://github.com/ROCm/rocm-systems/issues/5200
This is purely a documentation change, and corrects the units for
`max_pcie_speed` to be in MT/s, which I confirmed is returned from:
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
commit 9fb1dff90e1d4bf73777d4eb93059a270a40a13d
Author: Avinash Kethineedi <avinash.kethineedi@amd.com>
Date: Tue Apr 21 13:43:45 2026 -0500
[rocSHMEM] Implement ROCSHMEM_TEAM_SHARED in all the backends (#4914)
## Motivation
Implement the `ROCSHMEM_TEAM_SHARED` predefined team per the OpenSHMEM
specification. TEAM_SHARED comprises all PEs sharing a common memory
domain (same node), enabling node-scoped collective and point-to-point
operations.
## Technical Details
- Declare and define `ROCSHMEM_TEAM_SHARED` in host/device namespaces
with device symbol copy support.
- Add team_shared_ to TeamTracker with `NUM_RESERVED_TEAMS` so
predefined teams don't consume user-creatable team slots.
- Protect TEAM_SHARED from destruction in `rocshmem_team_destroy()`.
- Implement `setup_team_shared()` in all three backends (IPC, RO, GDA).
In RO and GDA, TEAM_SHARED is only created when IPC is enabled at
compile-time and runtime; otherwise set to `ROCSHMEM_TEAM_INVALID`.
- Update `team_ctx_infra_tester` to use runtime `ROCSHMEM_MAX_NUM_TEAMS`
with dynamic sizing.
- Add `TeamCtxSharedInfraTestType` (test 94) to validate
`ROCSHMEM_TEAM_SHARED` PE identity, team size, and context creation on
device. Gracefully skips when IPC is disabled.
## JIRA ID
- AIROCSHMEM-355
## Test Plan
- Run teamctxsharedinfra (test 94) with 2 ranks on the same node.
- Run hipmodule_init test to verify symbol copy.
- Verify graceful skip when IPC is disabled.
## Test Result
- [x] Tested with IPC backend
- [x] Tested with RO backend (IPC enabled)
- [x] Tested with RO backend (IPC disabled, verifies graceful skip)
- [x] Tested with GDA backend (IPC enabled)
- [x] Tested with GDA backend (IPC disabled, verifies graceful skip)
commit a8eef4083e76a2b8a78221510023da85b88af144
Author: Jason Bonnell <166553723+jbonnell-amd@users.noreply.github.com>
Date: Tue Apr 21 13:47:16 2026 -0400
Update rocprofiler workflows to use latest actions with node 24 (#5231)
## Motivation
<!-- Explain the purpose of this PR and the goals it aims to achieve.
-->
Noticed that older versions of Docker actions used Node 20, and Node 20
actions are being deprecated in June.
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
- Update `rocprofiler-*` workflow files to use the latest versions of
Docker and GitHub actions (moved to Node 24)
- `docker/login-action` -> v4.1.0
- `docker/metadata-action` -> v6.0.0
- `docker/build-push-action` -> v7.1.0
- `docker/setup-buildx-action` -> v4.0.0
- `actions/checkout` -> v6
- `actions/upload-artifact` -> v7
- `nick-fields/retry` -> v4
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
Ensure no regression issues with action updates, workflows pass
## Test Result
<!-- Briefly summarize test outcomes. -->
TBA
## Submission Checklist
- [X] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 774ff6e7eec8fb0e79aaab408191635857c8367e
Author: Victor Zhang <111778801+victzhan@users.noreply.github.com>
Date: Tue Apr 21 13:06:25 2026 -0400
[AIRUNTIME-1929] HIP memory stress test fixes and improvements (#4069)
## Motivation
Fix instability and build issues in HIP memory stress tests.
## Technical Details
- Fix grid-stride loop in `KrnlWth2MemTypes` kernel in
`hipMallocManagedStress.cc`.
- Fix resource leaks (`hipFree`, `hipStreamDestroy`) in `LaunchKrnl4`.
- Re-initialize managed memory between prefetch iterations in
`hipMemPrftchAsyncStressTst.cc`.
- Fix `hold_memory` build: correct include and add missing link library.
- Simplify `stress_test` custom target.
- Add `hipMallocConcurrency.cc` to the build.
## JIRA ID
AIRUNTIME-1929
## Test Plan
Build and run `stress_test` target. Verify stress tests pass
consistently.
## Test Result
Pending
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 9deaac2945c4ef2cb9ab787b40619f96849d41e5
Author: Victor Zhang <111778801+victzhan@users.noreply.github.com>
Date: Tue Apr 21 13:05:17 2026 -0400
ROCM-2903 - Default DEBUG_HIP_MEM_POOL_VMHEAP to IS_LINUX (#5139)
## Motivation
rocBLAS graph tests hang on Windows 11 after sustained stream-ordered
allocation / free / trim cycles (~500-1000 cycles in). The hang is in
the VM heap path: awaitCompletion on the synchronous VirtualMapCommand
blocks indefinitely with the GPU event never signaling, leaving the
command stuck in CL_SUBMITTED.
## Technical Details
Default DEBUG_HIP_MEM_POOL_VMHEAP to IS_LINUX so that allocations on
Windows are routed through SvmBuffer::malloc / free instead of
VirtualMapCommand. This is a temporary workaround until the ROCR/HSA
backend becomes the default on Windows, which brings direct dispatch and
avoids this path entirely.
## JIRA ID
ROCM-2903
## Test Plan
Run rocblas-test *graph* filter on Navi3x / Windows 11; verify the hang
is resolved.
## Test Result
Confirmed on W7900 (gfx1100) + Windows 11: PAL previously hung at
trmv_graph_test_f32_r_U_N_N_128_2_1; with this change all 1637 graph
tests pass.
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: FirstName LastName (Public) <your_public_email@example.com>
commit 2ecbb87a314b60d7b992cb4f275714e8b09a6c9b
Author: Kian Cossettini <Kian.Cossettini@amd.com>
Date: Tue Apr 21 13:01:22 2026 -0400
[rocprofiler-systems] Install python dependencies at the Dockerfile level (#5197)
## Motivation
<!-- Explain the purpose of this PR and the goals it aims to achieve.
-->
Part of https://github.com/ROCm/rocm-systems/pull/3962
Make the dockerfiles install the requirements.txt.
Drop support for python 3.6 and 3.7 (test suite requires python 3.8 and
above)
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
Remove 3.6 and 3.7 from Dockerfiles and workflows.
Install requirements.txt in Dockerfiles
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
## Test Result
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit c54a0e85fa6727ce1ffdc5ccc3695af0950365d8
Author: Dmitrii <dmitrii.galantsev@amd.com>
Date: Tue Apr 21 11:54:10 2026 -0500
[RDC][AMD-SMI][ROCM-SMI] Drop POST_BUILD strip on shared libs (#5237)
Defer stripping to packagers and TheRock's THEROCK_SPLIT_DEBUG_INFO.
Fixes
SONAME-symlink corruption under llvm-strip
(https://github.com/ROCm/TheRock/issues/4640)
commit e22df2da076973fb0a347c868edd2beea7f1fb7d
Author: Venkateshwar Reddy Kandula <Venkateshwarreddy.Kandula@amd.com>
Date: Tue Apr 21 11:17:29 2026 -0500
[rocprofiler-sdk] Add reusable composite action rocprofiler-sdk CI (#5095)
## Motivation
This PR introduces a reusable local composite GitHub Action to
consolidate repeated “install ROCm + build dependencies” logic across
rocprofiler-sdk workflows, aiming to reduce duplication and simplify
maintenance.
## Technical Details
- Added a new composite action: .github/actions/rocprofiler-sdk-util.
- Updated rocprofiler-sdk workflows (docs, CI, CodeQL, code coverage) to
call the composite action instead of inlining dependency build steps.
- Added workflow env toggles to enable/disable building specific
dependencies (ROCR, HIP/CLR, rocprofiler-register, aqlprofile,
rocDecode, rocJPEG) and to control nightly ROCm installation.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
CI checks
## Test Result
Passing
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
commit 7a234bbaf6ba32af3b64aacdbe27eaaac8348823
Author: Aurelien Bouteiller <abouteil@amd.com>
Date: Tue Apr 21 11:01:40 2026 -0400
[rocSHMEM] Fix a warning when building config gda_ionic (#5218)
## Motivation
Fix warnings
## Technical Details
missing a [[maybe-unused]] in gda_ionic configuration.
## JIRA ID
AIROCSHMEM-300
commit b44f6c789daaf102492bb3572005318599abd656
Author: German Andryeyev <56892148+gandryey@users.noreply.github.com>
Date: Tue Apr 21 10:59:12 2026 -0400
clr: Expose some HSA interfaces in hip dll (#4748)
## Motivation
These calls are required to enable AQL profiler functionality on
Windows.
## Technical Details
Currently AQL profiler requires direct calls to ROCR interfaces
## JIRA ID
OCM-1667
## Test Plan
Aql profiler tests
## Test Result
Passed
## Submission Checklist
N/A
commit 1f21d5b1a5273a9237ab3594bb56ebf2e64f2fc4
Author: Jason Bonnell <166553723+jbonnell-amd@users.noreply.github.com>
Date: Tue Apr 21 09:28:51 2026 -0400
[rocprofiler-compute] Update git version in Ubuntu GHCR CI images (#5208)
## Motivation
<!-- Explain the purpose of this PR and the goals it aims to achieve.
-->
#5144 adds some new submodules, and the current CI image is failing to
clone the repo with the submodules due to 22.04 using an older version
of git.
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
- Update `Dockerfile.ubuntu.ci` to include the git-core ppa repository
so we can grab the latest version of git
- Previous version installed was 2.34.1, which was the latest version
available with default ubuntu 22.04 repos
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
- Ensure Dockers build properly
- Once merged, verify that the updated images are able to pass the
checkout step in #5144 checks
## Test Result
<!-- Briefly summarize test outcomes. -->
TBA
## Submission Checklist
- [X] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 4753424bc943669bb2a67c29783717042b457f9c
Author: Alexey Sachkov <alexey.sachkov@amd.com>
Date: Tue Apr 21 14:30:51 2026 +0200
[CLR][NFC] Optimize tracking of active queues (#4945)
## Motivation
Performance optimization of the runtime.
## Technical Details
`std::unordered_set::[insert|erase]` allocate/deallocate memory which is
an unnecessary action considerng that a list of all command queues which
are present throughout an application lifetime is mostly stable, i.e.
the assumption is made that HIP streams are not short-lived, but instead
mostly span the whole application lifetime.
## JIRA ID
N/A
## Test Plan
N/A, this change is non-functional
## Test Result
N/A, this change is non-functional
## Submission Checklist
- [X] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 019054fdb5070b663ba741b6f3c8e715d4816a87
Author: Aleksandar Djordjevic <aleksandar.djordjevic@amd.com>
Date: Tue Apr 21 14:06:28 2026 +0200
[rocprofiler-systems] filter VCN/JPEG sentinel values during metric collection (#5145)
## Motivation
When only some VCN/JPEG engines are present on a GPU, the AMD SMI
`vcn_activity`/`jpeg_activity` arrays contain `0xFFFF` sentinel values
for absent engines. These sentinel values were being passed through to
Perfetto and RocPD output as `65535`, appearing as bogus
`device_vcn_activity_1`, `_2`, `_3` metrics.
commit b6285c0a549a85c825d5e00fd51b3fb79f42c71d
Author: Pedro Alves <pedro@palves.net>
Date: Fri Apr 17 16:06:55 2026 +0100
Add missing AMD_DBGAPI_EXPORT_DECORATOR fallback
The AMD_DBGAPI_EXPORT_DECORATOR definition block is missing the
fallback case. Fix that.
Change-Id: Idcc785b59a48b5cc17c64d4b70e534ba6e912eaf
commit-id:8ab06a04
commit b1ac485c994985b67f1dd712693c81b614d0bf12
Author: Pedro Alves <pedro@palves.net>
Date: Fri Apr 17 16:06:55 2026 +0100
Fix building dbgapi as a static library
Since 4bfddf5494 ("dbgapi/win32: __declspec(dllexport) instead of
--version-script"), building dbgapi as a static library on Windows
fails with errors such as:
.../rocm-dbgapi/src/initialization.cpp:41:1: error: function 'amd_dbgapi_status_t amd_dbgapi_initialize(amd_dbgapi_callbacks_s*)' definition is marked dllimport
41 | amd_dbgapi_initialize (struct amd_dbgapi_callbacks_s *callbacks)
| ^~~~~~~~~~~~~~~~~~~~~
The symbols end up "marked dllimport" because with:
set_target_properties(amd-dbgapi PROPERTIES
...
DEFINE_SYMBOL "AMD_DBGAPI_EXPORTS"
...
... DEFINE_SYMBOL is a CMake convenience that only applies when (and
while) building a shared library. When BUILD_SHARED_LIBS is OFF,
DEFINE_SYMBOL does nothing. So AMD_DBGAPI_EXPORTS ends up not defined
in amd-dbgapi.h, which results in AMD_DBGAPI mapping to
AMD_DBGAPI_IMPORT, here, in amd-dbgapi.h.in:
#define AMD_DBGAPI AMD_DBGAPI_IMPORT
AMD_DBGAPI_IMPORT in turn is unconditionally defined to
__declspec(dllimport) on Windows.
So there are two issues:
- The dbgapi build itself is treated as importing symbols (as a
consumer) instead of exporting them (as a producer).
- The import/export decorations are applied even when dbgapi is built
as a static library, where they should not be used at all.
Fix this by teaching amd-dbgapi.h about whether dbgapi was built as a
static or shared library. Since the header is generated, define
AMD_DBGAPI_STATIC_LIB (0 or 1) at configure time and use it to skip
using import/export decorations.
This also ensures that clients, including those which do not use CMake
(e.g. GDB), automatically see consistent definitions without needing
to know how dbgapi was built.
Change-Id: I31c8c947791551cc4e20218826561c1d242f298d
commit-id:12deacf2
commit e42ed4ca16c7713233161740b0a22d9c50fd2fba
Author: Luis Machado <luis.machado@amd.com>
Date: Mon Apr 13 09:50:10 2026 -0500
Add Python executable paths to all TheRock builds
Configure shared and dist Python executables (3.10-3.14) for all build
configurations to ensure consistent Python environment across CI builds.
Also update the manylinux container hash to the latest.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
commit da8621629e24cabc4c92d43e2cbeb6cebc751c1c
Author: vstojilj <vstojilj@amd.com>
Date: Tue Apr 21 10:56:59 2026 +0200
Accept only valid device allocations for hipTexObjectCreate (#4814)
## Motivation
Unit_TexObjectCreate_TypePitch2D_EdgeCases is failing on APUs when host
pointer is passed to hipTexObjectCreate and it should fail with
hipErrorInvalidValue.
## Technical Details
Check if buffer retrieved by devptr is a valid allocation before
creating tex object.
## JIRA ID
Resolves AIRUNTIME-72.
## Test Plan
Retest with Unit_TexObjectCreate_TypePitch2D_EdgeCases.
## Test Result
test passes.
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit d4570465bfb80c34171815318ec822f1dbcc07be
Author: systems-assistant[bot] <221163467+systems-assistant[bot]@users.noreply.github.com>
Date: Mon Apr 20 22:31:38 2026 -0700
Update TheRock reference to (702d158) (#5117)
Updated TheRock ref to `702d158` due to submodule bump
update - Rename ccache presets as per therock pr
https://github.com/ROCm/TheRock/pull/4402
---------
Co-authored-by: therockbot <therockbot@amd.com>
Co-authored-by: rahulc-gh <rahul.choudhary@amd.com>
Co-authored-by: RahulC <168588218+rahulc-gh@users.noreply.github.com>
commit e5a46360d85ac27fc2d028a1f094eb0c9292ec59
Author: Shweta Khatri <shweta.khatri@amd.com>
Date: Thu Apr 2 14:56:05 2026 -0400
rocr: PC Sampling : Add reserved_wg field to PC sampling structs
Add missing reserved_wg field to perf_sample_hosttrap_v1_t and
perf_sample_snapshot_v1_t. This aligns with the profiler which
expects chiplet at bits [10:8].
commit b768f127de8c219e1604615293aa68d6d2220e85
Author: Jeff Jiang <142832361+jeffqjiangNew@users.noreply.github.com>
Date: Mon Apr 20 22:21:55 2026 -0400
[rocDecode] Merge debug logging into the new logging mechanism. (#5210)
## Motivation
This PR merges debug logging into the new logging mechanism.
## Technical Details
- rocDecode debug message was a compile option.
- Now debug logging can be enabled by setting env var ROCDEC_LOG_LEVEL
to 4 . This helps issue triage on the release builds.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
Run CTests and decode conformance tests to catch any regressions.
Run rocdecdecode samples to verify user set output.
## Test Result
All CTests and conformance tests pass. Example summary of the test
results:
CTests:
Start 1: video_decodeRaw-HEVC
1/6 Test #1: video_decodeRaw-HEVC ............. Passed 2.10 sec
Start 2: video_decodeRaw-AVC
2/6 Test #2: video_decodeRaw-AVC .............. Passed 1.96 sec
Start 3: video_decodeRaw-AV1
3/6 Test #3: video_decodeRaw-AV1 .............. Passed 2.03 sec
Start 4: video_decodeRaw-VP9
4/6 Test #4: video_decodeRaw-VP9 .............. Passed 2.05 sec
Start 5: rocdec_Decode-HEVC
5/6 Test #5: rocdec_Decode-HEVC ............... Passed 0.91 sec
Start 6: rocDecode_Negative_API_Tests
6/6 Test #6: rocDecode_Negative_API_Tests ..... Passed 0.73 sec
Conformance tests:
AVC conformance test:
Conformance test completed on the 127 streams:
The number of passing streams is 127
The number of failing streams is 0
The number of streams that did not finish decoding is 0
HEVC conformance test:
Conformance test completed on the 135 streams:
The number of passing streams is 135
The number of failing streams is 0
The number of streams that did not finish decoding is 0
AV1 conformance test:
Conformance test completed on the 162 streams:
The number of passing streams is 162
The number of failing streams is 0
The number of streams that did not finish decoding is 0
VP9 conformance test:
Conformance test completed on the 108 streams:
The number of passing streams is 108
The number of failing streams is 0
The number of streams that did not finish decoding is 0
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit ff1db549b2d5061ff0026ee9933c0e83b5533fef
Author: koushikbillakanti-amd <koushik.billakanti@amd.com>
Date: Mon Apr 20 21:06:48 2026 -0500
Add NPU device type support (#4952)
## Motivation
Add NPU device support to CUID so RyzenAI/amdxdna devices are
discoverable and assigned unique identifiers.
## Technical Details
Introduce CuidNpu class with discovery via accel, primary/derived CUID
generation, PCI config space fingerprinting, and wire NPU through the
daemon, CLI, device manager, and file serialization paths.
Co-authored-by: Koushik Billakanti <kbillaka@amd.com>
commit 4e965940280c5b567d4ad36dc41418f6b2da8593
Author: Kian Cossettini <Kian.Cossettini@amd.com>
Date: Mon Apr 20 18:12:14 2026 -0400
[rocprofiler-systems] Improve troubleshooting messages for Dyninst errors (#4947)
## Motivation
<!-- Explain the purpose of this PR and the goals it aims to achieve.
-->
During instrumentation, it is possible for Dyninst to fail to process
certain sequences of instructions in a function. When this occurs, a
vague error message would be printed.
This PR adds more details to the error message and adds information to
`instrumenting-rewriting-binary-applications.rst` to inform the user to
exclude the problematic function/module/object in subsequent runs (which
may prevent errors).
With this PR:
```
# Before
Failed to transform trace 9105
# After
Failed to transform trace 9105 in function 'llvm::msgpack::Reader::read' in module '/opt/rocm-7.1.1/lib/llvm/lib/libomptarget.so.20.0git' in object 'libomptarget.so.20.0git' at address 0x7f4c3f179120
```
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
See the original issue: https://github.com/dyninst/dyninst/issues/2203
Merge https://github.com/ROCm/dyninst/pull/13.
Update submodule pointer to
https://github.com/ROCm/dyninst/commit/77203e0b4f917aec534ac2717643c17838fded7e.
Added `Failed to transform trace error` section to
`projects/rocprofiler-systems/docs/how-to/instrumenting-rewriting-binary-application.rst`.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
ROCM-21219
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
N/A
## Test Result
<!-- Briefly summarize test outcomes. -->
N/A
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit e0fa30b1465526e3255df950df5edc8dfd83b631
Author: Bindhiya Kanangot Balakrishnan <Bindhiya.KanangotBalakrishnan@amd.com>
Date: Mon Apr 20 16:56:59 2026 -0500
[ROCM-1553] GPU metrics v1.9 support with new attributes (#5125)
[ROCM-1553] GPU metrics v1.9 support with new attributes
Added support for updated dynamic GPU metrics version 1.9 by introducing
new metric attributes based on latest amdgpu header.
Updated python interface and CLI outputs for new gpu_metric fields.
Unified CLI output for amdsmi metric. Updated Changelog.
Signed-off-by: Bindhiya Kanangot Balakrishnan <Bindhiya.KanangotBalakrishnan@amd.com>
commit 6c571bb686712f9366fa8ee8646e48fdf25222c5
Author: Jeff Jiang <142832361+jeffqjiangNew@users.noreply.github.com>
Date: Mon Apr 20 14:43:02 2026 -0400
[rocDecode] Logging format in utility classes now matches RocDecLogger format. (#4997)
## Motivation
Unify logging format in utility classes with core library logging
format.
## Technical Details
This PR unifies logging format in utility classes with core library
logging format.
- Logs from utility classes are now more informative.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
Run CTests and decode conformance tests to catch any regressions.
Run rocdecdecode samples to verify user set output.
## Test Result
All CTests and conformance tests pass. Example summary of the test
results:
CTests:
Start 1: video_decodeRaw-HEVC
1/6 Test https://github.com/ROCm/rocm-systems/pull/1:
video_decodeRaw-HEVC ............. Passed 1.96 sec
Start 2: video_decodeRaw-AVC
2/6 Test https://github.com/ROCm/rocm-systems/pull/2:
video_decodeRaw-AVC .............. Passed 1.84 sec
Start 3: video_decodeRaw-AV1
3/6 Test https://github.com/ROCm/rocm-systems/pull/3:
video_decodeRaw-AV1 .............. Passed 1.88 sec
Start 4: video_decodeRaw-VP9
4/6 Test https://github.com/ROCm/rocm-systems/pull/4:
video_decodeRaw-VP9 .............. Passed 1.93 sec
Start 5: rocdec_Decode-HEVC
5/6 Test https://github.com/ROCm/rocm-systems/pull/5: rocdec_Decode-HEVC
............... Passed 0.85 sec
Start 6: rocDecode_Negative_API_Tests
6/6 Test https://github.com/ROCm/rocm-systems/pull/6:
rocDecode_Negative_API_Tests ..... Passed 0.72 sec
100% tests passed, 0 tests failed out of 6
AVC conformance test:
Conformance test completed on the 127 streams:
The number of passing streams is 127
The number of failing streams is 0
The number of streams that did not finish decoding is 0
HEVC conformance test:
Conformance test completed on the 135 streams:
The number of passing streams is 135
The number of failing streams is 0
The number of streams that did not finish decoding is 0
AV1 conformance test:
Conformance test completed on the 162 streams:
The number of passing streams is 162
The number of failing streams is 0
The number of streams that did not finish decoding is 0
VP9 conformance test:
Conformance test completed on the 108 streams:
The number of passing streams is 108
The number of failing streams is 0
The number of streams that did not finish decoding is 0
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
commit 2e1eb97edb6d9b0545c2ce3f5e900131540da0c7
Author: Avinash Kethineedi <avinash.kethineedi@amd.com>
Date: Mon Apr 20 13:27:03 2026 -0500
[rocSHMEM] Add library metadata constants, version/name query APIs, and documentation (#5151)
## Motivation
Add library metadata constants and version/name query APIs to rocSHMEM,
aligning with the OpenSHMEM specification.
## Technical Details
- Replace version parsing from the C++ header with a direct CMake
variable and add backend/vendor string construction to CMakeLists.txt
- Add vendor version, vendor string, and backend metadata to
rocshmem_config.h and surface them in rocshmem_info output
- Add ROCSHMEM_MAJOR_VERSION, ROCSHMEM_MINOR_VERSION,
ROCSHMEM_MAX_NAME_LEN to rocshmem.hpp
- Add host APIs: rocshmem_info_get_version, rocshmem_info_get_name,
rocshmem_vendor_get_version_info
- Update rocshmem_init_attr_test example to use the new query APIs
- Add Sphinx documentation for library constants and query APIs
- Templatize print_entry in build_info.cpp to support int arguments
- Update docs/conf.py to read version from CMakeLists.txt
- Add Linux build instructions and custom output directory usage to docs
README
## JIRA ID
- AIROCSHMEM-359
## Test Plan
- Build with all backend configurations (GDA with IONIC/BNXT/MLX5, RO,
IPC, and combinations) and verify rocshmem_info output shows the correct
vendor string, version, and backend for each configuration
- Run rocshmem_init_attr_test and verify version/name output on rank 0
- Build the Sphinx documentation and verify the new library constants
and query API pages render correctly
## Test Result
- All backend configurations produce the expected vendor strings (e.g.
`rocSHMEM_v3.3.0_GDA(IONIC/BNXT/MLX5)+RO+IPC` when compiled with all
backends and NICs enabled)
- rocshmem_info output displays correct version, vendor string, and
backend metadata for all tested configurations
- Sphinx documentation builds without warnings in the newly added
sections; library constants and query API pages render correctly
commit b87cea434d77e56499835c54c01db8a5fa51f13b
Author: Sumanth Gavini <sumanth.gavini@amd.com>
Date:…
ApoKalipse-V
added a commit
that referenced
this pull request
Apr 28, 2026
commit b3aabb45064e63ec721f13a48146c0fe76d76c02
Author: alexxu-amd <159800977+alexxu-amd@users.noreply.github.com>
Date: Thu Apr 23 10:23:25 2026 -0400
[rocr-debug-agent] Correct .readthedocs path for monorepo migration (#5340)
## Motivation
.readthedocs.yml contains outdated path.
## Technical Details
Correct the path to match monorepo setup.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
## Test Result
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit b5cd2c0530096f57e56cf2bebdfe2b7a7d09c060
Author: jamessiddeley-amd <James.Siddeley@amd.com>
Date: Thu Apr 23 10:10:59 2026 -0400
[rocprof-compute] Removed --exit-zero from ruff formatting workflow (#5308)
## Motivation
The formatting workflow uses`ruff check . --fix --exit-zero`.
This PR drops `--exit-zero` from the ruff CI step so the workflow
actually fails on lint errors that aren't auto fixable instead of
silently passing them
## Technical Details
N/A
## JIRA ID
N/A
## Test Plan
N/A
## Test Result
N/A
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: Vignesh Edithal <Vignesh.Edithal@amd.com>
commit 8508fd9b5e9a42a39929eabfc5d4b5e12c90f92a
Author: Ammar ELWazir <ammar.elwazir@amd.com>
Date: Thu Apr 23 09:04:20 2026 -0500
feat(perfxpert): consolidate agentic redesign and validation stack (#4576)
## Summary
This PR is the consolidation point for the current
`experimental/python/perfxpert` stack. It is no longer just the original
rename branch: it now carries the agentic redesign, provider/runtime
hardening, launcher/backend integration, parity/regression coverage, and
the docs/media refresh on top of the `ROCInsight` -> `PerfXpert` rename.
## Scope
In scope:
- `experimental/python/perfxpert/**`
Explicitly out of scope for this PR:
- `.github/**`
- CI/workflow-only changes (handled separately)
## Design / Feature Areas
### 1. Rename + package surface
- rename from `rocinsight` to `perfxpert`
- updated package/import/CLI/env-var/doc branding
- preserved the Python and CLI entry surfaces under the new package name
### 2. Agentic analysis stack
- layered agent hierarchy with Root, Analysis, Recommendation,
Correctness, and specialist agents
- shared agent brain across batch `perfxpert analyze`, Python API, MCP,
and interactive launcher flows
- fence-sliced prompt layering retained across the hierarchy
### 3. Provider + runtime hardening
- provider registry/config loading and public provider surface fixes
- typed provider error taxonomy and provider routing cleanup
- fallback-chain support in the runtime session layer
- recursion-guard and gate-cascade fixes carried forward into the
consolidated branch
### 4. Launcher + backend integration
- multi-backend `perfxpert-code` surface (`opencode`, `claude`, `codex`,
`gemini`)
- MCP registration + staged prompt wiring for backend adapters
- source-checkout preference for the locally built patched `opencode`
binary before bundled/PATH fallbacks
- bundled build script now tolerates Bun lockfile-format churn by
retrying without `--frozen-lockfile`
### 5. CLI + user workflows
- top-level `init`, `diff`, `ci`, `doctor`, `providers`, and analyze
flows present on the consolidated branch
- source-only, trace-only, and combined analyze paths preserved
- diff/CI/reporting surfaces merged into the same branch state
### 6. Validation / safety stack
- parity fixtures and parity harness added to the branch
- red-team and regression-gate coverage retained
- exit-dashboard and audit-gate docs/tests carried into the consolidated
branch
- MCP registry/tool exposure checks preserved
### 7. Docs / schemas / media
- guide and architecture docs updated to reflect the live product
surface
- refreshed guide GIF set carried on the branch
- schema/version docs updated with the additive JSON formatter evolution
- stale unsupported examples removed or rewritten to match the actual
CLI/runtime surface
## Current Validation On Branch
Focused validation completed on the live branch state:
- `214 passed` on the shared runtime / CLI / MCP / setup / docs /
launcher slice
- `25 passed` on the launcher + setup-build + docs-links slice
- local patched `opencode` build completed successfully from the pinned
submodule
- source-checkout launcher resolution now prefers the locally built
patched binary:
-
`/tmp/rocm-systems-pr4576-consolidated/experimental/python/perfxpert/opencode/packages/opencode/dist/opencode-linux-x64/bin/opencode`
Representative commands run on this branch state:
```bash
PYTHONPATH=experimental/python/perfxpert pytest -q \
experimental/python/perfxpert/tests/test_agents/test_runtime.py \
experimental/python/perfxpert/tests/test_agents/test_framework.py \
experimental/python/perfxpert/tests/test_cli/test_analyze_args.py \
experimental/python/perfxpert/tests/test_cli/test_provider_error_surface.py \
experimental/python/perfxpert/tests/test_cli/test_backend_dispatch.py \
experimental/python/perfxpert/tests/test_cli/test_launcher_subcommands.py \
experimental/python/perfxpert/tests/test_tools/test_agents/test_mcp_registry_has_agent_tools.py \
experimental/python/perfxpert/tests/test_integration/test_cli_dispatch.py \
experimental/python/perfxpert/tests/test_setup/test_setup_build.py \
experimental/python/perfxpert/tests/test_integration/test_docs_links.py \
experimental/python/perfxpert/tests/test_tools/test_opencode_launcher.py
```
```bash
PYTHONPATH=experimental/python/perfxpert pytest -q \
experimental/python/perfxpert/tests/test_tools/test_opencode_launcher.py \
experimental/python/perfxpert/tests/test_setup/test_setup_build.py \
experimental/python/perfxpert/tests/test_integration/test_docs_links.py
```
## Notes
- This PR description is intentionally scoped to the consolidated
`perfxpert` branch state, not the original rename-only PR.
- `.github` changes are intentionally excluded from this PR.
- Final ROCm/manual parity validation and the remaining doc/spec
closeout continue on top of this branch.
commit e7d104593dabd87674c40e5fc2f6cb0d87e46d8f
Author: Aurelien Bouteiller <abouteil@amd.com>
Date: Thu Apr 23 09:53:32 2026 -0400
[rocshmem] rocgdb debugging scripts (#5122)
## Motivation
Improve debugability of deadlocked rocshmem application by providing
rocgdb scripting that analyzes live deadlocked processes and summarizes
and groups wavefront backtraces and highlight wavefronts that are stuck
in a rocshmem api.
## Technical Details
Use python scripting to drive rocgdb, add a small script to ease
attaching and summarizing for multiprocesses.
## JIRA ID
AIROCSHMEM-377
## Test Plan
* [x] Ran the debug script on the pr-provided deadlock example
* [x] Ran the debug script on a modified functional test that deadlocks
intentionally, witnessed wg groupings
* [x] Ran the debug script on modified deepep that deadlocks
intentionally, witnessed wg groupings in a useful way
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Signed-off-by: Aurelien Bouteiller <abouteil@amd.com>
Signed-off-by: Aurelien Bouteiller <aurelien.bouteiller@amd.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
commit d192aa1e21d1f220d0c3eb06c5730a3d75f0b81f
Author: marantic-amd <marantic@amd.com>
Date: Thu Apr 23 15:16:09 2026 +0200
[rocprofiler-systems] Adapt CPU metrics to PMC collector approach (#4612)
## Motivation
- Add CPU metrics collector with policy-based PMC architecture
- Replace the legacy cpu_freq module with a new CPU collector that
follows the same policy-based design as the GPU and NIC collectors. The
CPU collector integrates into the unified PMC sampler via
collector_slice, sampling per-CPU frequency, load, and process-level
metrics.
## Technical Details
- New components:
- procfs driver: reads /proc/stat, /proc/cpuinfo, getrusage() with
persistent FDs and zero-copy parsing for minimal overhead
- procfs provider: lightweight wrapper with factory pattern for DI
- CPU device: manages per-CPU state with delta-based load computation
- CPU traits: adapts base::collector for single-device multi-core model
- CPU cache/perfetto policies: trace cache and Perfetto output
- Mock driver and 17 unit tests covering init, freq, load, process
metrics, filtered CPU sets, and repeated sampling
- Integration:
- Added to g_collector_slices alongside GPU/NIC in pmc::sampler
- New ROCPROFSYS_CATEGORY_CPU_LOAD category for Perfetto traces
- Renamed cpu_freq_sample to cpu_pmc_sample in trace cache (0x0007)
- Updated perfetto_processor and rocpd_processor to handle CPU load
deserialization and emit per-CPU counter tracks
- Pause support: cache_policy emits zero entries for all monitored CPUs
when metrics are empty (pause path)
- Removed:
- library/cpu_freq.cpp, cpu_freq.hpp
- library/components/cpu_freq.cpp, cpu_freq.hpp
- cpu_freq instance block from process_sampler.cpp
## JIRA ID
- AIPROFSYST-224
- AIPROFSYST-79
## Test Plan
- Added additional unit tests to the feature
- Tested with existing test suite
## Test Result
- All test passed
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 34bef1e6accfef4c5a3e01542b638229a09eb7a1
Author: accauble <accauble@users.noreply.github.com>
Date: Thu Apr 23 09:03:54 2026 -0400
[rocjitsu] Add pre-commit hook to check for clang-format in rocjitsu files (#5311)
## Motivation
I keep forgetting to run the clang_format.sh script so I'm adding a
pre-commit hook that rocjitsu developers can install to check if they
need to run the script.
## Technical Details
Heavily commented because I used claude and I have never written a
git-hook. Adding two basic scripts:
-- A script to "install" the hook in rocm-systems. Only need to do this
once per clone.
-- The hook: checks staged files to see if they are formatted correctly.
If not, halts the commit and tells the user what went wrong.
## JIRA ID
None
## Test Plan
Tested:
1. Installation script works as expected
2. Checked that a poorly-formatted staged file was caught by the hook
3. Checked that a well-formatted staged file is allowed
4. Checked that a poorly-formatted cpp file outside the rocjitsu
directory doesn't get caught by the hook
## Test Result
They work!
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: Rosa, Ada <arosa@amd.com>
commit 35534db977d5e5cbdd5ec88b7bd8b586ea2077a1
Author: Milan Radosavljevic <milan.radosavljevic@amd.com>
Date: Thu Apr 23 13:09:43 2026 +0200
[rocprofiler-systems] Restructure unit tests to improve test isolation (#4853)
## Motivation
Unit tests hang under Thread Sanitizer (TSan) due to a deadlock during
atexit static destruction. The thread_deleter calls
rocprofsys_finalize_hidden() which logs via spdlog, triggering a TSan
race report whose symbolizer deadlocks on its own slot lock while
closing a file descriptor. This causes the sanitizer CI workflow to time
out.
## Technical Details
Root cause: unit test executable was including
`rocprofsys-object-library` which pulled `library.cpp`. with
`library.cpp` static variables were included which should trigger
`ensure_finalization(true)`. `ensure_finalization(true)` was calling
`thread_deleter`. Unit test should include only isolated code, where
this is breaking this rule.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
- Run full unit test suite: ./bin/rocprof-sys-unit-tests — all 480 tests
pass
- Run logger fork/stress tests under TSan — no deadlock
- Verify rocprofiler-systems-object-library is not linked into the test
binary-
## Test Result
All unit tests pass under TSan without hanging during atexit. The test
binary no longer links library.cpp's static initializers, preventing
thread_data instantiation and thread_deleter finalization entirely.
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 783707e8cb0a210e78d1723542c42b61eb95f63d
Author: Jonathan L'Work <113400649+Jonathan03ant@users.noreply.github.com>
Date: Thu Apr 23 06:17:30 2026 -0400
[rocprofiler-sdk]: Fix crash on iGPUs without PMC support #148 (#5294)
commit f89f4135b732c7bb83b6d25363160a847762e000
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed Apr 22 17:22:29 2026 +0000
Bump cryptography in /projects/rocr-debug-agent/docs/sphinx
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.6 to 46.0.7.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/46.0.6...46.0.7)
---
updated-dependencies:
- dependency-name: cryptography
dependency-version: 46.0.7
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
commit 7321d441181f08e8c53f48e7b580f8dd2434a73d
Author: cfallows-amd <Carrie.Fallows@amd.com>
Date: Wed Apr 22 22:12:49 2026 -0400
[rocprofiler-compute] Bugfix for memchart Matrix Ops value (#5310)
## Motivation
Fix Matrix Ops value pickup in memcharts- was trying to read for MFMA
but recent roof updates have converted it to general matrix operations
label which forced it to N/A value.
## Technical Details
Change MFMA metric title to Matrix Ops to reflect db entry.
Only affects CDNA memcharts
## JIRA ID
AIPROFCOMP-559
## Test Plan
Manual testing on MI350 system - profiled rocflop and occupancy samples
to test for workload that captures # of MFMA ops, and workload that has
0 MFMA ops, respectively.
Also regenerated hashes.
## Test Result
CLI analysis for block 3 shows Matrix Ops reflecting accurate MFMA
values:
<img width="1485" height="653" alt="Screenshot 2026-04-22 165029"
src="https://github.com/user-attachments/assets/2b3d8d59-e038-4a1a-bdac-0db98bd94da1"
/>
<img width="1448" height="645" alt="Screenshot 2026-04-22 165104"
src="https://github.com/user-attachments/assets/1c8423e0-4af8-44c8-b9d7-3a3203f39900"
/>
GUI mode also reflects these changes to the value outputs, no N/A.
## Submission Checklist
- [X] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Signed-off-by: Carrie Fallows <Carrie.Fallows@amd.com>
commit 4a65e8d0efcdcd584778d8b5d86d25563891afad
Author: Dmitrii <dmitrii.galantsev@amd.com>
Date: Wed Apr 22 20:01:57 2026 -0500
[RDC] Fix embedded profiler by loading librdc_rocp.so with RTLD_GLOBAL (#3922)
rocprofiler-sdk discovers tools by searching for rocprofiler_configure
in the global symbol namespace during hsa_init(). librdc_rocp.so was
loaded with RTLD_LAZY (implicit RTLD_LOCAL), hiding the symbol and
silently preventing profiler counter collection in embedded mode.
commit cbfa12fb0ea9a8c39b9e0f3232f3e821e2ce239f
Author: marandje <marko.arandjelovic@amd.com>
Date: Thu Apr 23 01:28:40 2026 +0200
Fix false queue-idle detection for first unsignaled packet (#5073)
## Motivation
- `Unit_hipGetProcAddress_MemoryApisMemset` is failing because
`hipStreamSynchronize` may return before `hipMemset*Async` operation has
actually completed when it is the only operation enqueued on the stream.
## Technical Details
- If a single command is enqueued on a stream without an attached
completion signal, `IsQueueIdle()` can incorrectly report the queue as
idle. In the original logic, the write index starts at `0`, so an empty
queue and a queue containing exactly one command at index `0` are
indistinguishable.
- When `hipStreamSynchronize` is called on stream A, the finish path may
call `ReleaseAllHwQueues()`, which can release an idle hardware queue
belonging to stream B. If stream B has only a single enqueued command
without a completion signal, that queue can be released prematurely. A
later synchronization on stream B may then reacquire a different queue
that is already idle, causing `hipStreamSynchronize` to return too
early.
- `last_write_index_` and `last_packet_with_signal_index_` still starts
counting from zero but are preinitialized with an invalid queue index.
## JIRA ID
ROCM-20999
## Test Plan
Run hip-tests.
## Test Result
All hip-tests passed.
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 4a47fe94289240c48cd005cf0499c71221d29a0c
Author: akolliasAMD <99202231+akolliasAMD@users.noreply.github.com>
Date: Wed Apr 22 16:28:06 2026 -0600
removed akolliasAMD from codeowners on rocSHMEM repo (#5250)
## Motivation
Removing akolliasAMD from CODEOWNERS for team changes
## Test Plan
No test needed
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit c08c171dbb0d974eee4c42dc9e7709e2cb13cf56
Author: marandje <marko.arandjelovic@amd.com>
Date: Thu Apr 23 00:18:39 2026 +0200
Remove the queue from a set of active queues only when last enqueued command is cleared (#5193)
## Motivation
Unit_hipMultiThreadStreams1_AsyncAsync fails when GPU_ENABLE_PAL=0. In
HostQueue::finish(), lastEnqueueCommand_ is preserved, but the queue is
still removed from activeQueues. When the next command is enqueued, the
queue is not added back to activeQueues because lastEnqueueCommand_ is
still non-null, which prevents the null stream from implicitly
synchronizing with that queue.
## Technical Details
This change removes the queue from the set of active queues only when
last enqueued command is cleared.
## JIRA ID
ROCM-20999
## Test Plan
Run Unit_hipMultiThreadStreams1_AsyncAsync 100x.
## Test Result
All iterations passed.
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit c74978d8d5f3c7f8732da86659f08acf71b9427f
Author: Sajina PK <sputhala@amd.com>
Date: Wed Apr 22 18:14:48 2026 -0400
[rocprof-systems]: Fix makeinfo build failures on systems without texinfo (#5131)
## Motivation
Bundled `binutils` bfd build can invoke `makeinfo` to refresh GNU Info
manuals. On images without `Texinfo`, that fails with `makeinfo: not
found` even though we only need static libraries (libbfd, libiberty,
etc.).
## Technical Details
- Set `MAKEINFO` to a no-op (true, via `find_program`) in the configure
environment for the timemory `binutils-external` and rocprofiler-systems
`rocprofiler-systems-libiberty-build` ExternalProjects.
- Pass `MAKEINFO=…` on the make command line so existing build trees and
`CONFIGURE_HANDLED_BY_BUILD` flows still override the value baked into
generated Makefiles.
- [x] Merge the timemory update:
https://github.com/ROCm/timemory/pull/30
- [x] Once the timemory PR is merged update the submodule pointer to
head of rocprofiler-systems branch
## JIRA ID
## Test Plan
Manual test building `rocprofiler-systems` project.
## Test Result
Pass
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 4c8dc1a07aaec317ed9bf7da1f7854cac74da62a
Author: spolifroni-amd <Sandra.Polifroni@amd.com>
Date: Wed Apr 22 16:55:44 2026 -0400
[rocdecode, rocjpeg] added env var doc (#5247)
## Motivation
rocdecode and rocjpeg both needed a list of env vars that affected their
runtimes
commit 08cec46e16354c0b34a404acb5c3e94d8035695d
Author: Dmitrii <dmitrii.galantsev@amd.com>
Date: Wed Apr 22 15:42:26 2026 -0500
[ci] Use github-script instead of curl (#3424)
## Motivation
Trying to manually sanitize PR strings is painful.
Use github-script to handle it all for us.
This should prevent issues like
https://github.com/ROCm/rocm-systems/pull/3418#issuecomment-3937597408
where double quotes broke the script.
## Test Plan
- [ ] Make a PR with double quotes in the name and see if script breaks.
- [x] Run the workflow via act to test syntax
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
commit ef7520eccdbe4658a2864ac2ff78bfdb7a1a529c
Author: Scott Tsai <scottt.tw@gmail.com>
Date: Thu Apr 23 04:32:28 2026 +0800
Fix rocprofiler-sdk build on gcc 15 (#934)
This PR fixes building rocprofiler-sdk on gcc 15 by updating two of its
external submodules:
* rocprofiler-sdk/external/yaml-cpp
* rocprofiler-sdk//external/elfio
to include `cstdint.h` where it needs them instead of implicitly through
other C++ standard headers.
commit fc3df3bf950cc16c6bbddd95735e9b9ee4758835
Merge: 1c40b0c84e b5210bf473
Author: Zach Byrne <zbyrne@amd.com>
Date: Wed Apr 22 14:07:44 2026 -0600
[hipfile] Add io size, bandwidth, and latency stats broken down by gpu to ais-stats (#4991)
[AIHIPFILE-159]
HipFile stats stores counters in a series of buckets broken up by
backend, IO operation, and IO size. This lets ais-stats show histograms
for different IO sizes. Also enables stats collection by default.
commit 1c40b0c84e60006d154ec08710fd8e0c54fb3a09
Merge: eb5dee8755 5412a62035
Author: James Newling <james.newling@gmail.com>
Date: Wed Apr 22 12:43:21 2026 -0700
[RocJitsu] Basic CI workflow (#5216)
Add basic CI that runs on free github runners.
Builds in ~10 mins.
Tests run in ~5 seconds.
See 'Checks' to see what tests ran.
commit eb5dee875516bf2fd001a3781938036947fbdb66
Author: Adam Pryor <61172547+adam360x@users.noreply.github.com>
Date: Wed Apr 22 13:38:00 2026 -0500
[RDC] Use longer sampling window when using SIMD rocprof metric (#5251)
## Motivation
SIMD util from rocprof needs a longer sampling window to give meaningful
results
## Test
Verified rocprof metrics behavior correctly with longer sampling window
Signed-off-by: Adam360x <Adam.pryor@amd.com>
commit 8d566d526860fea2822d57e5084ffd14c65ac031
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sat Mar 28 15:30:54 2026 +0000
Bump cryptography in /projects/rocr-debug-agent/docs/sphinx
Bumps [cryptography](https://github.com/pyca/cryptography) from 43.0.0 to 46.0.6.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/43.0.0...46.0.6)
---
updated-dependencies:
- dependency-name: cryptography
dependency-version: 46.0.6
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
commit 07a818e54c4a7f1fd24dd851c98b51730627edf2
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Fri Apr 3 03:38:20 2026 +0000
build(deps): bump pygments in /projects/rocr-debug-agent/docs/sphinx
Bumps [pygments](https://github.com/pygments/pygments) from 2.18.0 to 2.20.0.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.18.0...2.20.0)
---
updated-dependencies:
- dependency-name: pygments
dependency-version: 2.20.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
commit fb4aa4aac81f5f0099480ad35cf8b330ac8547b1
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue Apr 7 07:38:17 2026 +0000
Bump tornado in /projects/rocr-debug-agent/docs/sphinx
Bumps [tornado](https://github.com/tornadoweb/tornado) from 6.4.2 to 6.5.5.
- [Changelog](https://github.com/tornadoweb/tornado/blob/master/docs/releases.rst)
- [Commits](https://github.com/tornadoweb/tornado/compare/v6.4.2...v6.5.5)
---
updated-dependencies:
- dependency-name: tornado
dependency-version: 6.5.5
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
commit f3cabf66b29ae140410bd432841d1a8833f50202
Author: Lancelot SIX <lancelot.six@amd.com>
Date: Fri Apr 17 16:23:11 2026 +0100
Cleanup unused arch.
commit cdbf9cb8ba938b1990afbd929170291df73b5856
Author: Lancelot SIX <lancelot.six@amd.com>
Date: Fri Apr 17 16:20:15 2026 +0100
gfx12: Fix writing to pseudo_state_priv
I noticed that the debugger can't write the $state_priv register, writes
are eventually skipped.
It turns out this is because gfx12_architecture_t::write_pseudo_register
fails to memcpy the value to the register.
Fix this.
commit 1dd1c995a1181ecf8356d04846c35dccccbdb9d5
Author: Yiltan <ytemucin@amd.com>
Date: Wed Apr 22 11:59:22 2026 -0400
[rocshmem] Remove warnings: local memory global used by non-kernel function (#4948)
## Motivation
In an effort to cleanup rocSHMEM, we are fixing the warnings. The
specific warning this PR fixes is
```
warning: <unknown>:0:0: in function xyz: local memory global used by non-kernel function
```
## Technical Details
`__shared__` cannot be declared with in a `__device__` function
## JIRA ID
AIROCSHMEM-332
commit c6708bf70c9a47954916551644ff38992c622010
Author: Siwei He <siweihe.eng@gmail.com>
Date: Wed Apr 22 11:03:34 2026 -0400
kfdtest: Use CopyDwordIsa in Ptrace test (#5233)
Fix: Switch to CopyDwordIsa, which is simpler and appropriate for this
test's purpose (testing ptrace access to invisible VRAM, not scratch
memory). This avoids the scratch space conversion logic entirely.
## Motivation
PtraceAccessInvisibleVram test failure due to change in
ScratchCopyDwordIsa. This test is better using CopyDwordIsa
## Technical Details
## JIRA ID
ROCM-23360
ROCM-20237
## Test Plan
Able to compile the test and pass the PtraceAccessInvisibleVram test.
## Test Result
Test passed. Since this change only affects PtraceAccessInvisibleVram
test. It's safe to test only this sub test case.
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 8821e322291b57fe68aa64891ccb836a77f9da77
Author: Edgar Gabriel <edgargabriel@users.noreply.github.com>
Date: Wed Apr 22 09:51:45 2026 -0500
[rocSHMEM] remove static amdsmi-loader instance (#5236)
## Motivation
the constructor in a static amdsmi-loader instance tried to open the
amdsmi lib and dlsym the functions used even if we do not compile with
pod-detection. The static instance however not actually required.
## Test Result
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 0b6b84f76d0e69c311b49a25b48bff0a8c3aa7ff
Author: Shadi Dashmiz <94885391+shadidashmiz@users.noreply.github.com>
Date: Wed Apr 22 09:11:21 2026 -0400
ROCM-20929 - fix hiptests issues (#5159)
- check for proper peer enablement
- remove constexpr evalution
## Motivation
2 tests are failing due to error in the test code
## Technical Details
Constexpr caused the block of code to not run so that p2p check was
incomplete.
Check if P2P is supported before testing the error code. If P2P isn't
supported at all, skip the test.
## JIRA ID
ROCM-20929
## Test Plan
Hip test in the ticket
## Test Result
PSDB - passed
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
commit 00238f6c365df815d616fa9c6928fe5d58a48cc6
Author: Aurelien Bouteiller <abouteil@amd.com>
Date: Tue Apr 21 22:21:16 2026 -0400
Workaround for the DIEExpression failure to build with Debug (#5205)
RelWithDebInfo and Debug configurations fail to build with DIEExpression
error on certain versions of hip/clang.
THis is a workaround, a complete solution is pending on the compiler
side of the house we should reconsider when this is deployed.
## Motivation
Being able to debug is critical.
## Technical Details
Disable expanded dwarf decorators, rely on normal dwarf.
Also reenable -O0 in debug since that now also compiles.
This disables some debug info but that cannot be avoided until the
compiler gets updated.
## JIRA ID
AIROCSHMEM-227
## Test Plan
* [x] Build with debug
* [x] can rocgdb the code without crashing rocgdb
* [x] some debug info avail (not all, its not possible)
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 2ea2e50ea976340213f399bc7f6a7f6df0ff59d4
Author: jamessiddeley-amd <James.Siddeley@amd.com>
Date: Tue Apr 21 21:57:42 2026 -0400
[rocprof-compute] Move intermediate csv deprecation warning to 7.13 upcoming changes (#5255)
## Motivation
Move deprecation warning out of 'Unreleased' section and move to changes
to ROCm 7.13 upcoming changes section instead
## Technical Details
No functional changes
## JIRA ID
N/A
## Test Plan
N/A
## Test Result
N/A
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 1140233ffee37996820dcfaa710273fd2061a331
Author: Mark Meserve <mark.meserve@amd.com>
Date: Tue Apr 21 17:48:00 2026 -0500
rocprofiler-sdk: attach: multiprocess support (#4804)
- Adds the ability to attach to a process and all of its descendant
processes in a single call
- Adds rocattach_attach_tree and rocattach_detach_tree to rocattach
- Adds --attach-children option to rocprofv3
- Defaults to True
- Adds test to verify attach tool loading through a process tree
- Adds test to verify tool data through rocprofv3
- Some logging and documentation cleanup
commit e4029c3fed5478c48a3f5c4c36924b19a8c093cd
Author: Aryan Salmanpour <aryan.salmanpour@amd.com>
Date: Tue Apr 21 14:22:06 2026 -0700
[rocjpeg][samples] - Add total wall time for jpeg decoding (#5206)
## Motivation
This PR adds overall wall time for the jpegDecodePerf sample.
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
## Test Result
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit bd00380ee6b9d90e17a7282b763ee7af22f18682
Author: Aryan Salmanpour <aryan.salmanpour@amd.com>
Date: Tue Apr 21 14:17:51 2026 -0700
[rocdecode][ctest] - Add option to enable extended ctest tests (#5004)
## Motivation
Add a CMake option `ENABLE_EXTENDED_TESTS` to enable extended ctest
tests for rcodecode.
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
## Test Result
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: kiritigowda <kiritigowda@gmail.com>
commit c5245d48f55fbca612be4fc6fc1c5813ae559da4
Author: Benjamin Welton <Benjamin.Welton@amd.com>
Date: Tue Apr 21 13:32:08 2026 -0700
[rocprofiler-sdk] Add runtime guards to ROCP_* log macros (#5222)
## Summary
- Add runtime log level checks to `ROCP_INFO`, `ROCP_WARNING`,
`ROCP_ERROR` and their `_IF` variants
- Prevents evaluation of stream arguments (including `fmt::format`
calls) when the severity is below the configured minimum log level
- Uses abseil's `LOG_IF` which internally short-circuits via a ternary
pattern, ensuring zero argument evaluation overhead when logging is
suppressed
- `ROCP_TRACE` already guards via `VLOG_IS_ON`;
`ROCP_FATAL`/`ROCP_DFATAL` are never suppressed
## Test plan
- [ ] CI builds pass across all OS variants
- [ ] Verify log output is unchanged at default log level (WARNING)
- [ ] Verify no output from `ROCP_INFO`/`ROCP_WARNING` when
`ROCP_LOG_LEVEL=error`
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Opus 4 <noreply@anthropic.com>
commit 5412a620359b09593cfd3e0b0959c7a1a443c56e
Author: James Newling <james.newling@gmail.com>
Date: Mon Apr 20 21:37:22 2026 +0000
add libdrm-dev dep in CI
commit 8a03fbe617fa1f2441a08f772471824c2a0f9ffb
Author: James Newling <james.newling@gmail.com>
Date: Mon Apr 20 21:32:11 2026 +0000
add most basic of vanilla CIs
commit 58d180e1f39538c7bf724cf225aca18bef944297
Author: Maisam Arif <Maisam.Arif@amd.com>
Date: Tue Apr 21 14:52:48 2026 -0500
[AMD-SMI] Upgrade precommit workflow to have diff highlighting (#4534)
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
commit d9b2e09246116d69de08e8108df838b8f7f67324
Author: Darren Lao <Darren.Lao@amd.com>
Date: Tue Apr 21 15:52:01 2026 -0400
Fix amdsmi_pcie_info_t speed unit (#5245)
Fixes https://github.com/ROCm/rocm-systems/issues/5200
This is purely a documentation change, and corrects the units for
`max_pcie_speed` to be in MT/s, which I confirmed is returned from:
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
commit 9fb1dff90e1d4bf73777d4eb93059a270a40a13d
Author: Avinash Kethineedi <avinash.kethineedi@amd.com>
Date: Tue Apr 21 13:43:45 2026 -0500
[rocSHMEM] Implement ROCSHMEM_TEAM_SHARED in all the backends (#4914)
## Motivation
Implement the `ROCSHMEM_TEAM_SHARED` predefined team per the OpenSHMEM
specification. TEAM_SHARED comprises all PEs sharing a common memory
domain (same node), enabling node-scoped collective and point-to-point
operations.
## Technical Details
- Declare and define `ROCSHMEM_TEAM_SHARED` in host/device namespaces
with device symbol copy support.
- Add team_shared_ to TeamTracker with `NUM_RESERVED_TEAMS` so
predefined teams don't consume user-creatable team slots.
- Protect TEAM_SHARED from destruction in `rocshmem_team_destroy()`.
- Implement `setup_team_shared()` in all three backends (IPC, RO, GDA).
In RO and GDA, TEAM_SHARED is only created when IPC is enabled at
compile-time and runtime; otherwise set to `ROCSHMEM_TEAM_INVALID`.
- Update `team_ctx_infra_tester` to use runtime `ROCSHMEM_MAX_NUM_TEAMS`
with dynamic sizing.
- Add `TeamCtxSharedInfraTestType` (test 94) to validate
`ROCSHMEM_TEAM_SHARED` PE identity, team size, and context creation on
device. Gracefully skips when IPC is disabled.
## JIRA ID
- AIROCSHMEM-355
## Test Plan
- Run teamctxsharedinfra (test 94) with 2 ranks on the same node.
- Run hipmodule_init test to verify symbol copy.
- Verify graceful skip when IPC is disabled.
## Test Result
- [x] Tested with IPC backend
- [x] Tested with RO backend (IPC enabled)
- [x] Tested with RO backend (IPC disabled, verifies graceful skip)
- [x] Tested with GDA backend (IPC enabled)
- [x] Tested with GDA backend (IPC disabled, verifies graceful skip)
commit a8eef4083e76a2b8a78221510023da85b88af144
Author: Jason Bonnell <166553723+jbonnell-amd@users.noreply.github.com>
Date: Tue Apr 21 13:47:16 2026 -0400
Update rocprofiler workflows to use latest actions with node 24 (#5231)
## Motivation
<!-- Explain the purpose of this PR and the goals it aims to achieve.
-->
Noticed that older versions of Docker actions used Node 20, and Node 20
actions are being deprecated in June.
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
- Update `rocprofiler-*` workflow files to use the latest versions of
Docker and GitHub actions (moved to Node 24)
- `docker/login-action` -> v4.1.0
- `docker/metadata-action` -> v6.0.0
- `docker/build-push-action` -> v7.1.0
- `docker/setup-buildx-action` -> v4.0.0
- `actions/checkout` -> v6
- `actions/upload-artifact` -> v7
- `nick-fields/retry` -> v4
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
Ensure no regression issues with action updates, workflows pass
## Test Result
<!-- Briefly summarize test outcomes. -->
TBA
## Submission Checklist
- [X] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 774ff6e7eec8fb0e79aaab408191635857c8367e
Author: Victor Zhang <111778801+victzhan@users.noreply.github.com>
Date: Tue Apr 21 13:06:25 2026 -0400
[AIRUNTIME-1929] HIP memory stress test fixes and improvements (#4069)
## Motivation
Fix instability and build issues in HIP memory stress tests.
## Technical Details
- Fix grid-stride loop in `KrnlWth2MemTypes` kernel in
`hipMallocManagedStress.cc`.
- Fix resource leaks (`hipFree`, `hipStreamDestroy`) in `LaunchKrnl4`.
- Re-initialize managed memory between prefetch iterations in
`hipMemPrftchAsyncStressTst.cc`.
- Fix `hold_memory` build: correct include and add missing link library.
- Simplify `stress_test` custom target.
- Add `hipMallocConcurrency.cc` to the build.
## JIRA ID
AIRUNTIME-1929
## Test Plan
Build and run `stress_test` target. Verify stress tests pass
consistently.
## Test Result
Pending
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 9deaac2945c4ef2cb9ab787b40619f96849d41e5
Author: Victor Zhang <111778801+victzhan@users.noreply.github.com>
Date: Tue Apr 21 13:05:17 2026 -0400
ROCM-2903 - Default DEBUG_HIP_MEM_POOL_VMHEAP to IS_LINUX (#5139)
## Motivation
rocBLAS graph tests hang on Windows 11 after sustained stream-ordered
allocation / free / trim cycles (~500-1000 cycles in). The hang is in
the VM heap path: awaitCompletion on the synchronous VirtualMapCommand
blocks indefinitely with the GPU event never signaling, leaving the
command stuck in CL_SUBMITTED.
## Technical Details
Default DEBUG_HIP_MEM_POOL_VMHEAP to IS_LINUX so that allocations on
Windows are routed through SvmBuffer::malloc / free instead of
VirtualMapCommand. This is a temporary workaround until the ROCR/HSA
backend becomes the default on Windows, which brings direct dispatch and
avoids this path entirely.
## JIRA ID
ROCM-2903
## Test Plan
Run rocblas-test *graph* filter on Navi3x / Windows 11; verify the hang
is resolved.
## Test Result
Confirmed on W7900 (gfx1100) + Windows 11: PAL previously hung at
trmv_graph_test_f32_r_U_N_N_128_2_1; with this change all 1637 graph
tests pass.
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: FirstName LastName (Public) <your_public_email@example.com>
commit 2ecbb87a314b60d7b992cb4f275714e8b09a6c9b
Author: Kian Cossettini <Kian.Cossettini@amd.com>
Date: Tue Apr 21 13:01:22 2026 -0400
[rocprofiler-systems] Install python dependencies at the Dockerfile level (#5197)
## Motivation
<!-- Explain the purpose of this PR and the goals it aims to achieve.
-->
Part of https://github.com/ROCm/rocm-systems/pull/3962
Make the dockerfiles install the requirements.txt.
Drop support for python 3.6 and 3.7 (test suite requires python 3.8 and
above)
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
Remove 3.6 and 3.7 from Dockerfiles and workflows.
Install requirements.txt in Dockerfiles
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
## Test Result
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit c54a0e85fa6727ce1ffdc5ccc3695af0950365d8
Author: Dmitrii <dmitrii.galantsev@amd.com>
Date: Tue Apr 21 11:54:10 2026 -0500
[RDC][AMD-SMI][ROCM-SMI] Drop POST_BUILD strip on shared libs (#5237)
Defer stripping to packagers and TheRock's THEROCK_SPLIT_DEBUG_INFO.
Fixes
SONAME-symlink corruption under llvm-strip
(https://github.com/ROCm/TheRock/issues/4640)
commit e22df2da076973fb0a347c868edd2beea7f1fb7d
Author: Venkateshwar Reddy Kandula <Venkateshwarreddy.Kandula@amd.com>
Date: Tue Apr 21 11:17:29 2026 -0500
[rocprofiler-sdk] Add reusable composite action rocprofiler-sdk CI (#5095)
## Motivation
This PR introduces a reusable local composite GitHub Action to
consolidate repeated “install ROCm + build dependencies” logic across
rocprofiler-sdk workflows, aiming to reduce duplication and simplify
maintenance.
## Technical Details
- Added a new composite action: .github/actions/rocprofiler-sdk-util.
- Updated rocprofiler-sdk workflows (docs, CI, CodeQL, code coverage) to
call the composite action instead of inlining dependency build steps.
- Added workflow env toggles to enable/disable building specific
dependencies (ROCR, HIP/CLR, rocprofiler-register, aqlprofile,
rocDecode, rocJPEG) and to control nightly ROCm installation.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
CI checks
## Test Result
Passing
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
commit 7a234bbaf6ba32af3b64aacdbe27eaaac8348823
Author: Aurelien Bouteiller <abouteil@amd.com>
Date: Tue Apr 21 11:01:40 2026 -0400
[rocSHMEM] Fix a warning when building config gda_ionic (#5218)
## Motivation
Fix warnings
## Technical Details
missing a [[maybe-unused]] in gda_ionic configuration.
## JIRA ID
AIROCSHMEM-300
commit b44f6c789daaf102492bb3572005318599abd656
Author: German Andryeyev <56892148+gandryey@users.noreply.github.com>
Date: Tue Apr 21 10:59:12 2026 -0400
clr: Expose some HSA interfaces in hip dll (#4748)
## Motivation
These calls are required to enable AQL profiler functionality on
Windows.
## Technical Details
Currently AQL profiler requires direct calls to ROCR interfaces
## JIRA ID
OCM-1667
## Test Plan
Aql profiler tests
## Test Result
Passed
## Submission Checklist
N/A
commit 1f21d5b1a5273a9237ab3594bb56ebf2e64f2fc4
Author: Jason Bonnell <166553723+jbonnell-amd@users.noreply.github.com>
Date: Tue Apr 21 09:28:51 2026 -0400
[rocprofiler-compute] Update git version in Ubuntu GHCR CI images (#5208)
## Motivation
<!-- Explain the purpose of this PR and the goals it aims to achieve.
-->
#5144 adds some new submodules, and the current CI image is failing to
clone the repo with the submodules due to 22.04 using an older version
of git.
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
- Update `Dockerfile.ubuntu.ci` to include the git-core ppa repository
so we can grab the latest version of git
- Previous version installed was 2.34.1, which was the latest version
available with default ubuntu 22.04 repos
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
- Ensure Dockers build properly
- Once merged, verify that the updated images are able to pass the
checkout step in #5144 checks
## Test Result
<!-- Briefly summarize test outcomes. -->
TBA
## Submission Checklist
- [X] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 4753424bc943669bb2a67c29783717042b457f9c
Author: Alexey Sachkov <alexey.sachkov@amd.com>
Date: Tue Apr 21 14:30:51 2026 +0200
[CLR][NFC] Optimize tracking of active queues (#4945)
## Motivation
Performance optimization of the runtime.
## Technical Details
`std::unordered_set::[insert|erase]` allocate/deallocate memory which is
an unnecessary action considerng that a list of all command queues which
are present throughout an application lifetime is mostly stable, i.e.
the assumption is made that HIP streams are not short-lived, but instead
mostly span the whole application lifetime.
## JIRA ID
N/A
## Test Plan
N/A, this change is non-functional
## Test Result
N/A, this change is non-functional
## Submission Checklist
- [X] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit 019054fdb5070b663ba741b6f3c8e715d4816a87
Author: Aleksandar Djordjevic <aleksandar.djordjevic@amd.com>
Date: Tue Apr 21 14:06:28 2026 +0200
[rocprofiler-systems] filter VCN/JPEG sentinel values during metric collection (#5145)
## Motivation
When only some VCN/JPEG engines are present on a GPU, the AMD SMI
`vcn_activity`/`jpeg_activity` arrays contain `0xFFFF` sentinel values
for absent engines. These sentinel values were being passed through to
Perfetto and RocPD output as `65535`, appearing as bogus
`device_vcn_activity_1`, `_2`, `_3` metrics.
commit b6285c0a549a85c825d5e00fd51b3fb79f42c71d
Author: Pedro Alves <pedro@palves.net>
Date: Fri Apr 17 16:06:55 2026 +0100
Add missing AMD_DBGAPI_EXPORT_DECORATOR fallback
The AMD_DBGAPI_EXPORT_DECORATOR definition block is missing the
fallback case. Fix that.
Change-Id: Idcc785b59a48b5cc17c64d4b70e534ba6e912eaf
commit-id:8ab06a04
commit b1ac485c994985b67f1dd712693c81b614d0bf12
Author: Pedro Alves <pedro@palves.net>
Date: Fri Apr 17 16:06:55 2026 +0100
Fix building dbgapi as a static library
Since 4bfddf5494 ("dbgapi/win32: __declspec(dllexport) instead of
--version-script"), building dbgapi as a static library on Windows
fails with errors such as:
.../rocm-dbgapi/src/initialization.cpp:41:1: error: function 'amd_dbgapi_status_t amd_dbgapi_initialize(amd_dbgapi_callbacks_s*)' definition is marked dllimport
41 | amd_dbgapi_initialize (struct amd_dbgapi_callbacks_s *callbacks)
| ^~~~~~~~~~~~~~~~~~~~~
The symbols end up "marked dllimport" because with:
set_target_properties(amd-dbgapi PROPERTIES
...
DEFINE_SYMBOL "AMD_DBGAPI_EXPORTS"
...
... DEFINE_SYMBOL is a CMake convenience that only applies when (and
while) building a shared library. When BUILD_SHARED_LIBS is OFF,
DEFINE_SYMBOL does nothing. So AMD_DBGAPI_EXPORTS ends up not defined
in amd-dbgapi.h, which results in AMD_DBGAPI mapping to
AMD_DBGAPI_IMPORT, here, in amd-dbgapi.h.in:
#define AMD_DBGAPI AMD_DBGAPI_IMPORT
AMD_DBGAPI_IMPORT in turn is unconditionally defined to
__declspec(dllimport) on Windows.
So there are two issues:
- The dbgapi build itself is treated as importing symbols (as a
consumer) instead of exporting them (as a producer).
- The import/export decorations are applied even when dbgapi is built
as a static library, where they should not be used at all.
Fix this by teaching amd-dbgapi.h about whether dbgapi was built as a
static or shared library. Since the header is generated, define
AMD_DBGAPI_STATIC_LIB (0 or 1) at configure time and use it to skip
using import/export decorations.
This also ensures that clients, including those which do not use CMake
(e.g. GDB), automatically see consistent definitions without needing
to know how dbgapi was built.
Change-Id: I31c8c947791551cc4e20218826561c1d242f298d
commit-id:12deacf2
commit e42ed4ca16c7713233161740b0a22d9c50fd2fba
Author: Luis Machado <luis.machado@amd.com>
Date: Mon Apr 13 09:50:10 2026 -0500
Add Python executable paths to all TheRock builds
Configure shared and dist Python executables (3.10-3.14) for all build
configurations to ensure consistent Python environment across CI builds.
Also update the manylinux container hash to the latest.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
commit da8621629e24cabc4c92d43e2cbeb6cebc751c1c
Author: vstojilj <vstojilj@amd.com>
Date: Tue Apr 21 10:56:59 2026 +0200
Accept only valid device allocations for hipTexObjectCreate (#4814)
## Motivation
Unit_TexObjectCreate_TypePitch2D_EdgeCases is failing on APUs when host
pointer is passed to hipTexObjectCreate and it should fail with
hipErrorInvalidValue.
## Technical Details
Check if buffer retrieved by devptr is a valid allocation before
creating tex object.
## JIRA ID
Resolves AIRUNTIME-72.
## Test Plan
Retest with Unit_TexObjectCreate_TypePitch2D_EdgeCases.
## Test Result
test passes.
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit d4570465bfb80c34171815318ec822f1dbcc07be
Author: systems-assistant[bot] <221163467+systems-assistant[bot]@users.noreply.github.com>
Date: Mon Apr 20 22:31:38 2026 -0700
Update TheRock reference to (702d158) (#5117)
Updated TheRock ref to `702d158` due to submodule bump
update - Rename ccache presets as per therock pr
https://github.com/ROCm/TheRock/pull/4402
---------
Co-authored-by: therockbot <therockbot@amd.com>
Co-authored-by: rahulc-gh <rahul.choudhary@amd.com>
Co-authored-by: RahulC <168588218+rahulc-gh@users.noreply.github.com>
commit e5a46360d85ac27fc2d028a1f094eb0c9292ec59
Author: Shweta Khatri <shweta.khatri@amd.com>
Date: Thu Apr 2 14:56:05 2026 -0400
rocr: PC Sampling : Add reserved_wg field to PC sampling structs
Add missing reserved_wg field to perf_sample_hosttrap_v1_t and
perf_sample_snapshot_v1_t. This aligns with the profiler which
expects chiplet at bits [10:8].
commit b768f127de8c219e1604615293aa68d6d2220e85
Author: Jeff Jiang <142832361+jeffqjiangNew@users.noreply.github.com>
Date: Mon Apr 20 22:21:55 2026 -0400
[rocDecode] Merge debug logging into the new logging mechanism. (#5210)
## Motivation
This PR merges debug logging into the new logging mechanism.
## Technical Details
- rocDecode debug message was a compile option.
- Now debug logging can be enabled by setting env var ROCDEC_LOG_LEVEL
to 4 . This helps issue triage on the release builds.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
Run CTests and decode conformance tests to catch any regressions.
Run rocdecdecode samples to verify user set output.
## Test Result
All CTests and conformance tests pass. Example summary of the test
results:
CTests:
Start 1: video_decodeRaw-HEVC
1/6 Test #1: video_decodeRaw-HEVC ............. Passed 2.10 sec
Start 2: video_decodeRaw-AVC
2/6 Test #2: video_decodeRaw-AVC .............. Passed 1.96 sec
Start 3: video_decodeRaw-AV1
3/6 Test #3: video_decodeRaw-AV1 .............. Passed 2.03 sec
Start 4: video_decodeRaw-VP9
4/6 Test #4: video_decodeRaw-VP9 .............. Passed 2.05 sec
Start 5: rocdec_Decode-HEVC
5/6 Test #5: rocdec_Decode-HEVC ............... Passed 0.91 sec
Start 6: rocDecode_Negative_API_Tests
6/6 Test #6: rocDecode_Negative_API_Tests ..... Passed 0.73 sec
Conformance tests:
AVC conformance test:
Conformance test completed on the 127 streams:
The number of passing streams is 127
The number of failing streams is 0
The number of streams that did not finish decoding is 0
HEVC conformance test:
Conformance test completed on the 135 streams:
The number of passing streams is 135
The number of failing streams is 0
The number of streams that did not finish decoding is 0
AV1 conformance test:
Conformance test completed on the 162 streams:
The number of passing streams is 162
The number of failing streams is 0
The number of streams that did not finish decoding is 0
VP9 conformance test:
Conformance test completed on the 108 streams:
The number of passing streams is 108
The number of failing streams is 0
The number of streams that did not finish decoding is 0
<!-- Briefly summarize test outcomes. -->
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit ff1db549b2d5061ff0026ee9933c0e83b5533fef
Author: koushikbillakanti-amd <koushik.billakanti@amd.com>
Date: Mon Apr 20 21:06:48 2026 -0500
Add NPU device type support (#4952)
## Motivation
Add NPU device support to CUID so RyzenAI/amdxdna devices are
discoverable and assigned unique identifiers.
## Technical Details
Introduce CuidNpu class with discovery via accel, primary/derived CUID
generation, PCI config space fingerprinting, and wire NPU through the
daemon, CLI, device manager, and file serialization paths.
Co-authored-by: Koushik Billakanti <kbillaka@amd.com>
commit 4e965940280c5b567d4ad36dc41418f6b2da8593
Author: Kian Cossettini <Kian.Cossettini@amd.com>
Date: Mon Apr 20 18:12:14 2026 -0400
[rocprofiler-systems] Improve troubleshooting messages for Dyninst errors (#4947)
## Motivation
<!-- Explain the purpose of this PR and the goals it aims to achieve.
-->
During instrumentation, it is possible for Dyninst to fail to process
certain sequences of instructions in a function. When this occurs, a
vague error message would be printed.
This PR adds more details to the error message and adds information to
`instrumenting-rewriting-binary-applications.rst` to inform the user to
exclude the problematic function/module/object in subsequent runs (which
may prevent errors).
With this PR:
```
# Before
Failed to transform trace 9105
# After
Failed to transform trace 9105 in function 'llvm::msgpack::Reader::read' in module '/opt/rocm-7.1.1/lib/llvm/lib/libomptarget.so.20.0git' in object 'libomptarget.so.20.0git' at address 0x7f4c3f179120
```
## Technical Details
<!-- Explain the changes along with any relevant GitHub links. -->
See the original issue: https://github.com/dyninst/dyninst/issues/2203
Merge https://github.com/ROCm/dyninst/pull/13.
Update submodule pointer to
https://github.com/ROCm/dyninst/commit/77203e0b4f917aec534ac2717643c17838fded7e.
Added `Failed to transform trace error` section to
`projects/rocprofiler-systems/docs/how-to/instrumenting-rewriting-binary-application.rst`.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
ROCM-21219
## Test Plan
<!-- Explain any relevant testing done to verify this PR. -->
N/A
## Test Result
<!-- Briefly summarize test outcomes. -->
N/A
## Submission Checklist
- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
commit e0fa30b1465526e3255df950df5edc8dfd83b631
Author: Bindhiya Kanangot Balakrishnan <Bindhiya.KanangotBalakrishnan@amd.com>
Date: Mon Apr 20 16:56:59 2026 -0500
[ROCM-1553] GPU metrics v1.9 support with new attributes (#5125)
[ROCM-1553] GPU metrics v1.9 support with new attributes
Added support for updated dynamic GPU metrics version 1.9 by introducing
new metric attributes based on latest amdgpu header.
Updated python interface and CLI outputs for new gpu_metric fields.
Unified CLI output for amdsmi metric. Updated Changelog.
Signed-off-by: Bindhiya Kanangot Balakrishnan <Bindhiya.KanangotBalakrishnan@amd.com>
commit 6c571bb686712f9366fa8ee8646e48fdf25222c5
Author: Jeff Jiang <142832361+jeffqjiangNew@users.noreply.github.com>
Date: Mon Apr 20 14:43:02 2026 -0400
[rocDecode] Logging format in utility classes now matches RocDecLogger format. (#4997)
## Motivation
Unify logging format in utility classes with core library logging
format.
## Technical Details
This PR unifies logging format in utility classes with core library
logging format.
- Logs from utility classes are now more informative.
## JIRA ID
<!-- If applicable, mention the JIRA ID resolved by this PR (Example:
Resolves SWDEV-12345). -->
<!-- Do not post any JIRA links here. -->
## Test Plan
Run CTests and decode conformance tests to catch any regressions.
Run rocdecdecode samples to verify user set output.
## Test Result
All CTests and conformance tests pass. Example summary of the test
results:
CTests:
Start 1: video_decodeRaw-HEVC
1/6 Test https://github.com/ROCm/rocm-systems/pull/1:
video_decodeRaw-HEVC ............. Passed 1.96 sec
Start 2: video_decodeRaw-AVC
2/6 Test https://github.com/ROCm/rocm-systems/pull/2:
video_decodeRaw-AVC .............. Passed 1.84 sec
Start 3: video_decodeRaw-AV1
3/6 Test https://github.com/ROCm/rocm-systems/pull/3:
video_decodeRaw-AV1 .............. Passed 1.88 sec
Start 4: video_decodeRaw-VP9
4/6 Test https://github.com/ROCm/rocm-systems/pull/4:
video_decodeRaw-VP9 .............. Passed 1.93 sec
Start 5: rocdec_Decode-HEVC
5/6 Test https://github.com/ROCm/rocm-systems/pull/5: rocdec_Decode-HEVC
............... Passed 0.85 sec
Start 6: rocDecode_Negative_API_Tests
6/6 Test https://github.com/ROCm/rocm-systems/pull/6:
rocDecode_Negative_API_Tests ..... Passed 0.72 sec
100% tests passed, 0 tests failed out of 6
AVC conformance test:
Conformance test completed on the 127 streams:
The number of passing streams is 127
The number of failing streams is 0
The number of streams that did not finish decoding is 0
HEVC conformance test:
Conformance test completed on the 135 streams:
The number of passing streams is 135
The number of failing streams is 0
The number of streams that did not finish decoding is 0
AV1 conformance test:
Conformance test completed on the 162 streams:
The number of passing streams is 162
The number of failing streams is 0
The number of streams that did not finish decoding is 0
VP9 conformance test:
Conformance test completed on the 108 streams:
The number of passing streams is 108
The number of failing streams is 0
The number of streams that did not finish decoding is 0
## Submission Checklist
- [ ] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
commit 2e1eb97edb6d9b0545c2ce3f5e900131540da0c7
Author: Avinash Kethineedi <avinash.kethineedi@amd.com>
Date: Mon Apr 20 13:27:03 2026 -0500
[rocSHMEM] Add library metadata constants, version/name query APIs, and documentation (#5151)
## Motivation
Add library metadata constants and version/name query APIs to rocSHMEM,
aligning with the OpenSHMEM specification.
## Technical Details
- Replace version parsing from the C++ header with a direct CMake
variable and add backend/vendor string construction to CMakeLists.txt
- Add vendor version, vendor string, and backend metadata to
rocshmem_config.h and surface them in rocshmem_info output
- Add ROCSHMEM_MAJOR_VERSION, ROCSHMEM_MINOR_VERSION,
ROCSHMEM_MAX_NAME_LEN to rocshmem.hpp
- Add host APIs: rocshmem_info_get_version, rocshmem_info_get_name,
rocshmem_vendor_get_version_info
- Update rocshmem_init_attr_test example to use the new query APIs
- Add Sphinx documentation for library constants and query APIs
- Templatize print_entry in build_info.cpp to support int arguments
- Update docs/conf.py to read version from CMakeLists.txt
- Add Linux build instructions and custom output directory usage to docs
README
## JIRA ID
- AIROCSHMEM-359
## Test Plan
- Build with all backend configurations (GDA with IONIC/BNXT/MLX5, RO,
IPC, and combinations) and verify rocshmem_info output shows the correct
vendor string, version, and backend for each configuration
- Run rocshmem_init_attr_test and verify version/name output on rank 0
- Build the Sphinx documentation and verify the new library constants
and query API pages render correctly
## Test Result
- All backend configurations produce the expected vendor strings (e.g.
`rocSHMEM_v3.3.0_GDA(IONIC/BNXT/MLX5)+RO+IPC` when compiled with all
backends and NICs enabled)
- rocshmem_info output displays correct version, vendor string, and
backend metadata for all tested configurations
- Sphinx documentation builds without warnings in the newly added
sections; library constants and query API pages render correctly
commit b87cea434d77e56499835c54c01db8a5fa51f13b
Author: Sumanth Gavini <sumanth.gavini@amd.com>
Date:…
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.
This reverts commit 00e9b8d.
Motivation
ROCm/TheRock#3500
#2798 This pr contain 75 files change for amdsmi and caused failure on TheRock Linux Ci run across all gfx.
Technical Details
Reverted PR2798
Test Plan
https://github.com/ROCm/TheRock/actions/runs/22244137887
Test Result
Submission Checklist