Repository navigation
[ROCm 10.2] build(hipblaslt): package TensileLite independently (AIHPBLAS-4434) (#12888) - #15152
Closed
assistant-librarian[bot] wants to merge 1 commit into
Closed
assistant-librarian[bot] wants to merge 1 commit into
assistant-librarian[bot] wants to merge 1 commit into
Conversation
JIRA ID: AIRDEL-125 build(hipblaslt): package TensileLite independently (AIHPBLAS-4434) (#12888) JIRA ID : AIHPBLAS-4434 ## Motivation hipSPARSELt uses the TensileLite host library at run time but does not need hipBLASLt's large kernel-data package. The existing split placed TensileLite files in components owned by hipBLASLt, which also forced those packages to use the hipBLASLt version. This change makes TensileLite an independently versioned CMake and packaging project while preserving hipBLASLt and hipSPARSELt consumption. ## Technical Details - Define the TensileLite project version with `TENSILELITE_PROJECT_VERSION`, initially `1.5.0`, and install `tensilelite-config.cmake` with the `roc::tensilelite-host` export. - Generate independent shared, static-development, and AddressSanitizer packages through `rocm_create_package`. Nested package components use distinct names so they cannot enter hipBLASLt packages. - Keep the existing `make package` entry point by running the nested TensileLite CPack configuration after hipBLASLt packaging. - Make hipBLASLt depend on the matching TensileLite runtime and development package versions. Keep hipSPARSELt's CMake dependency on hipBLASLt while changing its runtime package dependency to `tensilelite-host`. - Preserve bundled Origami as a separate static development package and retain upgrade metadata for files formerly owned by hipBLASLt packages. ## Related - Work tracking: AIHPBLAS-4434 - Related PR: #12372 ## Device / Architecture Coverage This changes CMake exports and package construction without changing kernels, dispatch, or device behavior. Host builds used `gfx942` as the configured target; automated GitHub build and packaging checks are pending. ## Test Plan - Build and package hipBLASLt with shared and static TensileLite configurations. - Build and package TensileLite directly as a standalone project. - Verify AddressSanitizer packaging contains the TensileLite shared library and license. - Configure and link consumers of the shared and static `roc::tensilelite-host` exports and the `roc::hipblaslt` export. - Exercise the TheRock dependency-provider flow through Origami, hipBLASLt, and hipSPARSELt. - Upgrade from the pre-split Debian packages and check package-manager consistency. ## Test Result - Shared hipBLASLt build passed; one CPack invocation produced `hipblaslt`, `hipblaslt-dev`, `tensilelite-host`, `tensilelite-host-dev`, and `origami-static-dev`. - Static TensileLite build passed and produced `tensilelite-host-static-dev` and `origami-static-dev` without empty runtime or development packages. - Standalone and AddressSanitizer builds and Debian packaging passed. The AddressSanitizer package contains `libtensilelite-host.so` and depends on `rocm-core-asan`. - Shared and static package consumers configured and linked successfully. - TheRock Origami, hipBLASLt, and hipSPARSELt configure, build, install, and artifact classification passed. - Debian upgrade testing completed with `apt` status 0 and a clean `dpkg --audit` result. - The local full TensileLite Python suite was attempted: 7,845 passed and 452 skipped; 50 failed and 22 errored because the host lacks `/usr/bin/amdclang++` and gfx1250 support. The failures do not touch the changed CMake packaging paths. - Automated GitHub checks are pending. ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/TheRock/blob/main/GOVERNANCE.md#pull-requests. ## Risk level Medium (3/5): this changes package ownership, dependency metadata, and installed CMake exports across TensileLite, hipBLASLt, Origami, and hipSPARSELt. It does not change runtime or device code. --------- Co-authored-by: T.J. Alumbaugh <talumbau@amd.com> Co-authored-by: Claude <noreply@anthropic.com>
Member
|
Closing as cherry-pick was rejected. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## release/therock-10.2 #15152 +/- ##
=====================================================
Coverage 75.89% 75.89%
=====================================================
Files 2865 2865
Lines 474296 474296
Branches 71056 71056
=====================================================
Hits 359946 359946
Misses 89788 89788
Partials 24562 24562
*This pull request uses carry forward flags. Click here to find out more. 🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cherry-picks the following commits into the ROCm 10.2 branch (
release/therock-10.2):5758e0df0c4858b05b3818596c4ac6df70ae5d89build(hipblaslt): package TensileLite independently (AIHPBLAS-4434) (build(hipblaslt): package TensileLite independently (AIHPBLAS-4434) #12888)JIRA ID: AIRDEL-125
Triggered by @marbre in the TheRock workflow run.