Skip to content

Conversation

@jsandham
Copy link
Contributor

@jsandham jsandham commented Oct 29, 2025

Motivation

The goal is to add yaml files for testing in hipSPARSE similar to how we
handle testing in rocSPARSE. This makes the testing cleaner and more
flexible. Doing this all in one PR however would result in a very large
number of file changes and file additions. In order to keep the PR size
more manageable, I am refactoring the hipSPARSE client code to support
yaml file testing in parts:

Part 1: Remove std::string from Arguments struct and only use
fixed sized char arrays COMPLETE
Part 2: Add code required to process yaml file testing, generate
binary data test file, and handle the dispatching of tests. COMPLETE
Part 3: Move level1 routines over to using yaml files. COMPLETE
Part 4: Move level2 routines over to using yaml files COMPLETE
Part 5: Move level3 routines over to using yaml files
Part 6: Move extra routines over to using yaml files
Part 7: Move precond routines over to using yaml files
Part 8: Move generic routines over to using yaml files
Part 9: Move conversion routines over to using yaml files

Technical Details

This first PR handles Part 8, namely moving generic routines to new yaml testing

Test Plan

All CI tests should pass

@codecov-commenter
Copy link

codecov-commenter commented Oct 29, 2025

Codecov Report

❌ Patch coverage is 98.96907% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
...ects/hipsparse/clients/include/testing_scatter.hpp 0.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##           develop    #2360       +/-   ##
============================================
+ Coverage    67.19%   87.49%   +20.29%     
============================================
  Files          362      301       -61     
  Lines        50705    23524    -27181     
  Branches      5708        0     -5708     
============================================
- Hits         34069    20580    -13489     
+ Misses       13052     2944    -10108     
+ Partials      3584        0     -3584     
Flag Coverage Δ
hipSPARSE 87.49% <98.97%> (?)
rocBLAS ?

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
...ojects/hipsparse/clients/include/testing_axpby.hpp 84.15% <100.00%> (ø)
...se/clients/include/testing_dense_to_sparse_coo.hpp 91.47% <100.00%> (ø)
...se/clients/include/testing_dense_to_sparse_csc.hpp 92.25% <100.00%> (ø)
...se/clients/include/testing_dense_to_sparse_csr.hpp 92.25% <100.00%> (ø)
...jects/hipsparse/clients/include/testing_gather.hpp 83.82% <100.00%> (ø)
projects/hipsparse/clients/include/testing_rot.hpp 87.83% <100.00%> (ø)
...ts/hipsparse/clients/include/testing_sddmm_coo.hpp 92.65% <100.00%> (ø)
...ipsparse/clients/include/testing_sddmm_coo_aos.hpp 92.46% <100.00%> (ø)
...ts/hipsparse/clients/include/testing_sddmm_csc.hpp 92.65% <100.00%> (ø)
...ts/hipsparse/clients/include/testing_sddmm_csr.hpp 92.65% <100.00%> (ø)
... and 51 more

... and 602 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants