Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
include: ../../../tests/data/hipblaslt_common.yaml
include: ../../../tests/data/matmul_common.yaml

Tests:
- name: matmul_example
function:
matmul: *real_precisions
M: 128
N: 128
K: 128
alpha_beta: *alpha_beta_range
transA_transB: *transA_transB_range
iters: 1000
cold_iters: 1000
rotating: 512
...
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
---
include: ../../../tests/data/hipblaslt_common.yaml
include: ../../../tests/data/matmul_common.yaml

Definitions:
Tests:
- name: hpa_half_precision_rcmt_mphb_nn
function:
matmul: *hpa_half_precision
matrix_size:
- { M: 8192, N: 320, K: 320 }
- { M: 2048, N: 640, K: 640 }
- { M: 512, N: 1280, K: 1280 }
- { M: 8192, N: 320 , K: 320 }
- { M: 512, N: 10240, K: 1280 }
- { M: 2048, N: 5120, K: 640 }
- { M: 8192, N: 2560, K: 320 }
- { M: 512, N: 1280, K: 5120 }
- { M: 2048, N: 640, K: 2560 }
- { M: 154, N: 320, K: 768 }
- { M: 154, N: 1280, K: 768 }
initialization: trig_float
transA: N
transB: N
iters: 1000
cold_iters: 1000
rotating: 512

- name: hpa_half_precision_rcmt_mphb_b_nn
function:
matmul: *hpa_half_precision
matrix_size:
- { M: 4096, N: 40, K: 4096 }
- { M: 1024, N: 80, K: 1024 }
- { M: 1024, N: 88, K: 77 }
initialization: trig_float
transA: N
transB: N
batch_count: 16
iters: 1000
cold_iters: 1000
rotating: 512

- name: hpa_half_precision_rcmt_mphb_b_nt
function:
matmul: *hpa_half_precision
matrix_size:
- { M: 4096, N: 4096, K: 40 }
- { M: 1024, N: 1024, K: 80 }
- { M: 4096, N: 77, K: 40 }
- { M: 256, N: 77, K: 160 }
- { M: 1024, N: 77, K: 160 }
initialization: trig_float
transA: N
transB: T
batch_count: 16
iters: 1000
cold_iters: 1000
rotating: 512

- name: hpa_half_precision_rcmt_mhb_tn
function:
matmul: *hpa_half_precision
matrix_size:
- { M: 10240, N: 16 , K: 64640 }
initialization: trig_float
transA: T
transB: N
splitk: 1
iters: 1000
cold_iters: 4000
rotating: 512
api_method: 2
...
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
---
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

Comment on lines +1 to +13
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.

