Skip to content

[tensilelite] Enable tensilelite tests in TheRock CI matrix - #7872

Merged
talumbau merged 17 commits into
developfrom
users/aramalin/tensilelite-therock-matrix
Jun 10, 2026
Merged

talumbau merged 17 commits into
developfrom
users/aramalin/tensilelite-therock-matrix

Conversation

@archana-ramalingam

@archana-ramalingam archana-ramalingam commented May 29, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Add tensilelite to the blas projects_to_test list in therock_matrix.py so tensilelite/rocisa tests run in TheRock CI.

Technical details

  • Enable the TensileLite component in therock_matrix.py.
  • Guarded from hip import hip with try/except in gpu_test_helpers.py to prevent ImportError on systems without hip. Added requires_gpu marker combining hip availability + gfx950 architecture check, applied to all GPU unit test classes. (only subtile unit tests require gfx950 and hip)

Dependency

Test plan

  • TheRock CI blas test job picks up tensilelite and runs tensilelite/rocisa tests
  • GPU unit tests skip cleanly (not error) when hip module is not installed

Test results

  • Artifact layout verified — share/hipblaslt/tensilelite/{Tensile,rocisa,rocisa_tests}/
  • Smoke import: Tensile.ROOT_PATH and rocisa.__file__ resolve to artifact paths
  • rocisa: 48 passed
  • TensileLite unit tests:

AIGECORE-1997

TheRock PR #4991 added the tensilelite test component configuration
(test script, artifact config, fetch config). Now that it's merged,
enable the component in `therock_matrix.py` so tensilelite/rocisa
tests run in TheRock CI alongside hipblaslt.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@archana-ramalingam
archana-ramalingam requested a review from a team as a code owner May 29, 2026 00:23
@github-actions github-actions Bot added github actions project: none Does not target any component labels May 29, 2026
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Gives a clear error message when _rocisa.abi3.so is loaded under
Python < 3.12 instead of the cryptic 'undefined symbol:
PyType_FromMetaclass' from the dynamic linker.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@archana-ramalingam
archana-ramalingam force-pushed the users/aramalin/tensilelite-therock-matrix branch from 9776887 to 9f7b8ef Compare May 29, 2026 21:31
@codecov-commenter

codecov-commenter commented May 29, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 4 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
...ts/hipblaslt/tensilelite/rocisa/rocisa/__init__.py 0.00% 4 Missing ⚠️

❌ Your project status has failed because the head coverage (77.83%) is below the target coverage (80.00%). You can increase the head coverage or adjust the target coverage.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #7872      +/-   ##
===========================================
+ Coverage    61.93%   62.02%   +0.09%     
===========================================
  Files         2095     2091       -4     
  Lines       360865   360422     -443     
  Branches     54623    54575      -48     
===========================================
+ Hits        223476   223518      +42     
+ Misses      118533   118047     -486     
- Partials     18856    18857       +1     
Flag Coverage Δ *Carryforward flag
TensileLite 28.40% <0.00%> (-0.02%) ⬇️
hipBLAS 90.65% <ø> (+<0.01%) ⬆️ Carriedforward from be17310
hipBLASLt 41.25% <ø> (ø) Carriedforward from be17310
hipCUB 82.21% <ø> (-0.47%) ⬇️ Carriedforward from be17310
hipDNN 86.59% <ø> (-0.04%) ⬇️ Carriedforward from be17310
hipFFT 50.00% <ø> (-0.83%) ⬇️ Carriedforward from be17310
hipRAND 76.12% <ø> (ø) Carriedforward from be17310
hipSOLVER 69.24% <ø> (+0.06%) ⬆️ Carriedforward from be17310
hipSPARSE 85.42% <ø> (-1.13%) ⬇️ Carriedforward from be17310
rocBLAS 48.09% <ø> (-0.01%) ⬇️ Carriedforward from be17310
rocFFT 52.07% <ø> (+0.67%) ⬆️ Carriedforward from be17310
rocRAND 57.03% <ø> (+0.01%) ⬆️ Carriedforward from be17310
rocSOLVER 77.83% <ø> (-<0.01%) ⬇️ Carriedforward from be17310
rocSPARSE 72.68% <ø> (+0.37%) ⬆️ Carriedforward from be17310

*This pull request uses carry forward flags. Click here to find out more.

Files with missing lines Coverage Δ
...ts/hipblaslt/tensilelite/rocisa/rocisa/__init__.py 0.00% <0.00%> (ø)

... and 140 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

