Skip to content

[hipblaslt] added problem sizes for PTS#2560

Merged
solaslin merged 4 commits intodevelopfrom
users/solaslin/adding-pts-problems
Dec 12, 2025
Merged

[hipblaslt] added problem sizes for PTS#2560
solaslin merged 4 commits intodevelopfrom
users/solaslin/adding-pts-problems

Conversation

@solaslin
Copy link
Contributor

@solaslin solaslin commented Nov 10, 2025

Motivation

Open this PR for team members to add their own focused test sizes. (PTS)

Technical Details

Test Plan

Test Result

Submission Checklist

@solaslin solaslin self-assigned this Nov 10, 2025
@solaslin solaslin added the NoCI Don't run CI label Nov 10, 2025
@solaslin solaslin force-pushed the users/solaslin/adding-pts-problems branch 3 times, most recently from 9843dbd to 7d13175 Compare November 25, 2025 14:52
Copy link
Contributor Author

@solaslin solaslin left a comment

Choose a reason for hiding this comment

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

Put some requested changes and checking:

  1. make sure all four sets have rotating: 512
  2. Confirm api_method
  3. be aware of the naming, better not to show any client's information.
  4. Put your new suite in all() in the correct position

You can test locally:
under ./hipblaslt/, type cmd:
./clients/scripts/performance/hipblaslt-perf --suite matmul_set_3 --samples 1
to see if you can see an output csv.

@jimbochi

@solaslin solaslin force-pushed the users/solaslin/adding-pts-problems branch 2 times, most recently from 083cdd6 to a59cfb4 Compare November 27, 2025 14:12
@CurtisFu1002
Copy link
Contributor