Tests:
- name: hpa_half_precision_mad_summary
function:
matmul: *hpc_gemm_shapes
matrix_size:
- { M: 1, N: 10240, K: 8192 }
- { M: 1, N: 12288, K: 4096 }
- { M: 1, N: 12288, K: 12288 }
- { M: 1, N: 15360, K: 5120 }
- { M: 1, N: 16384, K: 2048 }
- { M: 1, N: 18432, K: 6144 }
- { M: 1, N: 20480, K: 5120 }
- { M: 1, N: 24576, K: 5120 }
- { M: 1, N: 25600, K: 6400 }
- { M: 1, N: 3072, K: 2048 }
- { M: 1, N: 3584, K: 3584 }
- { M: 1, N: 4096, K: 4096 }
- { M: 1, N: 4096, K: 11008 }
- { M: 1, N: 4096, K: 22016 }
- { M: 1, N: 4608, K: 3584 }
- { M: 1, N: 5120, K: 1536 }
- { M: 1, N: 5120, K: 12288 }
- { M: 1, N: 57344, K: 8192 }
- { M: 1, N: 6144, K: 4096 }
- { M: 1, N: 8192, K: 8192 }
- { M: 2, N: 3072, K: 5120 }
- { M: 2, N: 5120, K: 12288 }
- { M: 4, N: 12288, K: 4096 }
- { M: 4, N: 4096, K: 4096 }
- { M: 4, N: 5120, K: 12288 }
- { M: 4, N: 6144, K: 4096 }
- { M: 4, N: 2560, K: 10240 }
- { M: 4, N: 44032, K: 4096 }
- { M: 4, N: 5120, K: 1536 }
- { M: 8, N: 10240, K: 8192 }
- { M: 8, N: 11008, K: 4096 }
- { M: 8, N: 12288, K: 4096 }
- { M: 8, N: 15360, K: 5120 }
- { M: 8, N: 16384, K: 2048 }
- { M: 8, N: 18432, K: 6144 }
- { M: 8, N: 19200, K: 6400 }
- { M: 8, N: 20480, K: 2560 }
- { M: 8, N: 24576, K: 5120 }
- { M: 8, N: 2560, K: 2560 }
- { M: 8, N: 28672, K: 4096 }
- { M: 8, N: 3072, K: 3072 }
- { M: 8, N: 3584, K: 3584 }
- { M: 8, N: 3840, K: 2560 }
- { M: 8, N: 4096, K: 13696 }
- { M: 8, N: 4608, K: 4608 }
- { M: 8, N: 5120, K: 5120 }
- { M: 8, N: 5760, K: 5120 }
- { M: 8, N: 6144, K: 4096 }
- { M: 8, N: 7680, K: 5120 }
- { M: 8, N: 8192, K: 24576 }
- { M: 16, N: 5120, K: 1536 }
- { M: 32, N: 10240, K: 8192 }
- { M: 32, N: 11008, K: 4096 }
- { M: 32, N: 12288, K: 4096 }
- { M: 32, N: 128256,K: 4096 }
- { M: 32, N: 13696, K: 4096 }
- { M: 32, N: 15360, K: 5120 }
- { M: 32, N: 16384, K: 4096 }
- { M: 32, N: 18432, K: 6144 }
- { M: 32, N: 20480, K: 5120 }
- { M: 32, N: 24576, K: 6144 }
- { M: 32, N: 2560, K: 10240 }
- { M: 32, N: 28672, K: 4096 }
- { M: 32, N: 3072, K: 3072 }
- { M: 32, N: 4096, K: 14336 }
- { M: 32, N: 44032, K: 4096 }
- { M: 32, N: 49152, K: 4096 }
- { M: 32, N: 5120, K: 1536 }
- { M: 32, N: 5760, K: 5120 }
- { M: 32, N: 6144, K: 4096 }
- { M: 32, N: 7168, K: 5120 }
- { M: 32, N: 7680, K: 5120 }
- { M: 32, N: 8192, K: 24576 }
- { M: 48, N: 10240, K: 10240 }
- { M: 64, N: 5120, K: 1536 }
- { M: 76, N: 32768, K: 4096 }
- { M: 77, N: 12288, K: 4096 }
- { M: 96, N: 35840, K: 6656 }
- { M: 96, N: 6656, K: 6656 }
- { M: 128, N: 5120, K: 12288 }
- { M: 128, N: 8192, K: 6144 }
- { M: 154, N: 2304, K: 768 }
- { M: 154, N: 3072, K: 1024 }
- { M: 197, N: 2304, K: 768 }
- { M: 256, N: 3072, K: 5120 }
- { M: 308, N: 2304, K: 768 }
- { M: 384, N: 2304, K: 768 }
- { M: 512, N: 3072, K: 5120 }
- { M: 1024, N: 1024, K: 4608 }
- { M: 1024, N: 16384, K: 4096 }
- { M: 1024, N: 20480, K: 5120 }
- { M: 1024, N: 2560, K: 10240 }
- { M: 1024, N: 3072, K: 2048 }
- { M: 1024, N: 4096, K: 1024 }
- { M: 1024, N: 5120, K: 13696 }
- { M: 1024, N: 768, K: 768 }
- { M: 1232, N: 2304, K: 768 }
- { M: 1536, N: 3072, K: 1024 }
- { M: 2048, N: 2048, K: 8192 }
- { M: 2048, N: 21504, K: 7168 }
- { M: 2048, N: 27648, K: 5120 }
- { M: 2048, N: 3072, K: 8192 }
- { M: 2048, N: 5120, K: 13824 }
- { M: 2048, N: 768, K: 768 }
- { M: 2464, N: 2304, K: 768 }
- { M: 3072, N: 2560, K: 2560 }
- { M: 3072, N: 49152, K: 12288 }
- { M: 4096, N: 1024, K: 4096 }
- { M: 4096, N: 16384, K: 2048 }
- { M: 4096, N: 2560, K: 10240 }
- { M: 4096, N: 3072, K: 1024 }
- { M: 4096, N: 5120, K: 5120 }
- { M: 4096, N: 768, K: 768 }
- { M: 8192, N: 20480, K: 2560 }
- { M: 8192, N: 3072, K: 1024 }
- { M: 8192, N: 4096, K: 1024 }
- { M: 8192, N: 768, K: 768 }
- { M: 10240, N: 5120, K: 5120 }
- { M: 12288, N: 1024, K: 4096 }
- { M: 14336, N: 16384, K: 6144 }
- { M: 16384, N: 1024, K: 4096 }
- { M: 16384, N: 16384, K: 4096 }
- { M: 16384, N: 2560, K: 2560 }
- { M: 16384, N: 3072, K: 1024 }
- { M: 16384, N: 4096, K: 13696 }
- { M: 16384, N: 768, K: 768 }
- { M: 20480, N: 128, K: 1 }
- { M: 25216, N: 2304, K: 768 }
- { M: 32768, N: 2048, K: 2048 }
- { M: 32768, N: 4544, K: 4544 }
- { M: 32768, N: 768, K: 768 }
- { M: 49152, N: 10240, K: 10240 }
- { M: 57344, N: 10240, K: 8192 }
- { M: 65536, N: 3840, K: 1280 }
- { M: 65536, N: 768, K: 768 }
- { M: 73728, N: 2304, K: 768 }
- { M: 77824, N: 6656, K: 6656 }
- { M: 802816, N: 16, K: 32 }
- { M: 8000000, N: 16, K: 32 }
- { M: 10000000, N: 1, K: 2 }
initialization: trig_float
transA: N
transB: N
iters: 1000
cold_iters: 1000
rotating: 512
...
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
include: ../../../tests/data/hipblaslt_common.yaml
include: ../../../tests/data/matmul_common.yaml

Definitions:
Tests:
- name: test_rvs
function:
matmul: *hpa_half_precision
matrix_size:
- { M: 1024, N: 1024, K: 1024 }
- { M: 2048, N: 2048, K: 2048 }
- { M: 3072, N: 3072, K: 3072 }
- { M: 4096, N: 8192, K: 4096 }
- { M: 4864, N: 8192, K: 4096 }
- { M: 8096, N: 8096, K: 8096 }
- { M: 8192, N: 8192, K: 8192 }
- { M: 8192, N: 16384, K: 8192 }
- { M: 8640, N: 8640, K: 8640 }
- { M: 16182, N: 16182, K: 16182 }
- { M: 28000, N: 28000, K: 28000 }
initialization: trig_float
transA: N
transB: N
iters: 1000
cold_iters: 1000
rotating: 512

- name: test_rvs_batched
function:
matmul: *hpa_half_precision
matrix_size:
- { M: 8640, N: 8640, K: 8640 }
initialization: trig_float
transA: N
transB: N
batch_count: 96
iters: 1000
cold_iters: 1000
rotating: 512
...
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
---
include: ../../../tests/data/hipblaslt_common.yaml
include: ../../../tests/data/matmul_common.yaml

Definitions:
Tests:
- name: real_precisions_agfhc
function:
matmul: *hpa_half_precision
matrix_size:
- { M: 4096, N: 8192, K: 4096 }
- { M: 8192, N: 8192, K: 8192 }
- { M: 8192, N: 8192, K: 8960 }
- { M: 8192, N: 4096, K: 12288 }
- { M: 8192, N: 16384, K: 8192 }
- { M: 8640, N: 8640, K: 8640 }
- { M: 28000, N: 28000, K: 28000 }
initialization: trig_float
transA: N
transB: N
iters: 1000
cold_iters: 1000
rotating: 512

- name: real_precisions_agfhc_batched
function:
matmul: *hpa_half_precision
matrix_size:
- { M: 8640, N: 8640, K: 8640 }
initialization: trig_float
transA: N
transB: N
batch_count: 96
iters: 1000
cold_iters: 1000
rotating: 512

- name: f8_fnuz_precision_dst_f8_fnuz_agfhc
function:
matmul: *f8_fnuz_precision_dst_f8_fnuz
matrix_size:
- { M: 8192, N: 8192, K: 8192 }
- { M: 8192, N: 16384,K: 8192 }
initialization: trig_float
transA: N
transB: N
iters: 1000
cold_iters: 1000
rotating: 512

- name: i8_precision_dst_i8_agfhc
function:
matmul: *i8_precision_dst_i8
matrix_size:
- { M: 8192, N: 17792,K: 13312 }
initialization: trig_float
transA: N
transB: N
iters: 1000
cold_iters: 1000
rotating: 512

- name: mxf6_mxf6_precision_dst_fp32_agfhc
function:
matmul: *mxf6_mxf6_precision_dst_fp32
matrix_size:
- { M: 2048, N: 2048,K: 2048 }
initialization: trig_float
transA: N
transB: N
iters: 1000
cold_iters: 1000
rotating: 512

- name: mxf4_mxf4_precision_dst_fp32_agfhc
function:
matmul: *mxf4_mxf4_precision_dst_fp32
matrix_size:
- { M: 2048, N: 2048,K: 2048 }
initialization: trig_float
transA: N
transB: N
iters: 1000
cold_iters: 1000
rotating: 512
...
Loading