Repository navigation
ci: move hipBLASLt host ASAN CI from gfx90a to 942+950, and add hipSPARSELt - #14240
Conversation
✅ All Checks Passed — Ready for Review
📖 Need help? See the Policy FAQ for details on every check and how to fix failures. |
|
🎉 All checks passed! This PR is ready for review. |
There was a problem hiding this comment.
🟡 Changes recommended
The known-failing half-alpha reproducers terminate the shared sanitizer test process, preventing later selected tests from running.
1 open issue
What changed in this PR
Expands the dedicated host-ASAN workflow to cover hipBLASLt and hipSPARSELt on gfx942/gfx950 while retaining hipBLASLt smoke coverage on gfx90a.
Changes:
- Adds architecture-specific builds and separate library test jobs, with timeouts and failed-test log uploads.
- Adds standard-tier filters and permits regular hipSPARSELt GPU targets for host-ASAN builds.
- Adds standalone half-alpha regression tests and updates sanitizer coverage documentation.
| File | Description |
|---|---|
test/therock/test_hipsparselt.py |
Adds the standard-tier test filter. |
test/therock/test_hipblaslt.py |
Replaces a duplicate quick branch with standard-tier selection. |
projects/hipsparselt/cmake/hipsparselt_supported_architectures.cmake |
Distinguishes host-ASAN from device-ASAN target requirements. |
projects/hipblaslt/TESTING.md |
Documents expanded sanitizer coverage and test tiers. |
projects/hipblaslt/clients/tests/src/half_alpha_gtest.cpp |
Adds two standalone half-alpha regression cases. |
projects/hipblaslt/clients/tests/src/CMakeLists.txt |
Registers the new regression source. |
.github/workflows/hipblaslt-asan-ci.yml |
Expands triggers, builds, GPU jobs, artifacts, and timeout handling. |
Review effort: Balanced
8dc9da0 to
e9921da
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #14240 +/- ##
===========================================
- Coverage 77.75% 77.75% -0.00%
===========================================
Files 2904 2904
Lines 491207 491309 +102
Branches 74462 74495 +33
===========================================
+ Hits 381923 381993 +70
- Misses 84288 84309 +21
- Partials 24996 25007 +11
*This pull request uses carry forward flags. Click here to find out more. 🚀 New features to boost your workflow:
|
e9921da to
9303fa2
Compare
ba204d9 to
899ba20
Compare
899ba20 to
d5ce4a5
Compare
Temporary image validation for ROCm/TheRock#9506, stacked on #14240. Use the branch-built manylinux image in the hipBLASLt ASAN workflow and remove the separate ccache installation so the source builds exercise the image's ccache. Undo this commit once TheRock PR #9506 is merged and the shared CI image hashes are updated to its published image. This commit and its draft PR are for testing only. Do not merge.
Temporary image validation for ROCm/TheRock#9506, stacked on #14240. Use the branch-built manylinux image in the hipBLASLt ASAN workflow and remove the separate ccache installation so the source builds exercise the image's ccache. Undo this commit once TheRock PR #9506 is merged and the shared CI image hashes are updated to its published image. This commit and its draft PR are for testing only. Do not merge.
d5ce4a5 to
2c23cb7
Compare
JIRA ID : N/A ## Motivation The test helper `testing_matmul_with_bias` destroys its matrix-layout and matmul descriptors only at the end of the function. Any early return leaks them, including the expected "NO solution found!" failure in `rocroller_predicate_test.unrollXYK`. Found while expanding ASAN testing in [#14240](#14240). Current ASAN CI does not run this test. The expanded-coverage PR [#14240](#14240) adds it to scheduled standard ASAN runs on gfx950. ## Technical Details Own each descriptor with a `std::unique_ptr` and its `hipblasLtMatrixLayoutDestroy` or `hipblasLtMatmulDescDestroy` deleter as soon as it is created, and remove the manual destruction at the end of the function. The raw handle vectors remain because `GroupedGemm::setProblem` takes vectors of raw handles. ## Test Plan With a host AddressSanitizer (`HOST_ASAN`) client build on gfx950, run from the repository root: ```sh ASAN_OPTIONS=quarantine_size_mb=600:detect_leaks=1 \ LSAN_OPTIONS=suppressions=test/therock/lsan.supp \ hipblaslt-test --gtest_filter='*rocroller_predicate_test.unrollXYK*' ``` ## Test Result Leaked bytes went from 5,098 to 0. <details> <summary>ASAN error output (before fix)</summary> ```text ================================================================= ==377==ERROR: LeakSanitizer: detected memory leaks Direct leak of 184 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d895ba74 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15ba74) #2 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #3 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #4 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #5 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #6 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #7 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #8 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Direct leak of 56 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d895ab5c in rocblaslt_matrix_layout_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15ab5c) #2 0x70f5d8bec5b2 in hipblasLtMatrixLayoutCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ec5b2) #3 0x63ceaafe626d in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda1'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #4 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #5 0x63ceaaf602e0 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e12e0) #6 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #7 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #8 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Direct leak of 56 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d895ab5c in rocblaslt_matrix_layout_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15ab5c) #2 0x70f5d8bec5b2 in hipblasLtMatrixLayoutCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ec5b2) #3 0x63ceaafe665d in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda2'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #4 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #5 0x63ceaaf60546 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e1546) #6 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #7 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #8 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Direct leak of 56 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d895ab5c in rocblaslt_matrix_layout_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15ab5c) #2 0x70f5d8bec5b2 in hipblasLtMatrixLayoutCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ec5b2) #3 0x63ceaafe5e7d in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda0'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #4 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #5 0x63ceaaf6007d in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e107d) #6 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #7 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #8 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Direct leak of 56 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d895ab5c in rocblaslt_matrix_layout_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15ab5c) #2 0x70f5d8bec5b2 in hipblasLtMatrixLayoutCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ec5b2) #3 0x63ceaafe5a8d in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #4 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #5 0x63ceaaf5fe0f in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e0e0f) #6 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #7 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #8 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 1976 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a91976 in std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>>::vector(std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>> const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291976) #2 0x70f5d8a916b8 in TensileLite::ContractionProblem::ContractionProblem(TensileLite::ContractionProblem const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x2916b8) #3 0x70f5d8a2b2ec in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22b2ec) #4 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #5 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #6 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #7 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #8 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #9 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #10 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #11 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #12 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #13 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 1536 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d89c03d2 in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c03d2) #2 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #3 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #4 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #5 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #6 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #7 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #8 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #9 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 608 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a91739 in TensileLite::ContractionProblem::ContractionProblem(TensileLite::ContractionProblem const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291739) #2 0x70f5d8a2b2ec in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22b2ec) #3 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #4 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #5 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #6 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #7 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #8 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #9 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #10 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #11 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #12 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 96 byte(s) in 4 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a91dd9 in TensileLite::TensorDescriptor::TensorDescriptor(TensileLite::TensorDescriptor const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291dd9) #2 0x70f5d8a91a2a in std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>>::vector(std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>> const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291a2a) #3 0x70f5d8a916b8 in TensileLite::ContractionProblem::ContractionProblem(TensileLite::ContractionProblem const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x2916b8) #4 0x70f5d8a2b2ec in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22b2ec) #5 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #6 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #7 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #8 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #9 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #10 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #11 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #12 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #13 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #14 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 96 byte(s) in 4 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a91f25 in TensileLite::TensorDescriptor::TensorDescriptor(TensileLite::TensorDescriptor const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291f25) #2 0x70f5d8a91a2a in std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>>::vector(std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>> const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291a2a) #3 0x70f5d8a916b8 in TensileLite::ContractionProblem::ContractionProblem(TensileLite::ContractionProblem const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x2916b8) #4 0x70f5d8a2b2ec in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22b2ec) #5 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #6 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #7 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #8 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #9 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #10 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #11 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #12 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #13 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #14 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 96 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d783 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d783) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 64 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2cbd5 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22cbd5) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 34 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2c56e in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22c56e) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2ca60 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22ca60) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d607 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d607) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2cd47 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22cd47) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2c8e5 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22c8e5) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 24 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2ceca in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22ceca) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 8 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d1ae in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d1ae) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 8 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d31c in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d31c) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 8 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d040 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d040) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 8 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d48d in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d48d) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) SUMMARY: AddressSanitizer: 5098 byte(s) leaked in 28 allocation(s). ``` </details> ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/TheRock/blob/main/GOVERNANCE.md#pull-requests. ## Risk level Low (2/5): changes test-client descriptor ownership; matrix-multiplication library behavior is unchanged.
fix(hipblaslt): release matmul descriptors on early exits (#14714) JIRA ID : N/A ## Motivation The test helper `testing_matmul_with_bias` destroys its matrix-layout and matmul descriptors only at the end of the function. Any early return leaks them, including the expected "NO solution found!" failure in `rocroller_predicate_test.unrollXYK`. Found while expanding ASAN testing in [#14240](ROCm/rocm-libraries#14240). Current ASAN CI does not run this test. The expanded-coverage PR [#14240](ROCm/rocm-libraries#14240) adds it to scheduled standard ASAN runs on gfx950. ## Technical Details Own each descriptor with a `std::unique_ptr` and its `hipblasLtMatrixLayoutDestroy` or `hipblasLtMatmulDescDestroy` deleter as soon as it is created, and remove the manual destruction at the end of the function. The raw handle vectors remain because `GroupedGemm::setProblem` takes vectors of raw handles. ## Test Plan With a host AddressSanitizer (`HOST_ASAN`) client build on gfx950, run from the repository root: ```sh ASAN_OPTIONS=quarantine_size_mb=600:detect_leaks=1 \ LSAN_OPTIONS=suppressions=test/therock/lsan.supp \ hipblaslt-test --gtest_filter='*rocroller_predicate_test.unrollXYK*' ``` ## Test Result Leaked bytes went from 5,098 to 0. <details> <summary>ASAN error output (before fix)</summary> ```text ================================================================= ==377==ERROR: LeakSanitizer: detected memory leaks Direct leak of 184 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d895ba74 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15ba74) #2 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #3 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #4 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #5 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #6 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #7 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #8 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Direct leak of 56 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d895ab5c in rocblaslt_matrix_layout_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15ab5c) #2 0x70f5d8bec5b2 in hipblasLtMatrixLayoutCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ec5b2) #3 0x63ceaafe626d in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda1'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #4 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #5 0x63ceaaf602e0 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e12e0) #6 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #7 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #8 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Direct leak of 56 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d895ab5c in rocblaslt_matrix_layout_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15ab5c) #2 0x70f5d8bec5b2 in hipblasLtMatrixLayoutCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ec5b2) #3 0x63ceaafe665d in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda2'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #4 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #5 0x63ceaaf60546 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e1546) #6 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #7 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #8 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Direct leak of 56 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d895ab5c in rocblaslt_matrix_layout_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15ab5c) #2 0x70f5d8bec5b2 in hipblasLtMatrixLayoutCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ec5b2) #3 0x63ceaafe5e7d in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda0'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #4 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #5 0x63ceaaf6007d in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e107d) #6 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #7 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #8 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Direct leak of 56 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d895ab5c in rocblaslt_matrix_layout_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15ab5c) #2 0x70f5d8bec5b2 in hipblasLtMatrixLayoutCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ec5b2) #3 0x63ceaafe5a8d in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #4 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #5 0x63ceaaf5fe0f in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e0e0f) #6 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #7 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #8 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 1976 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a91976 in std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>>::vector(std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>> const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291976) #2 0x70f5d8a916b8 in TensileLite::ContractionProblem::ContractionProblem(TensileLite::ContractionProblem const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x2916b8) #3 0x70f5d8a2b2ec in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22b2ec) #4 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #5 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #6 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #7 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #8 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #9 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #10 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #11 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #12 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #13 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 1536 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d89c03d2 in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c03d2) #2 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #3 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #4 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #5 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #6 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #7 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #8 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #9 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 608 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a91739 in TensileLite::ContractionProblem::ContractionProblem(TensileLite::ContractionProblem const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291739) #2 0x70f5d8a2b2ec in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22b2ec) #3 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #4 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #5 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #6 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #7 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #8 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #9 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #10 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #11 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #12 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 96 byte(s) in 4 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a91dd9 in TensileLite::TensorDescriptor::TensorDescriptor(TensileLite::TensorDescriptor const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291dd9) #2 0x70f5d8a91a2a in std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>>::vector(std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>> const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291a2a) #3 0x70f5d8a916b8 in TensileLite::ContractionProblem::ContractionProblem(TensileLite::ContractionProblem const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x2916b8) #4 0x70f5d8a2b2ec in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22b2ec) #5 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #6 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #7 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #8 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #9 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #10 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #11 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #12 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #13 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #14 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 96 byte(s) in 4 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a91f25 in TensileLite::TensorDescriptor::TensorDescriptor(TensileLite::TensorDescriptor const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291f25) #2 0x70f5d8a91a2a in std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>>::vector(std::vector<TensileLite::TensorDescriptor, std::allocator<TensileLite::TensorDescriptor>> const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x291a2a) #3 0x70f5d8a916b8 in TensileLite::ContractionProblem::ContractionProblem(TensileLite::ContractionProblem const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x2916b8) #4 0x70f5d8a2b2ec in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22b2ec) #5 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #6 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #7 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #8 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #9 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #10 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #11 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #12 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #13 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #14 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 96 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d783 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d783) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 64 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2cbd5 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22cbd5) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 34 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2c56e in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22c56e) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2ca60 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22ca60) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d607 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d607) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2cd47 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22cd47) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 32 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2c8e5 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22c8e5) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 24 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2ceca in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22ceca) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 8 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d1ae in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d1ae) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 8 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d31c in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d31c) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 8 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d040 in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d040) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) Indirect leak of 8 byte(s) in 1 object(s) allocated from: #0 0x70f5d9d6d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x70f5d8a2d48d in TensileLite::ContractionProblemGemm::ContractionProblemGemm(TensileLite::ContractionProblemGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x22d48d) #2 0x70f5d8a93727 in TensileDataGemm::TensileDataGemm(TensileDataGemm const&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x293727) #3 0x70f5d89c045b in initTensileGemmData(_rocblaslt_handle*, rocblaslt::RocGemmType, hipblasOperation_t, hipblasOperation_t, hipDataType, hipDataType, hipDataType, hipDataType, rocblaslt_compute_type_, unsigned long, std::shared_ptr<void>&) (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x1c045b) #4 0x70f5d895bc78 in rocblaslt_matmul_desc_create (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x15bc78) #5 0x70f5d8becf3a in hipblasLtMatmulDescCreate (/__w/rocm-libraries/rocm-libraries/build/lib/libhipblaslt.so.1+0x3ecf3a) #6 0x63ceaafe903e in std::_Function_handler<void (), testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType)::'lambda17'()>::_M_invoke(std::_Any_data const&) matmul_gtest.cpp #7 0x63ceaae5e765 in catch_signals_and_exceptions_as_failures(std::function<void ()>, bool) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x4df765) #8 0x63ceaaf62403 in testing_matmul_with_bias(Arguments const&, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType, hipDataType) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5e3403) #9 0x63ceaaf501b8 in testing_matmul(Arguments const&) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x5d11b8) #10 0x63ceab034c8f in (anonymous namespace)::rocroller_predicate_test_unrollXYK_Test::TestBody() matmul_gtest.cpp #11 0x63ceaba7023c in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/__w/rocm-libraries/rocm-libraries/build/bin/hipblaslt-test+0x10f123c) SUMMARY: AddressSanitizer: 5098 byte(s) leaked in 28 allocation(s). ``` </details> ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/TheRock/blob/main/GOVERNANCE.md#pull-requests. ## Risk level Low (2/5): changes test-client descriptor ownership; matrix-multiplication library behavior is unchanged.
JIRA ID : N/A ## Motivation hipBLASLt caches one scratch buffer per GPU during tuning but never releases the final buffers. Found while expanding ASAN testing in [#14240](#14240). ## Technical Details Add a `TuningScratch` destructor that frees each device's cached allocation. Buffer allocation and reuse during tuning remain unchanged. ## Test Plan With a host AddressSanitizer (`HOST_ASAN`) build on gfx942, run: ```sh ASAN_OPTIONS=detect_leaks=1 \ hipblaslt-test --gtest_filter=TuningTune_pre_checkin.PartialSearchLeavesTheFinishedWinnerInUse ``` ## Test Result Leaked bytes went from 85,984,400 to 0. The MIOpen `GPU_HipBLASLtGEMMTest_FP8`/`_BFP8` failures in Multi-Arch CI are pre-existing: the same tests failed with identical errors on `develop` ([run 40970464913](https://github.com/ROCm/rocm-libraries/actions/runs/40970464913)) and on unrelated PRs. <details> <summary>ASAN error output (before fix)</summary> ```text ================================================================= ==1282656==ERROR: LeakSanitizer: detected memory leaks Direct leak of 85983232 byte(s) in 1 object(s) allocated from: #0 0x79d1fa9430c6 in hsa_amd_memory_pool_allocate /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_interceptors.cpp:908:3 #1 0x79d1f5681d91 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x1081d91) #2 0x79d1f56a0dba (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x10a0dba) #3 0x79d1f567dc55 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x107dc55) #4 0x79d1f5640af1 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x1040af1) #5 0x79d1f563ff71 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x103ff71) #6 0x79d1f56826bf (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x10826bf) #7 0x79d1f5630720 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x1030720) #8 0x79d1f564a47a (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x104a47a) #9 0x79d1f4dcc5d6 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7cc5d6) #10 0x79d1f4dd4fa7 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7d4fa7) #11 0x79d1f5338939 in hipMalloc (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xd38939) #12 0x79d1f95d3eb5 in (anonymous namespace)::benchmarkAndSelectWinner(_rocblaslt_handle*, RocblasltContractionProblem const&, TensileLite::ProblemOverride const&, std::shared_ptr<void>, std::shared_ptr<TensileLite::MasterSolutionLibrary<TensileLite::ContractionProblemGemm, TensileLite::ContractionSolution>>&, std::shared_ptr<TensileLite::Hardware>&, TensileLite::hip::SolutionAdapter*, int, TensileLite::TunedEntry&, int&) tensile_host.cpp #13 0x79d1f95c7b5e in runContractionProblem(_rocblaslt_handle*, _rocblaslt_matmul_algo const*, RocblasltContractionProblem const&, std::shared_ptr<void>) (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x1c7b5e) #14 0x79d1f959b963 in rocblaslt_matmul_impl (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x19b963) #15 0x79d1f95a8c64 in rocblaslt_matmul (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x1a8c64) #16 0x79d1f97ef3a8 in hipblasLtMatmul (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x3ef3a8) #17 0x6519309153ba in (anonymous namespace)::runGemmWith(long, long, long, (anonymous namespace)::AlgoFrom, int, int*, bool, hipblasOperation_t, int) tuning_tune_test.cpp #18 0x651930924b35 in (anonymous namespace)::TuningTune_pre_checkin_PartialSearchLeavesTheFinishedWinnerInUse_Test::TestBody() tuning_tune_test.cpp #19 0x651930f4e9fc in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x10dc9fc) Indirect leak of 472 byte(s) in 1 object(s) allocated from: #0 0x79d1fa96d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x79d1f568264f (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x108264f) #2 0x79d1f5630720 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x1030720) #3 0x79d1f564a47a (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x104a47a) #4 0x79d1f4dcc5d6 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7cc5d6) #5 0x79d1f4dd4fa7 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7d4fa7) #6 0x79d1f5338939 in hipMalloc (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xd38939) #7 0x79d1f95d3eb5 in (anonymous namespace)::benchmarkAndSelectWinner(_rocblaslt_handle*, RocblasltContractionProblem const&, TensileLite::ProblemOverride const&, std::shared_ptr<void>, std::shared_ptr<TensileLite::MasterSolutionLibrary<TensileLite::ContractionProblemGemm, TensileLite::ContractionSolution>>&, std::shared_ptr<TensileLite::Hardware>&, TensileLite::hip::SolutionAdapter*, int, TensileLite::TunedEntry&, int&) tensile_host.cpp #8 0x79d1f95c7b5e in runContractionProblem(_rocblaslt_handle*, _rocblaslt_matmul_algo const*, RocblasltContractionProblem const&, std::shared_ptr<void>) (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x1c7b5e) #9 0x79d1f959b963 in rocblaslt_matmul_impl (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x19b963) #10 0x79d1f95a8c64 in rocblaslt_matmul (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x1a8c64) #11 0x79d1f97ef3a8 in hipblasLtMatmul (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x3ef3a8) #12 0x6519309153ba in (anonymous namespace)::runGemmWith(long, long, long, (anonymous namespace)::AlgoFrom, int, int*, bool, hipblasOperation_t, int) tuning_tune_test.cpp #13 0x651930924b35 in (anonymous namespace)::TuningTune_pre_checkin_PartialSearchLeavesTheFinishedWinnerInUse_Test::TestBody() tuning_tune_test.cpp #14 0x651930f4e9fc in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x10dc9fc) Indirect leak of 360 byte(s) in 1 object(s) allocated from: #0 0x79d1fa96d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x79d1f567395b (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x107395b) #2 0x79d1f56712fb (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x10712fb) #3 0x79d1f554c875 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xf4c875) #4 0x79d1f565d3e9 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x105d3e9) #5 0x79d1f49aa56f (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x3aa56f) #6 0x79d1f3ea1fb2 in __pthread_once_slow nptl/pthread_once.c:116:7 #7 0x79d1f4dd3e14 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7d3e14) #8 0x79d1f5338939 in hipMalloc (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xd38939) #9 0x79d1f97eabab in hipblasLtCreate (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x3eabab) #10 0x651930a596e2 in hipblaslt_local_handle::hipblaslt_local_handle() (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0xbe76e2) #11 0x651930a5b1ab in hipblaslt_print_version() (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0xbe91ab) #12 0x65193030f233 in main (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x49d233) #13 0x79d1f3e2a1c9 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16 #14 0x79d1f3e2a28a in __libc_start_main csu/../csu/libc-start.c:360:3 #15 0x65193030d71d in _start (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x49b71d) Indirect leak of 192 byte(s) in 1 object(s) allocated from: #0 0x79d1fa96d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x79d1f567db98 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x107db98) #2 0x79d1f5640af1 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x1040af1) #3 0x79d1f563ff71 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x103ff71) #4 0x79d1f56826bf (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x10826bf) #5 0x79d1f5630720 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x1030720) #6 0x79d1f564a47a (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x104a47a) #7 0x79d1f4dcc5d6 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7cc5d6) #8 0x79d1f4dd4fa7 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7d4fa7) #9 0x79d1f5338939 in hipMalloc (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xd38939) #10 0x79d1f95d3eb5 in (anonymous namespace)::benchmarkAndSelectWinner(_rocblaslt_handle*, RocblasltContractionProblem const&, TensileLite::ProblemOverride const&, std::shared_ptr<void>, std::shared_ptr<TensileLite::MasterSolutionLibrary<TensileLite::ContractionProblemGemm, TensileLite::ContractionSolution>>&, std::shared_ptr<TensileLite::Hardware>&, TensileLite::hip::SolutionAdapter*, int, TensileLite::TunedEntry&, int&) tensile_host.cpp #11 0x79d1f95c7b5e in runContractionProblem(_rocblaslt_handle*, _rocblaslt_matmul_algo const*, RocblasltContractionProblem const&, std::shared_ptr<void>) (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x1c7b5e) #12 0x79d1f959b963 in rocblaslt_matmul_impl (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x19b963) #13 0x79d1f95a8c64 in rocblaslt_matmul (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x1a8c64) #14 0x79d1f97ef3a8 in hipblasLtMatmul (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x3ef3a8) #15 0x6519309153ba in (anonymous namespace)::runGemmWith(long, long, long, (anonymous namespace)::AlgoFrom, int, int*, bool, hipblasOperation_t, int) tuning_tune_test.cpp #16 0x651930924b35 in (anonymous namespace)::TuningTune_pre_checkin_PartialSearchLeavesTheFinishedWinnerInUse_Test::TestBody() tuning_tune_test.cpp #17 0x651930f4e9fc in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x10dc9fc) Indirect leak of 104 byte(s) in 1 object(s) allocated from: #0 0x79d1fa96d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x79d1f564bc27 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x104bc27) #2 0x79d1f564b95c (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x104b95c) #3 0x79d1f563fda3 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x103fda3) #4 0x79d1f56826bf (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x10826bf) #5 0x79d1f5630720 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x1030720) #6 0x79d1f564a47a (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x104a47a) #7 0x79d1f4dcc5d6 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7cc5d6) #8 0x79d1f4dd4fa7 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7d4fa7) #9 0x79d1f5338939 in hipMalloc (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xd38939) #10 0x79d1f95d3eb5 in (anonymous namespace)::benchmarkAndSelectWinner(_rocblaslt_handle*, RocblasltContractionProblem const&, TensileLite::ProblemOverride const&, std::shared_ptr<void>, std::shared_ptr<TensileLite::MasterSolutionLibrary<TensileLite::ContractionProblemGemm, TensileLite::ContractionSolution>>&, std::shared_ptr<TensileLite::Hardware>&, TensileLite::hip::SolutionAdapter*, int, TensileLite::TunedEntry&, int&) tensile_host.cpp #11 0x79d1f95c7b5e in runContractionProblem(_rocblaslt_handle*, _rocblaslt_matmul_algo const*, RocblasltContractionProblem const&, std::shared_ptr<void>) (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x1c7b5e) #12 0x79d1f959b963 in rocblaslt_matmul_impl (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x19b963) #13 0x79d1f95a8c64 in rocblaslt_matmul (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x1a8c64) #14 0x79d1f97ef3a8 in hipblasLtMatmul (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x3ef3a8) #15 0x6519309153ba in (anonymous namespace)::runGemmWith(long, long, long, (anonymous namespace)::AlgoFrom, int, int*, bool, hipblasOperation_t, int) tuning_tune_test.cpp #16 0x651930924b35 in (anonymous namespace)::TuningTune_pre_checkin_PartialSearchLeavesTheFinishedWinnerInUse_Test::TestBody() tuning_tune_test.cpp #17 0x651930f4e9fc in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x10dc9fc) Indirect leak of 24 byte(s) in 1 object(s) allocated from: #0 0x79d1fa96d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x79d1f563fd10 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x103fd10) #2 0x79d1f56826bf (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x10826bf) #3 0x79d1f5630720 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x1030720) #4 0x79d1f564a47a (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x104a47a) #5 0x79d1f4dcc5d6 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7cc5d6) #6 0x79d1f4dd4fa7 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7d4fa7) #7 0x79d1f5338939 in hipMalloc (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xd38939) #8 0x79d1f95d3eb5 in (anonymous namespace)::benchmarkAndSelectWinner(_rocblaslt_handle*, RocblasltContractionProblem const&, TensileLite::ProblemOverride const&, std::shared_ptr<void>, std::shared_ptr<TensileLite::MasterSolutionLibrary<TensileLite::ContractionProblemGemm, TensileLite::ContractionSolution>>&, std::shared_ptr<TensileLite::Hardware>&, TensileLite::hip::SolutionAdapter*, int, TensileLite::TunedEntry&, int&) tensile_host.cpp #9 0x79d1f95c7b5e in runContractionProblem(_rocblaslt_handle*, _rocblaslt_matmul_algo const*, RocblasltContractionProblem const&, std::shared_ptr<void>) (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x1c7b5e) #10 0x79d1f959b963 in rocblaslt_matmul_impl (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x19b963) #11 0x79d1f95a8c64 in rocblaslt_matmul (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x1a8c64) #12 0x79d1f97ef3a8 in hipblasLtMatmul (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x3ef3a8) #13 0x6519309153ba in (anonymous namespace)::runGemmWith(long, long, long, (anonymous namespace)::AlgoFrom, int, int*, bool, hipblasOperation_t, int) tuning_tune_test.cpp #14 0x651930924b35 in (anonymous namespace)::TuningTune_pre_checkin_PartialSearchLeavesTheFinishedWinnerInUse_Test::TestBody() tuning_tune_test.cpp #15 0x651930f4e9fc in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x10dc9fc) Indirect leak of 8 byte(s) in 1 object(s) allocated from: #0 0x79d1fa96d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x79d1f562eea2 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x102eea2) #2 0x79d1f567396d (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x107396d) #3 0x79d1f56712fb (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x10712fb) #4 0x79d1f554c875 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xf4c875) #5 0x79d1f565d3e9 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x105d3e9) #6 0x79d1f49aa56f (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x3aa56f) #7 0x79d1f3ea1fb2 in __pthread_once_slow nptl/pthread_once.c:116:7 #8 0x79d1f4dd3e14 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7d3e14) #9 0x79d1f5338939 in hipMalloc (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xd38939) #10 0x79d1f97eabab in hipblasLtCreate (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x3eabab) #11 0x651930a596e2 in hipblaslt_local_handle::hipblaslt_local_handle() (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0xbe76e2) #12 0x651930a5b1ab in hipblaslt_print_version() (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0xbe91ab) #13 0x65193030f233 in main (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x49d233) #14 0x79d1f3e2a1c9 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16 #15 0x79d1f3e2a28a in __libc_start_main csu/../csu/libc-start.c:360:3 #16 0x65193030d71d in _start (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x49b71d) Indirect leak of 8 byte(s) in 1 object(s) allocated from: #0 0x79d1fa96d8cd in operator new(unsigned long) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:109:35 #1 0x79d1f562ea29 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x102ea29) #2 0x79d1f567396d (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x107396d) #3 0x79d1f56712fb (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x10712fb) #4 0x79d1f554c875 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xf4c875) #5 0x79d1f565d3e9 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x105d3e9) #6 0x79d1f49aa56f (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x3aa56f) #7 0x79d1f3ea1fb2 in __pthread_once_slow nptl/pthread_once.c:116:7 #8 0x79d1f4dd3e14 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0x7d3e14) #9 0x79d1f5338939 in hipMalloc (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/lib/libamdhip64.so.7+0xd38939) #10 0x79d1f97eabab in hipblasLtCreate (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/lib/libhipblaslt.so.1+0x3eabab) #11 0x651930a596e2 in hipblaslt_local_handle::hipblaslt_local_handle() (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0xbe76e2) #12 0x651930a5b1ab in hipblaslt_print_version() (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0xbe91ab) #13 0x65193030f233 in main (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x49d233) #14 0x79d1f3e2a1c9 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16 #15 0x79d1f3e2a28a in __libc_start_main csu/../csu/libc-start.c:360:3 #16 0x65193030d71d in _start (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/tuning-suppression-review/ci-stage/bin/hipblaslt-test+0x49b71d) SUMMARY: AddressSanitizer: 85984400 byte(s) leaked in 8 allocation(s). ``` </details> ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/TheRock/blob/main/GOVERNANCE.md#pull-requests. ## Risk level Low (2/5): releases cached GPU buffers at process exit without changing their use during tuning.
JIRA ID : AIHPBLAS-5081 ## Motivation The memory-reclamation test expects releasing an idle GPU buffer to immediately increase available device memory. ASAN quarantine delays reclamation, so this assertion can fail. This test failure was exposed while expanding ASAN testing in [#14240](#14240), which adds scheduled standard ASAN coverage for this test. ## Technical Details Define `HIPBLASLT_TEST_ASAN_BUILD` in the common test header. Skip `FastCheckDevice_pre_checkin.memory_shortfall_reclaims_idle_buffers` under ASAN with the message `ASAN quarantine delays freeing GPU memory.` Normal builds run the test. [hipCUB uses the same approach for an allocator test](https://github.com/ROCm/rocm-libraries/blob/cddc7d1d2b229c8a5c8e61a415e88af1da6b6e0f/projects/hipcub/test/hipcub/test_hipcub_caching_device_allocator.cpp#L134). ## Test Plan With a host AddressSanitizer (`HOST_ASAN`) client build on gfx942, run: ```sh ASAN_OPTIONS=quarantine_size_mb=600:detect_leaks=1 \ ./hipblaslt-test --gtest_filter=FastCheckDevice_pre_checkin.memory_shortfall_reclaims_idle_buffers ``` ## Test Result Under ASAN, the test went from failing its memory-reclamation assertion to being skipped. <details> <summary>Assertion failure under ASAN (before skip)</summary> ```text 2026-10-24T00:44:12.6840152Z [ RUN ] FastCheckDevice_pre_checkin.memory_shortfall_reclaims_idle_buffers 2026-10-24T00:44:12.6856148Z /__w/rocm-libraries/rocm-libraries/projects/hipblaslt/clients/tests/src/fast_check_gtest.cpp:1369: Failure 2026-10-24T00:44:12.6856577Z Expected equality of these values: 2026-10-24T00:44:12.6856873Z fast_check_memory_shortfall(free_bytes + capacity / 2, 0) 2026-10-24T00:44:12.6857216Z Which is: "this case needs 247 GiB of device memory and 247 GiB is free" 2026-10-24T00:44:12.6857502Z "" 2026-10-24T00:44:12.6857591Z 2026-10-24T00:44:12.6857780Z [ FAILED ] FastCheckDevice_pre_checkin.memory_shortfall_reclaims_idle_buffers (1 ms) ``` </details> ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/TheRock/blob/main/GOVERNANCE.md#pull-requests. ## Risk level Low (2/5): test-only change that removes one ASAN test; normal-build assertions and product code remain unchanged.
JIRA ID : ROCM-33540 ## Motivation rocRoller's in-process assembler acquires the linked executable from the code-object manager (COMGR) but never releases that reference. Each assembly leaks executable data, causing host AddressSanitizer runs to fail at exit ([ROCM-33540](https://amd-hub.atlassian.net/browse/ROCM-33540)). Found while expanding ASAN testing in [#14240](#14240). ## Technical Details Release the reference acquired by `amd_comgr_action_data_get_data` after copying the executable bytes. Destroying the dataset releases its own reference; it does not release this separately acquired reference. ## Test Plan With a host AddressSanitizer (`HOST_ASAN`) TheRock build, run the existing CPU-only test without leak suppressions: ```sh env -u LD_LIBRARY_PATH -u LD_PRELOAD -u ROCROLLER_ASSEMBLER -u ROCROLLER_SAVE_ASSEMBLY \ ASAN_OPTIONS=quarantine_size_mb=600:detect_leaks=1 LSAN_OPTIONS= \ HIP_VISIBLE_DEVICES=-1 ROCR_VISIBLE_DEVICES= HSA_XNACK=0 \ rocroller-tests --gtest_filter=AssemblerTest.Basic ``` ## Test Result Leaked bytes went from 4,204 to 0. The `mci/rocm-libraries/code-analysis(rocroller)` failure is pre-existing: the job fails before analysis at `docker build -f null`, the same way it does on [`develop`](https://math-ci.amd.com/job/rocm-libraries/job/code-analysis/job/rocroller/job/develop/) and other PRs. <details> <summary>ASAN error output (before fix)</summary> ```text ================================================================= ==1667238==ERROR: LeakSanitizer: detected memory leaks Direct leak of 1240 byte(s) in 1 object(s) allocated from: #0 0x70e0e936daed in operator new(unsigned long, std::nothrow_t const&) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:114:3 #1 0x70e0cb7f51a5 in amd_comgr_create_data (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/bin/../lib/libamd_comgr.so.3+0x5f51a5) (BuildId: 14c1bc839727066f9233f0481c919d82cabe711d) #2 0x7ffe694a9f17 (<unknown module>) Indirect leak of 2959 byte(s) in 1 object(s) allocated from: #0 0x70e0e935d174 in malloc /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_malloc_linux.cpp:127:3 #1 0x70e0cbb4d96d (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/bin/../lib/libamd_comgr.so.3+0x94d96d) (BuildId: 14c1bc839727066f9233f0481c919d82cabe711d) #2 0x726170737069682c (<unknown module>) Indirect leak of 5 byte(s) in 1 object(s) allocated from: #0 0x70e0e935d174 in malloc /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_malloc_linux.cpp:127:3 #1 0x70e0cb7d1b06 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/bin/../lib/libamd_comgr.so.3+0x5d1b06) (BuildId: 14c1bc839727066f9233f0481c919d82cabe711d) SUMMARY: AddressSanitizer: 4204 byte(s) leaked in 3 allocation(s). ``` </details> ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/TheRock/blob/main/GOVERNANCE.md#pull-requests. ## Risk level Low (2/5): releases one acquired reference after the executable bytes have been copied. [ROCM-33540]: https://amd-hub.atlassian.net/browse/ROCM-33540?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
fix(rocroller): release acquired COMGR executable data (#14698) JIRA ID : ROCM-33540 ## Motivation rocRoller's in-process assembler acquires the linked executable from the code-object manager (COMGR) but never releases that reference. Each assembly leaks executable data, causing host AddressSanitizer runs to fail at exit ([ROCM-33540](https://amd-hub.atlassian.net/browse/ROCM-33540)). Found while expanding ASAN testing in [#14240](ROCm/rocm-libraries#14240). ## Technical Details Release the reference acquired by `amd_comgr_action_data_get_data` after copying the executable bytes. Destroying the dataset releases its own reference; it does not release this separately acquired reference. ## Test Plan With a host AddressSanitizer (`HOST_ASAN`) TheRock build, run the existing CPU-only test without leak suppressions: ```sh env -u LD_LIBRARY_PATH -u LD_PRELOAD -u ROCROLLER_ASSEMBLER -u ROCROLLER_SAVE_ASSEMBLY \ ASAN_OPTIONS=quarantine_size_mb=600:detect_leaks=1 LSAN_OPTIONS= \ HIP_VISIBLE_DEVICES=-1 ROCR_VISIBLE_DEVICES= HSA_XNACK=0 \ rocroller-tests --gtest_filter=AssemblerTest.Basic ``` ## Test Result Leaked bytes went from 4,204 to 0. The `mci/rocm-libraries/code-analysis(rocroller)` failure is pre-existing: the job fails before analysis at `docker build -f null`, the same way it does on [`develop`](https://math-ci.amd.com/job/rocm-libraries/job/code-analysis/job/rocroller/job/develop/) and other PRs. <details> <summary>ASAN error output (before fix)</summary> ```text ================================================================= ==1667238==ERROR: LeakSanitizer: detected memory leaks Direct leak of 1240 byte(s) in 1 object(s) allocated from: #0 0x70e0e936daed in operator new(unsigned long, std::nothrow_t const&) /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_new_delete.cpp:114:3 #1 0x70e0cb7f51a5 in amd_comgr_create_data (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/bin/../lib/libamd_comgr.so.3+0x5f51a5) (BuildId: 14c1bc839727066f9233f0481c919d82cabe711d) #2 0x7ffe694a9f17 (<unknown module>) Indirect leak of 2959 byte(s) in 1 object(s) allocated from: #0 0x70e0e935d174 in malloc /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_malloc_linux.cpp:127:3 #1 0x70e0cbb4d96d (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/bin/../lib/libamd_comgr.so.3+0x94d96d) (BuildId: 14c1bc839727066f9233f0481c919d82cabe711d) #2 0x726170737069682c (<unknown module>) Indirect leak of 5 byte(s) in 1 object(s) allocated from: #0 0x70e0e935d174 in malloc /__w/rocm-libraries/rocm-libraries/TheRock/compiler/amd-llvm/compiler-rt/lib/asan/asan_malloc_linux.cpp:127:3 #1 0x70e0cb7d1b06 (/home/rkayaith/repos/iree-workspace/workspaces/hipblaslt-hipsparselt-host-asan/tmp/comgr-existing-test/current-pin-dist/bin/../lib/libamd_comgr.so.3+0x5d1b06) (BuildId: 14c1bc839727066f9233f0481c919d82cabe711d) SUMMARY: AddressSanitizer: 4204 byte(s) leaked in 3 allocation(s). ``` </details> ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/TheRock/blob/main/GOVERNANCE.md#pull-requests. ## Risk level Low (2/5): releases one acquired reference after the executable bytes have been copied. [ROCM-33540]: https://amd-hub.atlassian.net/browse/ROCM-33540?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
1f7f14b to
f4009c4
Compare
789ecce to
0cf85b7
Compare
Use the official main-branch image published after ROCm/TheRock#9506 merged, so host ASAN builds retain -Xarch_host sanitizer flags. This updates the shared image used by component CI and host ASAN. Image publication: https://github.com/ROCm/TheRock/actions/runs/40793122052
Retain gfx90a hipBLASLt coverage and add hipBLASLt/hipSPARSELt on gfx942 and gfx950. Derive three architecture builds and five separate library GPU jobs from one architecture configuration, sharing each build between its library jobs. Run quick tests on relevant pull requests and standard tests nightly at 07:00 UTC. Manual dispatch requires a freeform test_type passed to every test runner. Resolve command, step, and job limits per architecture, component, and test type from measured quick and standard runtimes with at least 1.5x margin; other test types run without limits. Only pull request runs cancel each other. Broaden hipSPARSELt triggers and package both libraries. Exclude known bugs and the slow M=N=128 strided-batched SpMM smoke cases from the hipSPARSELt quick tests; correct the duplicated quick branch in the hipBLASLt test wrapper.
Suppress ROCM-30419 gate/residual descriptor clone leaks at the descriptor attribute setter and document that this covers all callers of the setter. Restore default suppression-count logging for CI evidence. Stream, event, tuning and COMGR ownership fixes remain separate commits.
The rocr::AMD::, hsaKmt and libhsa-runtime64.so rules were added without a recorded reason when leak detection was enabled. With the SpMM stream fix, they match nothing in the quick or standard host ASAN runs on any GPU, so they only hide new runtime leaks reached from these tests.
The quick filter excluded *smoke_spmm_strided_batched*_128_128_*, which also matched smaller smoke cases whose leading dimensions or strides contain 128_128 (for example M=N=8, K=128 with lda=ldb=128). Match the transpose code immediately before M and N so only the M=N=128 cases are excluded: on gfx942 this drops 9,504 cases instead of 10,368.
Test types without measured limits used a 7,200-minute step timeout, but GitHub Actions caps steps[*].timeout-minutes at 360 minutes for both GitHub-hosted and self-hosted runners. Use the 360-minute maximum; the job limit stays at the 7,200-minute self-hosted maximum.
tony-davis
left a comment
There was a problem hiding this comment.
Hi Rahul! Approving. This is a nice expansion, and I like that it already shook loose real leaks.
On the manylinux image bump: I think it's fine to keep here. It matches what TheRock already pins (#9589), our pinned therock-ref already uses it, and component CI passed on it. The thing is, bump automation only handles therock-ref and baseline-run-id, so nothing automated owns this line. I'd like infra to see it specifically. @ScottTodd @kailash-khalasi, could one of you take a quick look at the ci-env image change? It also moves CMake to 3.31.12 (plus USER root), not just ccache, so it'd be good for the description to say that too. I think the hipccl3 copy of ci-env still points at the old digest as well.
A few things I'd still like to see, none of them blocking from my side:
- Who owns the nightly when it goes red? GitHub only emails whoever last edited the cron line, so I bet it'd be just you. Probably worth naming an owner in TESTING.md.
- The
standardrun is from Oct 29, before the gfx90a removal and the suppression cleanup. One freshstandarddispatch on the final head before the nightly goes live would be great. - Has infra acked the added gfx942/gfx950 load? By my math it's roughly 1.2 GPU-hours per PR and ~9 nightly. Also, are those build times warm-cache?
Smaller: I'd guard the hipSPARSELt M=N=128 exclusion with is_asan(), since these drivers become canonical under RFC0010. A one-line comment on where the timeout numbers came from would help the next person too.
|
Updates since the last review:
|

JIRA ID : AIHPBLAS-5081
Motivation
The hipBLASLt ASAN workflow runs only hipBLASLt
*smoke*tests on gfx90a, so host-side leaks in hipSPARSELt, on gfx942/gfx950, and in tests outside*smoke*go unseen. This PR moves hipBLASLt host-ASAN CI from gfx90a to gfx942/gfx950, adds hipSPARSELt, and adds a nightly run of the broaderstandardtests.Dropping gfx90a slightly reduces architecture-specific sanitizer coverage, but avoids the persistent gfx90a runner hangs that make this CI flaky (TheRock-Infra #978). Regular gfx90a Math CI coverage remains.
The leaks this coverage found are fixed in the PRs below this one in the stack, and in #14800 above it.
Technical Details
hipblaslt-asan-ci.yml,test_hipblaslt.py,test_hipsparselt.py,TESTING.md):quick,*smoke*): 2 build jobs (gfx942 ~1h43m, gfx950 ~1h14m) and 4 test jobs (hipBLASLt gfx942 24m, hipBLASLt gfx950 19m, hipSPARSELt gfx942 16m, hipSPARSELt gfx950 13m), replacing the existing gfx90a build and hipBLASLt gfx90a test.standard,*smoke*:*quick*:*pre_checkin*-*known_bug*): 2 build jobs (gfx942 ~1h24m, gfx950 ~1h01m) and 4 test jobs (hipBLASLt gfx942 1h34m, gfx950 2h00m; hipSPARSELt gfx942 1h05m, gfx950 59m).test_typeinput.quickexcludes*known_bug*and the M=N=128spmm_strided_batchedsmoke cases, which are much slower under ASAN (43-67 minutes per GPU);standardstill runs them.rocr::AMD::,hsaKmtandlibhsa-runtime64.sorules, which matched nothing in these runs.leak:^rocsparselt_matmul_descr_set_attribute$, and stop settingprint_suppressions=0, so each run logs which suppressions matched..github/actions/ci-env/action.yml): use the image published by TheRock #9506, whose ccache keeps the-Xarch_hostsanitizer flags. The image also updates CMake to 3.31.12 and setsUSER root. This image is shared with component CI.Test Plan
Run
hipBLASLt ASAN CIon this PR (quick), and dispatch it withtest_type: standard.Test Result
The gfx942/gfx950 jobs passed in
quickandstandardruns. Times are whole-job times. Builds are the same for both test types. Test jobs start only after both builds complete.The nightly
standardrun is new. The per-PRquickrun replaces the gfx90a jobs with gfx942/gfx950 jobs for both libraries.quick(per-PR)standard(nightly, new)Submission Checklist
Risk level
Low (2/5): CI, test-driver and suppression changes, plus the shared build image update. The workflow is not a required check.