Skip to content

feat: Add JAX release support v0.10.0#6054

Merged
erman-gurses merged 54 commits into
mainfrom
users/erman-gurses/add-jax10x-support
Jun 26, 2026
Merged

feat: Add JAX release support v0.10.0#6054
erman-gurses merged 54 commits into
mainfrom
users/erman-gurses/add-jax10x-support

Conversation

@erman-gurses

@erman-gurses erman-gurses commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Summary

ISSUE ID: #3878
Related PR: ROCm/rockrel#65
Extend the JAX multi-arch release workflows to support both rocm-jaxlib-v0.9.1 and rocm-jaxlib-v0.10.0 release lines.

Changes

Release workflow

  • Add matrix support for:
    • rocm-jaxlib-v0.9.1
    • rocm-jaxlib-v0.10.0
  • Add release-line specific metadata:
    • jax_repository
    • build_mode
    • gfx_arch

Build workflow

rocm-jaxlib-v0.9.1

  • Continue using the existing native build flow.
  • Build from ROCm/rocm-jax.
  • Continue using build/ci_build.

rocm-jaxlib-v0.10.0

  • Build from ROCm/jax.
  • Build a manylinux image using the release branch Dockerfile from ROCm/rocm-jax.
  • Build wheels inside the manylinux container using build/build.py.

Testing

On rockrel:

https://github.com/ROCm/rockrel/actions/runs/28217952215/job/83613621212
https://github.com/ROCm/rockrel/actions/runs/28224689859

  • Preserve existing GPU-family based runner selection through configure_target_run.py.
  • Add a JAX device visibility sanity check before running tests:
python -c "import jax; print(jax.local_devices())"

- Verified matrix expansion across Python 3.11–3.14.
- Verified native build path for rocm-jaxlib-v0.9.1.
- Verified manylinux build path for rocm-jaxlib-v0.10.0.
- Verified release artifact publication.
- Verified JAX device visibility check executes before tests.

TODO: 
Run JAX builds inside a top-level GitHub Actions job container, similar to existing PyTorch workflows.

@therock-pr-bot

therock-pr-bot Bot commented Jun 23, 2026

Copy link
Copy Markdown

✅ All Policy Checks Passed

Check Status Details
🌿 Branch Name ✅ Pass
📝 PR Title/Description ✅ Pass
Forbidden Files ✅ Pass
🧪 Unit Test ✅ Pass
🚫 Draft PR 🔜 To Be Enabled
🚩 Feature Flag 🔜 To Be Enabled
📊 Code Coverage 🔜 To Be Enabled

🎉 All policy checks passed!

📖 Need help? See the Policy FAQ for details on every check and how to fix failures.

@therock-pr-bot therock-pr-bot Bot added the Not ready to Review PR has unresolved policy failures — reviews blocked label Jun 23, 2026
@therock-pr-bot

therock-pr-bot Bot commented Jun 23, 2026

Copy link
Copy Markdown

🎉 All checks passed! This PR is ready for review.

@erman-gurses erman-gurses requested review from ScottTodd and marbre June 23, 2026 07:19
@erman-gurses erman-gurses added the ci:skip Skip all CI builds/tests for this PR label Jun 23, 2026
@erman-gurses erman-gurses linked an issue Jun 23, 2026 that may be closed by this pull request
@erman-gurses erman-gurses changed the title Add JAX release support v0.10.0 [Feature] Add JAX release support v0.10.0 Jun 23, 2026
@erman-gurses erman-gurses changed the title [Feature] Add JAX release support v0.10.0 feat - Add JAX release support v0.10.0 Jun 23, 2026
@erman-gurses erman-gurses changed the title feat - Add JAX release support v0.10.0 feat: Add JAX release support v0.10.0 Jun 23, 2026
@therock-pr-bot therock-pr-bot Bot removed the Not ready to Review PR has unresolved policy failures — reviews blocked label Jun 23, 2026
@erman-gurses erman-gurses requested review from gulsumgudukbay and tsrw2048 and removed request for marbre June 23, 2026 16:16
@ScottTodd ScottTodd requested a review from marbre June 23, 2026 17:40
Comment thread .github/workflows/multi_arch_build_linux_jax_wheels.yml Outdated
Comment thread .github/workflows/multi_arch_build_linux_jax_wheels.yml
Comment thread .github/workflows/multi_arch_build_linux_jax_wheels.yml Outdated
Comment thread .github/workflows/multi_arch_build_linux_jax_wheels.yml Outdated
Comment thread .github/workflows/multi_arch_build_linux_jax_wheels.yml Outdated
Comment thread .github/workflows/multi_arch_build_linux_jax_wheels.yml Outdated

@gulsumgudukbay gulsumgudukbay left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It would be great if we could move to wheels instead of tarballs and environment variable testing. Unit testing with theRock wheels without any environment variables also allows us to surface packaging issues if there are any. That is how we caught previous packaging issues. This way theRock CI not only tests libraries and systems bugs, it will also test the actual packaging

@erman-gurses

erman-gurses commented Jun 25, 2026

Copy link
Copy Markdown
Contributor Author

Latest Test: https://github.com/ROCm/rockrel/actions/runs/28196469890 (In Progress)

@ScottTodd

Copy link
Copy Markdown
Member

Latest Test: https://github.com/ROCm/rockrel/actions/runs/28196469890 (In Progress)

You can also test dev releases here in TheRock: https://github.com/ROCm/TheRock/actions/workflows/multi_arch_release.yml . We'd prefer that - access to rockrel is intentionally limited as workflow runs there have the potential to push to nightly/prerelease buckets.

@ScottTodd ScottTodd left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks, looking good now :)

Comment thread .github/workflows/multi_arch_build_linux_jax_wheels.yml Outdated
@therock-pr-bot therock-pr-bot Bot added the Not ready to Review PR has unresolved policy failures — reviews blocked label Jun 26, 2026
@therock-pr-bot therock-pr-bot Bot removed the Not ready to Review PR has unresolved policy failures — reviews blocked label Jun 26, 2026
@erman-gurses

Copy link
Copy Markdown
Contributor Author

@marbre marbre left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I think your changes can go in @erman-gurses but make sure to land this coordinated with your PR to rockrel (whcih still pins your own branch!).

@erman-gurses

Copy link
Copy Markdown
Contributor Author

I think your changes can go in @erman-gurses but make sure to land this coordinated with your PR to rockrel (whcih still pins your own branch!).

I updated already @marbre, please see the PR: ROCm/rockrel#65