archana-ramalingam and others added 6 commits June 4, 2026 21:13
…ers.py`

Bare `from hip import hip` at module level crashes pytest collection in
environments without hip-python (e.g. FFM Docker containers). hip is
only used in `run_on_gpu()` — move the import there. hiprtc was unused.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The bump automation bot incorrectly hardcoded the TheRock SHA in 6
workflow files instead of only updating ci-env/action.yml. This restores
the original ${{ inputs.therock_ref }} and ${{ steps.ci-env.outputs.therock-ref }}
expressions and updates ci-env/action.yml to the new ref.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The path filter in therock_configure_ci.py only checked .github/workflows/
and .github/scripts/ — changes to .github/actions/ci-env/ (the single
source of truth for the TheRock ref) were not detected, causing CI to
skip builds on TheRock ref bump PRs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The common GEMM tests need the prebuilt client binary at
libexec/hipblaslt/tensilelite/tensilelite-client, matching the
artifact-blas.toml pattern in TheRock. Without this, FFM gfx1250
tests fail with FileNotFoundError.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@archana-ramalingam
archana-ramalingam requested a review from a team as a code owner June 5, 2026 05:30

@geomin12 geomin12 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

lgtm but a few comments

Comment thread .github/scripts/therock_configure_ci.py Resolved
archana-ramalingam and others added 3 commits June 5, 2026 15:31
  Prevents ImportError on systems without hip by using a try/except guard at module level and a combined requires_gpu skip marker that checks both hip availability and gfx950 architecture.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Module-level `validateToolchain()`/`makeIsaInfoMap()` calls in
`test_MatrixInstructionConversion.py` poison the rocisa singleton cache
at collection time, breaking common tests when collected together.

Move to a `scope="module"` fixture so initialization is deferred to
test execution time.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
archana-ramalingam and others added 2 commits June 9, 2026 11:36
Revert ci-env TheRock ref bump and therock_configure_ci.py changes
that belong to PR #8014, not this PR.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@archana-ramalingam
archana-ramalingam force-pushed the users/aramalin/tensilelite-therock-matrix branch from 1af8af7 to 14a0b64 Compare June 9, 2026 18:55

@talumbau talumbau left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

approving for hipblaslt-reviewers. Adding @tony-davis and @Alex-Vasile for .github changes and the Cmake changes, respectively.

…o PR #8004

These changes belong with the GPU emulation dispatch work, not the CI
matrix enablement PR.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

@tony-davis tony-davis 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.

Approving for the .github change (adding tensilelite to the blas projects_to_test matrix) — it's a safe one-line CI enablement. The gpu_test_helpers.py import guard correctly fixes the collection crash in hip-less environments; verified those were the only module-level hip imports. LGTM.

@Alex-Vasile Alex-Vasile 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.

Lgtm

@archana-ramalingam

archana-ramalingam commented Jun 10, 2026 •

Copy link
Copy Markdown
Contributor Author

Failing Windows gfx1151 tests: regression in a recent PR, commented details here - Issue
Log (failed all 6 re-runs): Log 1 , Log 2, Log 3

Failing Linux tests are pre-existing.

@archana-ramalingam

archana-ramalingam commented Jun 10, 2026 •

Copy link
Copy Markdown
Contributor Author

Verified both Linux tests that timed out in CI, passed locally on gfx942:

@talumbau

Copy link
Copy Markdown
Collaborator

@talumbau
talumbau merged commit 2b7fb07 into develop Jun 10, 2026
522 of 590 checks passed
@talumbau
talumbau deleted the users/aramalin/tensilelite-therock-matrix branch June 10, 2026 22:25
cderb pushed a commit that referenced this pull request Jun 12, 2026
## Summary
Add `tensilelite` to the blas `projects_to_test` list in
`therock_matrix.py` so tensilelite/rocisa tests run in TheRock CI.

## Technical details
- Enable the `TensileLite` component in `therock_matrix.py`.
- Guarded `from hip import hip` with try/except in `gpu_test_helpers.py`
to prevent `ImportError` on systems without hip. Added `requires_gpu`
marker combining hip availability + gfx950 architecture check, applied
to all GPU unit test classes. (only subtile unit tests require gfx950
and `hip`)

### Dependency
- #6205: Added `CMake` install rules to package `TensileLite`'s Python
packages (Tensilelite + rocisa) for artifact-based testing in `TheRock`
CI.
- #7716: Narrowed xfail marker in `test_PlaceholderMerge.py` to only 2
tests that fail in absence of the logic files
- ROCm/TheRock#5529: Added the `tensilelite`
test component configuration.
- #8196: Update `TheRock`
reference to include ROCm/TheRock#5529 changes

## Test plan
- [x] `TheRock` CI blas test job picks up `tensilelite` and runs
tensilelite/rocisa tests
- [x] GPU unit tests skip cleanly (not error) when `hip` module is not
installed

## Test results
- [x] Artifact layout verified —
`share/hipblaslt/tensilelite/{Tensile,rocisa,rocisa_tests}/`
- [x] Smoke import: `Tensile.ROOT_PATH` and `rocisa.__file__` resolve to
artifact paths
- [x]
[rocisa](https://github.com/ROCm/rocm-libraries/actions/runs/27043375484/job/79836587812?pr=7872#step:11:92):
48 passed
- [x] TensileLite [unit
tests](https://github.com/ROCm/rocm-libraries/actions/runs/27043375484/job/79836587812?pr=7872#step:11:1569):
   - 1325 passed
- 212 skipped (subtile tests requires [gfx950
runners](ROCm/TheRock#3288))
- 1 xfailed ([Issue](#7481)
filed)

AIGECORE-1997

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: therockbot <therockbot@amd.com>
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.

6 participants