CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
502 lines
12 KiB
YAML
502 lines
12 KiB
YAML
---
|
|
include: hipblaslt_common.yaml
|
|
include: known_bugs.yaml
|
|
include: matmul_common.yaml
|
|
|
|
Definitions:
|
|
- &alpha_beta_range
|
|
- { alpha: 5, beta: 0 }
|
|
- { alpha: 0, beta: 3 }
|
|
- { alpha: 1, beta: 3 }
|
|
- { alpha: 1, beta: 1 }
|
|
|
|
- &alpha_beta_range_small
|
|
- { alpha: 2, alphai: 2, beta: -1.0, betai: 2.0 }
|
|
|
|
- &transA_transB_range
|
|
- { transA: N, transB: N }
|
|
- { transA: N, transB: T }
|
|
- { transA: T, transB: N }
|
|
- { transA: T, transB: T }
|
|
|
|
Tests:
|
|
- name: matmul_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions
|
|
matrix_size: *smoke_matrix_size_range
|
|
transA_transB: *transA_transB_range
|
|
alpha_beta: *alpha_beta_range
|
|
|
|
- name: matmul_bias_relu_SAV_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions
|
|
matrix_size: *smoke_matrix_size_range
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleAlpha_vector: [0, 1]
|
|
activation_type: relu
|
|
bias_vector: [0, 1]
|
|
unit_check: 1
|
|
|
|
- name: matmul_bias_sigmoid_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions
|
|
matrix_size: *smoke_matrix_size_range
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
activation_type: sigmoid
|
|
bias_vector: [0, 1]
|
|
unit_check: 1
|
|
|
|
- name: matmul_bias_gelu_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions
|
|
matrix_size: *smoke_matrix_size_range
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
activation_type: gelu
|
|
bias_vector: [0, 1]
|
|
unit_check: 0
|
|
norm_check: 1
|
|
|
|
- name: matmul_bias_only_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions
|
|
matrix_size: *smoke_matrix_size_range
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
bias_vector: 1
|
|
unit_check: 1
|
|
|
|
- name: matmul_bias_type_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_2b
|
|
matrix_size: *smoke_matrix_size_range
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
bias_vector: 1
|
|
bias_type: [default, f32_r]
|
|
unit_check: 1
|
|
|
|
- name: matmul_f8_bf8_fnuz_dst_fp16_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_fnuz_dst_f16
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [ 0, 1]
|
|
scaleB: [ 0, 1]
|
|
bias_vector: [0, 1]
|
|
bias_type: f16_r
|
|
unit_check: 1
|
|
gpu_arch: '942'
|
|
|
|
- name: matmul_f8_bf8_fnuz_dst_bf16_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_fnuz_dst_bf16
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [ 0, 1]
|
|
scaleB: [ 0, 1]
|
|
bias_vector: [0, 1]
|
|
bias_type: bf16_r
|
|
unit_check: 1
|
|
gpu_arch: '942'
|
|
|
|
### GFX12 FP8
|
|
- name: matmul_f8_bf8_dst_fp32_gfx12_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_dst_f32
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [ 0, 1]
|
|
scaleB: [ 0, 1]
|
|
bias_vector: [0, 1]
|
|
bias_type: bf16_r
|
|
unit_check: 0
|
|
norm_check: 1
|
|
gpu_arch: '12(0[0-1]|50)'
|
|
|
|
- name: matmul_f8_bf8_dst_fp16_gfx12_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_dst_f16
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [ 0, 1]
|
|
scaleB: [ 0, 1]
|
|
bias_vector: [0, 1]
|
|
bias_type: f16_r
|
|
unit_check: 1
|
|
gpu_arch: '(120[0-1]|1250)'
|
|
|
|
- name: matmul_f8_bf8_dst_bf16_gfx12_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_dst_bf16
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [ 0, 1]
|
|
scaleB: [ 0, 1]
|
|
bias_vector: [0, 1]
|
|
bias_type: bf16_r
|
|
unit_check: 1
|
|
gpu_arch: '(120[0-1]|1250)'
|
|
|
|
- name: matmul_real_1b_dst_f8_SCDInt1_gfx12_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_dst_f8
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [0, 1]
|
|
scaleB: [0, 1]
|
|
scaleC: [0] # will use default value '1'
|
|
scaleD: [0] # will use default value '1'
|
|
bias_vector: [0, 1]
|
|
bias_type: f16_r
|
|
unit_check: 1
|
|
gpu_arch: '(120[0-1]|1250)'
|
|
|
|
- name: matmul_real_1b_dst_f8_SCDNotInt_gfx12_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_dst_f8
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [0, 1]
|
|
scaleB: [0, 1]
|
|
scaleC: [1] # will use random value from 0.0 to 1.0
|
|
scaleD: [1] # will use random value from 0.0 to 1.0
|
|
bias_vector: [0, 1]
|
|
bias_type: f16_r
|
|
unit_check: 1
|
|
gpu_arch: '(120[0-1]|1250)'
|
|
|
|
- name: matmul_one_integer_precisions_i8_gfx12_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *integer_precisions_i8
|
|
matrix_size: *one_matrix_size_range
|
|
transA_transB: *transA_transB_range
|
|
alpha: [ 0.0, 1.0 ]
|
|
beta: [ 0.0, 2.0 ]
|
|
gpu_arch: '12(0[0-1]|50)'
|
|
|
|
- name: matmul_real_1b_fnuz_dst_f8_fnuz_SCDInt1_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_fnuz_dst_f8_fnuz
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [0, 1]
|
|
scaleB: [0, 1]
|
|
scaleC: [0] # will use default value '1'
|
|
scaleD: [0] # will use default value '1'
|
|
bias_vector: [0, 1]
|
|
bias_type: f16_r
|
|
unit_check: 1
|
|
gpu_arch: '942'
|
|
|
|
- name: matmul_real_1b_fnuz_dst_1b_fnuz_smallsize_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_fnuz_dst_1b_fnuz
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [0, 1]
|
|
scaleB: [0, 1]
|
|
scaleC: [0]
|
|
scaleD: [0]
|
|
bias_vector: [0, 1]
|
|
bias_type: f32_r
|
|
unit_check: 1
|
|
gpu_arch: '942'
|
|
|
|
#TODO: extend to all f8 transpose and datatype if necessary
|
|
- name: matmul_real_f8_fnuz_dst_fp32_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *f8_fnuz_precision_dst_fp32
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [0, 1]
|
|
scaleB: [0, 1]
|
|
scaleC: [0]
|
|
scaleD: [0]
|
|
bias_vector: [0, 1]
|
|
bias_type: f32_r
|
|
unit_check: 1
|
|
gpu_arch: '942'
|
|
|
|
- name: matmul_real_1b_fnuz_dst_f8_fnuz_SCDNotInt_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_fnuz_dst_f8_fnuz
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [0, 1]
|
|
scaleB: [0, 1]
|
|
scaleC: [1] # will use random value from 0.0 to 1.0
|
|
scaleD: [1] # will use random value from 0.0 to 1.0
|
|
bias_vector: [0, 1]
|
|
bias_type: f16_r
|
|
unit_check: 0
|
|
norm_check: 1
|
|
gpu_arch: '942'
|
|
|
|
- name: matmul_real_1b_fnuz_dst_bf8_fnuz_SCDInt1_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_fnuz_dst_bf8_fnuz
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [0, 1]
|
|
scaleB: [0, 1]
|
|
scaleC: [0] # will use default value '1'
|
|
scaleD: [0] # will use default value '1'
|
|
bias_vector: [0,1]
|
|
bias_type: f16_r
|
|
unit_check: 1
|
|
gpu_arch: '942'
|
|
|
|
- name: matmul_real_1b_fnuz_dst_bf8_fnuz_SCDNotInt_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *real_precisions_1b_fnuz_dst_bf8_fnuz
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
scaleA: [0, 1]
|
|
scaleB: [0, 1]
|
|
scaleC: [1] # will use random value from 0.0 to 1.0
|
|
scaleD: [1] # will use random value from 0.0 to 1.0
|
|
bias_vector: [0, 1]
|
|
bias_type: f16_r
|
|
unit_check: 0
|
|
norm_check: 1
|
|
gpu_arch: '942'
|
|
|
|
- name: matmul_gemm_xf32_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *xf32_precision
|
|
matrix_size: *smoke_matrix_size_range
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
unit_check: 1
|
|
gpu_arch: '(942|1250)'
|
|
|
|
- name: matmul_gemm_double_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *double_precision
|
|
matrix_size: *smoke_matrix_size_range
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
unit_check: 1
|
|
gpu_arch: '9(0a|4[0-2])'
|
|
|
|
- name: matmul_gemm_i8_dst_i32_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *i8_precision_dst_i32
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0, 2 ]
|
|
unit_check: 1
|
|
gpu_arch: '90a'
|
|
|
|
- name: matmul_gemm_i8_dst_i32_94x_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *i8_precision_dst_i32
|
|
matrix_size: *smoke_matrix_size_range
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0, 2 ]
|
|
scaleAlpha_vector: [0, 1]
|
|
activation_type: [relu, sigmoid]
|
|
unit_check: 1
|
|
gpu_arch: '942'
|
|
|
|
- name: matmul_gemm_i8_dst_i8_1xxx_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *i8_precision_dst_i8
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0, 2 ]
|
|
scaleAlpha_vector: [0, 1]
|
|
activation_type: [relu, sigmoid]
|
|
unit_check: 1
|
|
gpu_arch: '1[1-2]\d{2}'
|
|
|
|
- name: matmul_gemm_i8_dst_i32_1xxx_smoke
|
|
category: smoke
|
|
function:
|
|
matmul: *i8_precision_dst_i32
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 128 }
|
|
transA_transB: *transA_transB_range
|
|
alpha: 1
|
|
beta: [ 0, 2 ]
|
|
scaleAlpha_vector: [0, 1]
|
|
activation_type: [relu, sigmoid]
|
|
unit_check: 1
|
|
gpu_arch: '1[1-2]\d{2}'
|
|
|
|
- name: matmul_gemm_tn_mxf4_dst_bf16_1250_smoke
|
|
category: smoke
|
|
function:
|
|
matmul:
|
|
- { a_type: f4_r, b_type: f4_r, c_type: bf16_r, d_type: bf16_r, compute_type: c_f32_r, scaleA: 3, scaleB: 3, scale_type: f32_r}
|
|
- { a_type: f4_r, b_type: f4_r, c_type: bf16_r, d_type: bf16_r, compute_type: c_f32_r, scaleA: 6, scaleB: 6, scale_type: f32_r}
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 512 }
|
|
- { M: 128, N: 128, K: 544 }
|
|
- { M: 130, N: 128, K: 512 }
|
|
- { M: 128, N: 130, K: 512 }
|
|
transA: T
|
|
transB: N
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
initialization: uniform_low_precision
|
|
unit_check: 0
|
|
norm_check: 1
|
|
gpu_arch: '1250'
|
|
|
|
- name: matmul_gemm_tn_mxf4_dst_s_1250_smoke
|
|
category: smoke
|
|
function:
|
|
matmul:
|
|
- { a_type: f4_r, b_type: f4_r, c_type: f32_r, d_type: f32_r, compute_type: c_f32_r, scaleA: 3, scaleB: 3, scale_type: f32_r}
|
|
- { a_type: f4_r, b_type: f4_r, c_type: f32_r, d_type: f32_r, compute_type: c_f32_r, scaleA: 6, scaleB: 6, scale_type: f32_r}
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 512 }
|
|
- { M: 128, N: 128, K: 544 }
|
|
- { M: 130, N: 128, K: 512 }
|
|
- { M: 128, N: 130, K: 512 }
|
|
transA: T
|
|
transB: N
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
initialization: uniform_low_precision
|
|
unit_check: 0
|
|
norm_check: 1
|
|
gpu_arch: '1250'
|
|
|
|
- name: matmul_gemm_tn_mxf8f4_dst_s_1250_bias_smoke
|
|
category: smoke
|
|
function:
|
|
matmul:
|
|
- { a_type: f8_r, b_type: f4_r, c_type: f32_r, d_type: f32_r, compute_type: c_f32_r, compute_input_typeA: f8_r, compute_input_typeB: f4_r, scaleA: 3, scaleB: 3, scale_type: f32_r }
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 512 }
|
|
- { M: 128, N: 128, K: 544 }
|
|
- { M: 130, N: 128, K: 512 }
|
|
- { M: 128, N: 130, K: 512 }
|
|
transA: T
|
|
transB: N
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
bias_vector: [ 0, 1 ]
|
|
bias_type: f32_r
|
|
unit_check: 1
|
|
gpu_arch: '1250'
|
|
|
|
- name: matmul_gemm_tn_mxf8_dst_bf16_1250_smoke
|
|
category: smoke
|
|
function:
|
|
matmul:
|
|
- { a_type: f8_r, b_type: f8_r, c_type: bf16_r, d_type: bf16_r, compute_type: c_f32_r, scaleA: 3, scaleB: 3, scale_type: f32_r}
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 512 }
|
|
- { M: 128, N: 128, K: 544 }
|
|
- { M: 129, N: 128, K: 512 }
|
|
- { M: 128, N: 129, K: 512 }
|
|
|
|
transA: T
|
|
transB: N
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
batch_count: [1, 16]
|
|
unit_check: 0
|
|
norm_check: 1
|
|
gpu_arch: '1250'
|
|
|
|
- name: matmul_gemm_tn_mxf8_dst_s_1250_smoke
|
|
category: smoke
|
|
function:
|
|
matmul:
|
|
- { a_type: f8_r, b_type: f8_r, c_type: f32_r, d_type: f32_r, compute_type: c_f32_r, scaleA: 3, scaleB: 3, scale_type: f32_r}
|
|
matrix_size:
|
|
- { M: 128, N: 128, K: 512 }
|
|
- { M: 128, N: 128, K: 544 }
|
|
- { M: 129, N: 128, K: 512 }
|
|
- { M: 128, N: 129, K: 512 }
|
|
transA: T
|
|
transB: N
|
|
alpha: 1
|
|
beta: [ 0.0, 2.0 ]
|
|
unit_check: 1
|
|
gpu_arch: '1250'
|
|
...
|