@erman-gurses erman-gurses requested review from marbre June 26, 2026 17:22
@erman-gurses erman-gurses merged commit 3b10211 into main Jun 26, 2026
136 of 144 checks passed
@erman-gurses erman-gurses deleted the users/erman-gurses/add-jax10x-support branch June 26, 2026 17:44
@github-project-automation github-project-automation Bot moved this from TODO to Done in TheRock Triage Jun 26, 2026
erman-gurses added a commit to ROCm/rockrel that referenced this pull request Jun 26, 2026
…orkflow (#65)

## Summary
Related PR: ROCm/TheRock#6054

Add `rocm_package_find_links_url` to the rockrel JAX release workflow
and forward it to the reusable TheRock JAX build workflow.

This allows the JAX manylinux build path to consume ROCm packages from a
configurable package index instead of relying on a hardcoded URL.

## Changes

* Add `rocm_package_find_links_url` workflow input to
`multi_arch_release_linux_jax_wheels.yml`
* Forward `rocm_package_find_links_url` to the reusable
`multi_arch_build_linux_jax_wheels.yml` workflow
* Default the value to the current dev multi-arch package index:

  * `https://rocm.devreleases.amd.com/whl-multi-arch/`

## Motivation

The JAX manylinux build flow now installs ROCm packages from a package
index. Passing the package source as an input allows the workflow to
support different release channels (dev, nightly, prerelease) without
hardcoding a specific index URL in the build workflow.

Tests:
https://github.com/ROCm/rockrel/actions/runs/28086158341
marbre pushed a commit that referenced this pull request Jun 29, 2026
## Summary
ISSUE ID: #3878
Related PR: ROCm/rockrel#65
Extend the JAX multi-arch release workflows to support both
`rocm-jaxlib-v0.9.1` and `rocm-jaxlib-v0.10.0` release lines.

## Changes

### Release workflow

- Add matrix support for:
  - `rocm-jaxlib-v0.9.1`
  - `rocm-jaxlib-v0.10.0`
- Add release-line specific metadata:
  - `jax_repository`
  - `build_mode`
  - `gfx_arch`

### Build workflow

#### rocm-jaxlib-v0.9.1

- Continue using the existing native build flow.
- Build from `ROCm/rocm-jax`.
- Continue using `build/ci_build`.

#### rocm-jaxlib-v0.10.0

- Build from `ROCm/jax`.
- Build a manylinux image using the release branch Dockerfile from
`ROCm/rocm-jax`.
- Build wheels inside the manylinux container using `build/build.py`.

### Testing

On rockrel: 

https://github.com/ROCm/rockrel/actions/runs/28217952215/job/83613621212
https://github.com/ROCm/rockrel/actions/runs/28224689859

- Preserve existing GPU-family based runner selection through
`configure_target_run.py`.
- Add a JAX device visibility sanity check before running tests:

```bash
python -c "import jax; print(jax.local_devices())"

- Verified matrix expansion across Python 3.11–3.14.
- Verified native build path for rocm-jaxlib-v0.9.1.
- Verified manylinux build path for rocm-jaxlib-v0.10.0.
- Verified release artifact publication.
- Verified JAX device visibility check executes before tests.

TODO: 
Run JAX builds inside a top-level GitHub Actions job container, similar to existing PyTorch workflows.
magaonka-amd added a commit that referenced this pull request Jun 29, 2026
## Summary
Incremental follow-up to #6054 (JAX 0.10.0 support). Adds the JAX 0.10.2
release to the multi-arch Linux JAX wheel build/test matrix.

- Adds `rocm-jaxlib-v0.10.2` to the release matrix, wired identically to
  0.10.0 (`ROCm/jax`, `manylinux` build mode, `device-all`).
- Uses the **default** XLA allocator
(`XLA_PYTHON_CLIENT_ALLOCATOR=default`)
  for the 0.10.2 test cell only; 0.9.1 and 0.10.0 keep `platform`.
- Documents 0.10.2 in the JAX support table.

## Test plan
- [ ] `Multi-Arch Release Linux JAX Wheels` 0.10.2 cell builds wheels
- [ ] JAX test subset passes with the default allocator

I ran full matrix run got all green :
https://github.com/ROCm/TheRock/actions/runs/28336527815/job/83947970257
marbre added a commit that referenced this pull request Jun 29, 2026
Cherry-picks 3b10211 into the 7.14 release branch.

---

## Summary
ISSUE ID: #3878 Related PR:
ROCm/rockrel#65 Extend the JAX multi-arch
release workflows to support both `rocm-jaxlib-v0.9.1` and
`rocm-jaxlib-v0.10.0` release lines.

## Changes

### Release workflow

- Add matrix support for:
  - `rocm-jaxlib-v0.9.1`
  - `rocm-jaxlib-v0.10.0`
- Add release-line specific metadata:
  - `jax_repository`
  - `build_mode`
  - `gfx_arch`

### Build workflow

#### rocm-jaxlib-v0.9.1

- Continue using the existing native build flow.
- Build from `ROCm/rocm-jax`.
- Continue using `build/ci_build`.

#### rocm-jaxlib-v0.10.0

- Build from `ROCm/jax`.
- Build a manylinux image using the release branch Dockerfile from
`ROCm/rocm-jax`.
- Build wheels inside the manylinux container using `build/build.py`.

### Testing

On rockrel: 


https://github.com/ROCm/rockrel/actions/runs/28217952215/job/83613621212
https://github.com/ROCm/rockrel/actions/runs/28224689859

- Preserve existing GPU-family based runner selection through
`configure_target_run.py`.
- Add a JAX device visibility sanity check before running tests:

```bash
python -c "import jax; print(jax.local_devices())"

- Verified matrix expansion across Python 3.11–3.14.
- Verified native build path for rocm-jaxlib-v0.9.1.
- Verified manylinux build path for rocm-jaxlib-v0.10.0.
- Verified release artifact publication.
- Verified JAX device visibility check executes before tests.

TODO: 
Run JAX builds inside a top-level GitHub Actions job container, similar to existing PyTorch workflows.

Co-authored-by: erman-gurses <99776114+erman-gurses@users.noreply.github.com>
marbre added a commit to ROCm/rockrel that referenced this pull request Jun 29, 2026
…orkflow (#65) (#68)

Cherry-pick b775c04 into the 7.14 release branch.

---

## Summary
Related PR: ROCm/TheRock#6054

Add `rocm_package_find_links_url` to the rockrel JAX release workflow
and forward it to the reusable TheRock JAX build workflow.

This allows the JAX manylinux build path to consume ROCm packages from a
configurable package index instead of relying on a hardcoded URL.

## Changes

* Add `rocm_package_find_links_url` workflow input to
`multi_arch_release_linux_jax_wheels.yml`
* Forward `rocm_package_find_links_url` to the reusable
`multi_arch_build_linux_jax_wheels.yml` workflow
* Default the value to the current dev multi-arch package index:

  * `https://rocm.devreleases.amd.com/whl-multi-arch/`

## Motivation

The JAX manylinux build flow now installs ROCm packages from a package
index. Passing the package source as an input allows the workflow to
support different release channels (dev, nightly, prerelease) without
hardcoding a specific index URL in the build workflow.

Tests:
https://github.com/ROCm/rockrel/actions/runs/28086158341

Co-authored-by: erman-gurses <99776114+erman-gurses@users.noreply.github.com>
erman-gurses added a commit that referenced this pull request Jun 29, 2026
## Summary
Issue ID: #6226
Updated the JAX section in `RELEASES.md` to reflect current supported
versions and installation methods.

### Changes

- **Multi-arch JAX section**: Added clear installation instructions
using the unified index
(`https://rocm.nightlies.amd.com/whl-multi-arch/`) with `[device-*]`
extras.
- Updated supported JAX versions to **0.9.1** and **0.10.0**.
- Added note about version pinning (`jax`, `jax_rocm7_plugin`,
`jax_rocm7_pjrt`).
- Improved consistency with the PyTorch documentation section.
- Minor cleanup and better cross-references.

### Related

- #6054 (JAX 0.10.0 support)
- https://github.com/ROCm/rockrel/actions/runs/28346375566 (successful
nightly)

This makes the documentation accurate and user-friendly for both 0.9.1
and 0.10.0 users.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:skip Skip all CI builds/tests for this PR

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

[CI] Build and test JAX Python packages as part of ci.yml

5 participants