I just randomly pick one problem in RVS (https://github.com/ROCm/ROCmValidationSuite/blob/master/rvs/conf/gfx1200/gst_single.conf#L80-L82) for Navi4, do we already have problems for RVS? Maybe I just didn't find it...

@solaslin solaslin force-pushed the users/solaslin/adding-pts-problems branch from a59cfb4 to a958faa Compare December 2, 2025 03:44
@solaslin solaslin marked this pull request as ready for review December 3, 2025 03:14
@solaslin solaslin requested a review from a team as a code owner December 3, 2025 03:14
@solaslin solaslin force-pushed the users/solaslin/adding-pts-problems branch 2 times, most recently from a99c0ed to 62f0e94 Compare December 3, 2025 09:19
@solaslin solaslin removed the NoCI Don't run CI label Dec 10, 2025
solaslin and others added 4 commits December 12, 2025 11:42
testcases are from Math\perf_hipBLAS and Math\hipBLAS
- add rotating: 512 for each block in probset3
- update suites.py to align with corrected problem sizes
1.Select 100 representative test cases from the mad-internal tests and add them to pts
2.Collate the tests in RVS and AGFHC and add them to pts
@solaslin solaslin force-pushed the users/solaslin/adding-pts-problems branch from 502b2c7 to 4e21273 Compare December 12, 2025 03:42
@math-ci
Copy link

math-ci bot commented Dec 12, 2025

perfci run on commit 8617098

math-ci run

@solaslin solaslin merged commit 29176bd into develop Dec 12, 2025
72 of 74 checks passed
@solaslin solaslin deleted the users/solaslin/adding-pts-problems branch December 12, 2025 13:08
assistant-librarian bot pushed a commit to ROCm/hipBLASLt that referenced this pull request Dec 12, 2025
[hipblaslt] added problem sizes for PTS

## Motivation

<!-- Explain the purpose of this PR and the goals it aims to achieve.
-->
Open this PR for team members to add their own focused test sizes. (PTS)

## Technical Details

<!-- Explain the changes along with any relevant GitHub links. -->

## Test Plan

<!-- Explain any relevant testing done to verify this PR. -->

## Test Result

<!-- Briefly summarize test outcomes. -->

## Submission Checklist

- [x] Look over the contributing guidelines at
https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.
Comment on lines +1 to +13
---
include: ../../../tests/data/hipblaslt_common.yaml
include: ../../../tests/data/matmul_common.yaml

Definitions:

test precision: &hpc_gemm_shapes
- *single_precision
- *hpa_bf16_precision
- *hpa_half_precision
- *f8_fnuz_precision_dst_f8_fnuz
- *f8_fnuz_precision_dst_fp16

Copy link
Contributor Author

@solaslin solaslin Dec 14, 2025

Choose a reason for hiding this comment

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

Message for Mahmood, Wasiq:

include: ../../../tests/data/hipblaslt_common.yaml
include: ../../../tests/data/matmul_common.yaml

The two includes already define almost all commonly used datatypes, transA,B...etc. definitions which are also used for gtest. So adding the two line can avoid copying-pasting.

But you still can add your own definition (usually is a customized lists) such as:

Definitions:

test precision: &hpc_gemm_shapes

  • *single_precision
  • *hpa_bf16_precision
  • *hpa_half_precision
  • *f8_fnuz_precision_dst_f8_fnuz
  • *f8_fnuz_precision_dst_fp16

the definition from line#8 to line#12 can be found in the two included yamls, however, you can still make a new group for your own test cases.

The rest of the content simply look like any one in matmul_gtest.yaml
Be sure to add rotating: 512 which makes the perf more accurate.

Comment on lines +113 to +130
def matmul_set_4():
"""gemm benchset 4"""

problemlist = [Problem(args={"--log_function_name" : "" , "--yaml" : "matmul_probset4_bench.yaml"})]
yield ProblemSet(benchType="matmul", name="benchset_4", problems=problemlist)

def matmul_set_5():
"""gemm benchset 5"""

problemlist = [Problem(args={"--log_function_name" : "" , "--yaml" : "matmul_probset5_bench.yaml"})]
yield ProblemSet(benchType="matmul", name="benchset_5", problems=problemlist)

def matmul_set_6():
"""gemm benchset 6"""

problemlist = [Problem(args={"--log_function_name" : "" , "--yaml" : "matmul_probset6_bench.yaml"})]
yield ProblemSet(benchType="matmul", name="benchset_6", problems=problemlist)

Copy link
Contributor Author

@solaslin solaslin Dec 14, 2025

Choose a reason for hiding this comment

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

Message for Mahmood, Wasiq:

When you added a new bench.yaml, be sure to make it "a suite", you can just follow the coding convention.
A basic suite = a problem set , but a suite can also yield "multiple suites" just like putting building blocks together.

Comment on lines -124 to +176
if "942" in target_arch:
if "gfx942" in target_arch:
# Put focused tests set for gfx942
yield from matmul_set_1() # this problemset is an initial test example for gfx942
yield from matmul_set_2()
# Can put any other interested set for gfx942
elif "950" in target_arch:
yield from matmul_set_3()
yield from matmul_set_4()
yield from matmul_set_5()
yield from matmul_set_6()
elif "gfx950" in target_arch:
# Put focused tests set for gfx950
yield from matmul_set_2()
# Can put any other interested set for gfx950
elif "gfx90a" in target_arch:
# FIXME- please replace the examples with the real interested problems for gfx90a
yield from matmul_set_3()
yield from matmul_set_4()
yield from matmul_set_5()
elif "gfx110" in target_arch:
# FIXME- please replace the examples with the real interested problems for gfx110?
yield from matmul_set_3()
elif "gfx120" in target_arch:
# FIXME- please replace the examples with the real interested problems for gfx120?
yield from matmul_set_3()

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Message for Mahmood, Wasiq:

For Jenkins PTS, full perf ci job must use --suite all , you can see this all() suite yield multiple basic suites, according to which the architecture running the CI job. (This is done by rocJenkins, you don't have to do it)

In summary, if you have a new problem-set need to be traced in PTS:

  1. Prepare the yaml file
  2. Add a in suite.py which yields the ProblemSet from the yaml
  3. According to your testing gfxXXX, put in suite all(), for the correct architecture.
  4. In your local test, of course you can only do "--suite " to see if you can run the bench and output a csv file.

ammallya pushed a commit that referenced this pull request Feb 3, 2026
…2560)

cherry-pick c68687e30 and apply CK_GFX950_SUPPORT macro on ck tile GEMM unit tests

Co-authored-by: AviralGoelAMD <aviral.goel@amd.com>
Co-authored-by: Illia Silin <98187287+illsilin@users.noreply.github.com>

[ROCm/composable_kernel commit: 2addf05]
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.

5 participants