Skip to content

Revert '[SWDEV-544298] AINIC implementation [#2798]' - #3418

Merged
JeniferC99 merged 2 commits into
developfrom
jechrist/revertPR2798
Feb 20, 2026
Merged

Revert '[SWDEV-544298] AINIC implementation [#2798]'#3418
JeniferC99 merged 2 commits into
developfrom
jechrist/revertPR2798

Conversation

@JeniferC99

@JeniferC99 JeniferC99 commented Feb 20, 2026

Copy link
Copy Markdown
Collaborator

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

@ScottTodd

Copy link
Copy Markdown
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

If multiple commits are implicated in broken workflows, cleanly reverting them all sequentially is less risky than reverting manually.

@JeniferC99

Copy link
Copy Markdown
Collaborator Author

There's no other PR relating to the NIC other than #2798.

@marifamd
marifamd marked this pull request as ready for review February 20, 2026 22:38
@marifamd
marifamd requested a review from a team as a code owner February 20, 2026 22:38
@marifamd

marifamd commented Feb 20, 2026

Copy link
Copy Markdown
Contributor

There's no other PR relating to the NIC other than #2798.

You missed #3289, but that was the only other one that had nic changes

@dmitrii-galantsev dmitrii-galantsev changed the title Revert "[SWDEV-544298] AINIC implementation (#2798)" Revert '[SWDEV-544298] AINIC implementation [#2798]' Feb 20, 2026
@dmitrii-galantsev

Copy link
Copy Markdown
Contributor

changed name of the pr slightly because we don't sanitize strings in "Trigger ROCm CI"
image

@JeniferC99

Copy link
Copy Markdown
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.

@ScottTodd

Copy link
Copy Markdown
Member

Looks okay to merge without waiting for further workflows to complete.

@JeniferC99
JeniferC99 merged commit bfe5604 into develop Feb 20, 2026
30 of 33 checks passed
@JeniferC99
JeniferC99 deleted the jechrist/revertPR2798 branch February 20, 2026 23:59
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.
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:…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants