Skip to content

Enable rocBLAS client tests to use bundled ILP64 OpenBLAS (OpenBLAS64)#4470

Draft
tony-davis wants to merge 9 commits intomainfrom
users/todavis/openblas-ilp64-enablement
Draft

Enable rocBLAS client tests to use bundled ILP64 OpenBLAS (OpenBLAS64)#4470
tony-davis wants to merge 9 commits intomainfrom
users/todavis/openblas-ilp64-enablement

Conversation

@tony-davis
Copy link
Copy Markdown
Contributor

Summary

  • Extend the super-project FindBLAS / FindLAPACK modules so bundled host BLAS resolution works when either LP64 (OpenBLAS / therock-host-blas) or ILP64 (OpenBLAS64 / therock-host-blas64) is provided, including clear FATAL_ERROR messages when BLA_SIZEOF_INTEGER=8 does not match available packages.
  • When THEROCK_BUILD_TESTING is enabled, wire rocBLAS client tests to depend on therock-host-blas64 and pass ROCBLAS_CLIENTS_REFERENCE_ILP64=ON so reference BLAS uses the ILP64 build.

Reference: ROCM-21562

Scope note

Bundled ILP64 OpenBLAS (therock-host-blas64) is already built by third-party/host-blas; this change connects the shared CMake finders and rocBLAS testing to it. Other math components can consume the same package via therock-host-blas64 + ILP64 BLAS/LAPACK options; hipBLAS already references therock-host-blas64 on main.

Test plan

  • Configure with testing enabled and confirm rocBLAS client build finds OpenBLAS64 where expected.
  • (Optional) Spot-check a configuration that only provides LP64 vs ILP64 to validate the new error paths.

tony-davis and others added 5 commits April 6, 2026 21:13
- Updated FindBLAS.cmake and FindLAPACK.cmake to support both OpenBLAS and OpenBLAS64.
- Added checks for BLA_SIZEOF_INTEGER to ensure correct library is found based on integer size.
- Improved error messages for missing dependencies in both BLAS and LAPACK configurations.
- Adjusted CMakeLists.txt to include ILP64 reference BLAS for Windows client tests.

This change ensures better compatibility and clearer error handling for users configuring BLAS and LAPACK in their projects.
- Adjusted conditional logic for Windows client tests to ensure ILP64 reference BLAS is linked correctly.
- Enhanced clarity in comments regarding the use of BLA_SIZEOF_INTEGER for integer size detection.

This change streamlines the build configuration for testing on Windows platforms.
Points the submodule at 550570f546b3808ae17163bab9c4b7c36ae17c3e (local testing).

Made-with: Cursor
@tony-davis tony-davis added test_filter:full If enabled, the PR will run full tests test:rocblas For pull requests, runs full tests for only rocblas and other labeled projects. and removed test_filter:full If enabled, the PR will run full tests labels Apr 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test:rocblas For pull requests, runs full tests for only rocblas and other labeled projects.

Projects

Status: TODO

Development

Successfully merging this pull request may close these issues.

1 participant