Skip to content

[comgr][hotswap] Make branch-island allocation transactional - #3677

Merged
harsh-amd merged 1 commit into
ROCm:amd-stagingfrom
harsh-amd:users/harsh/hotswap-branch-island-allocator
Jul 29, 2026
Merged

[comgr][hotswap] Make branch-island allocation transactional#3677
harsh-amd merged 1 commit into
ROCm:amd-stagingfrom
harsh-amd:users/harsh/hotswap-branch-island-allocator

Conversation

@harsh-amd

Copy link
Copy Markdown

Supersedes #3609 with a focused implementation on current
amd-staging.

Scope

  • Index available branch-gateway heads so each routing hop uses a bounded
    directional lookup instead of rescanning every sled.
  • Allocate a complete island chain transactionally and leave the gateway
    inventory unchanged when routing fails.
  • Co-advance exact physical aliases and split partially overlapping aliases so
    an occupied instruction word cannot be reused.
  • Preserve exact positive and negative branch-reach boundaries, direct-branch
    behavior, and function ownership.

Pair-backed/source-tail promotion remains separate in #3611.
This change has no unmerged PR dependency.

Tests

On mi300x, for exact head d66e2a72cdaf4e89bcf7949fd414d6878fd918f0:

  • Release focused allocator tests: 7/7 passed.
  • ASAN focused allocator tests with leak detection: 7/7 passed.
  • git diff --check: clean.

The complete COMGR/ASAN suites, differential corpus gate, and MI400 matrix
remain pending. This PR is intentionally a draft until those landing gates
complete.

@github-actions github-actions Bot added comgr Related to Code Object Manager hotswap Related to the Comgr Hotswap feature labels Jul 29, 2026
@harsh-amd
harsh-amd marked this pull request as ready for review July 29, 2026 16:45
@paulzzy
paulzzy enabled auto-merge (squash) July 29, 2026 16:48
@YashDeshpande25
YashDeshpande25 disabled auto-merge July 29, 2026 16:53
@paulzzy
paulzzy self-requested a review July 29, 2026 16:53

@paulzzy paulzzy left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

lgtm!

@harsh-amd
harsh-amd merged commit c6fb40e into ROCm:amd-staging Jul 29, 2026
62 checks passed
lamb-j added a commit to ROCm/TheRock that referenced this pull request Jul 29, 2026
…ing) (#6980)

## Summary

Bumps `compiler/amd-llvm` from `8f497e09` to `4a4173e7`, bringing the
two comgr **hotswap** commits that landed on `amd-staging` after 23.14.

Cherry-picked on top of the current pin, in `amd-staging` landed order:

| PR | Title |
|----|-------|
| ROCm/llvm-project#3583 | `comgr: accept validated data-only hotswap
objects` |
| ROCm/llvm-project#3677 | `[comgr][hotswap] Make branch-island
allocation transactional` |

Each carries a `(cherry picked from ...)` provenance line; both applied
cleanly with no conflicts. Neither adds gfx1251/gfx12-5-generic
coverage, and neither reintroduces the system-googletest StringRef trap
(#3677 adds no `SCOPED_TRACE`; #3583's gtest additions stream
`llvm::toString(...)`).

### Numbering
Follows SMP 23.14 (the current pin `8f497e09`), so this is **SMP
23.15**.

ISSUE ID: #6235
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comgr Related to Code Object Manager hotswap Related to the Comgr Hotswap feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants