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
346 lines
12 KiB
YAML
346 lines
12 KiB
YAML
# A config to generate a fast kernel for BERT model GEMMs
|
|
# update parameters to produce best kernel(S)
|
|
# to keep number of kernel produced minimum
|
|
# 1) add new sections if certain paramters are more conducive to certain problem sizes
|
|
# 2) create separate sections for replacement kernel(s)
|
|
# 3) create separate sections for problem sizes belongs to specific model parameter sizes
|
|
GlobalParameters:
|
|
MinimumRequiredVersion: 4.14.0
|
|
PrintLevel: 1
|
|
ForceRedoBenchmarkProblems: True
|
|
ForceRedoLibraryLogic: True
|
|
ForceRedoLibraryClient: True
|
|
CMakeBuildType: Release
|
|
EnqueuesPerSync: 1
|
|
SyncsPerBenchmark: 1
|
|
LibraryPrintDebug: False
|
|
NumElementsToValidate: 1
|
|
ValidationMaxToPrint: 4
|
|
ValidationPrintValids: False
|
|
ShortNames: False
|
|
MergeFiles: True
|
|
Platform: 0
|
|
Device: 0
|
|
KernelTime: True
|
|
PinClocks: False
|
|
SleepPercent: 0
|
|
PrintSolutionRejectionReason: True
|
|
DataInitTypeA: 3
|
|
DataInitTypeB: 3
|
|
DataInitTypeBeta: 0
|
|
DataInitTypeAlpha: 1
|
|
PrintTensorA: 0
|
|
PrintTensorB: 0
|
|
PrintTensorD: 0
|
|
BenchmarkProblems:
|
|
|
|
########################################
|
|
# TN -
|
|
# max_sequenth_lenth = 128
|
|
########################################
|
|
-
|
|
- # ProblemType
|
|
OperationType: GEMM
|
|
DataType: s
|
|
TransposeA: True
|
|
TransposeB: False
|
|
UseBeta: True
|
|
Batched: True
|
|
|
|
########################################
|
|
# TN - standard 2Blocks/Inst
|
|
########################################
|
|
|
|
- # BenchmarkProblemSizeGroup - Standard
|
|
InitialSolutionParameters:
|
|
BenchmarkCommonParameters:
|
|
- KernelLanguage: ["Assembly"]
|
|
- EdgeType: ["ShiftPtr"]
|
|
- PrefetchLocalRead: [True]
|
|
- PrefetchGlobalRead: [True]
|
|
ForkParameters:
|
|
- MatrixInstruction:
|
|
- [32, 32, 1, 2]
|
|
#- [32, 32, 2, 1]
|
|
- ThreadTile:
|
|
- [ 2, 32 ]
|
|
- [ 1, 64 ]
|
|
- WorkGroup:
|
|
- [ 64, 4, 1 ]
|
|
- [ 32, 8, 1 ]
|
|
- WorkGroupMapping: [1]
|
|
#- DirectToLds: [0]
|
|
- TransposeLDS: [1]
|
|
- LdsBlockSizePerPad: [128]
|
|
- LdsPadA: [4]
|
|
- LdsPadB: [4]
|
|
- GlobalSplitU: [1]
|
|
- DepthU: [ 16 ]
|
|
- VectorWidth: [1]
|
|
- GlobalReadVectorWidth: [4]
|
|
- InnerUnroll: [1]
|
|
- ScheduleIterAlg: [1]
|
|
- OptNoLoadLoop: [0]
|
|
BenchmarkForkParameters:
|
|
JoinParameters:
|
|
BenchmarkJoinParameters:
|
|
BenchmarkFinalParameters:
|
|
- ProblemSizes:
|
|
- Exact: [ 1024,3072,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,3072,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,4096,1,4096,1056,1056,4128,4160 ]
|
|
- Exact: [ 4096,4096,1,1024,4128,4128,1088,1056 ]
|
|
- Exact: [ 1024,2048,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,3072,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 3072,3072,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 1024,2048,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 3072,2048,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 1024,512,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,512,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 512,512,1,64,544,544,128,96 ]
|
|
- Exact: [ 64,512,1,512,92,96,576,544 ]
|
|
- Exact: [ 3072,512,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 30528,4096,1,1024,30554,30554,1088,1056 ]
|
|
- Exact: [ 30528,2048,1,1024,30554,30554,1088,1056 ]
|
|
|
|
########################################
|
|
# TN - standard 1Blocks/Inst
|
|
########################################
|
|
|
|
- # BenchmarkProblemSizeGroup - Standard
|
|
InitialSolutionParameters:
|
|
BenchmarkCommonParameters:
|
|
- KernelLanguage: ["Assembly"]
|
|
- EdgeType: ["ShiftPtr"]
|
|
- PrefetchLocalRead: [True]
|
|
- PrefetchGlobalRead: [True]
|
|
ForkParameters:
|
|
- MatrixInstruction:
|
|
- [32, 32, 2, 1]
|
|
- ThreadTile:
|
|
- [ 2, 32 ]
|
|
- [ 1, 64 ]
|
|
- WorkGroup:
|
|
- [ 64, 4, 1 ]
|
|
- [ 32, 8, 1 ]
|
|
- WorkGroupMapping: [1]
|
|
#- DirectToLds: [0]
|
|
- TransposeLDS: [1]
|
|
- LdsBlockSizePerPad: [128]
|
|
- LdsPadA: [4]
|
|
- LdsPadB: [4]
|
|
- GlobalSplitU: [1]
|
|
- DepthU: [ 16 ]
|
|
- VectorWidth: [1]
|
|
- GlobalReadVectorWidth: [4]
|
|
- InnerUnroll: [1]
|
|
- ScheduleIterAlg: [1]
|
|
- OptNoLoadLoop: [0]
|
|
BenchmarkForkParameters:
|
|
JoinParameters:
|
|
BenchmarkJoinParameters:
|
|
BenchmarkFinalParameters:
|
|
- ProblemSizes:
|
|
- Exact: [ 1024,3072,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,3072,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,4096,1,4096,1056,1056,4128,4160 ]
|
|
- Exact: [ 4096,4096,1,1024,4128,4128,1088,1056 ]
|
|
- Exact: [ 1024,2048,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,3072,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 3072,3072,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 1024,2048,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 3072,2048,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 1024,512,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,512,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 512,512,1,64,544,544,128,96 ]
|
|
- Exact: [ 64,512,1,512,92,96,576,544 ]
|
|
- Exact: [ 3072,512,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 30528,4096,1,1024,30554,30554,1088,1056 ]
|
|
- Exact: [ 30528,2048,1,1024,30554,30554,1088,1056 ]
|
|
|
|
########################################
|
|
# NN -
|
|
########################################
|
|
-
|
|
- # ProblemType
|
|
OperationType: GEMM
|
|
DataType: s
|
|
TransposeA: False
|
|
TransposeB: False
|
|
UseBeta: True
|
|
Batched: True
|
|
|
|
########################################
|
|
# NN - standard 2Blocks/Inst
|
|
########################################
|
|
|
|
- # BenchmarkProblemSizeGroup - Standard
|
|
InitialSolutionParameters:
|
|
BenchmarkCommonParameters:
|
|
- KernelLanguage: ["Assembly"]
|
|
- EdgeType: ["ShiftPtr"]
|
|
- PrefetchLocalRead: [True]
|
|
- PrefetchGlobalRead: [True]
|
|
ForkParameters:
|
|
- MatrixInstruction:
|
|
- [32, 32, 1, 2]
|
|
- ThreadTile:
|
|
- [ 2, 32 ]
|
|
- [ 1, 64 ]
|
|
- WorkGroup:
|
|
- [ 64, 4, 1 ]
|
|
- [ 32, 8, 1 ]
|
|
- WorkGroupMapping: [1]
|
|
#- DirectToLds: [0]
|
|
- TransposeLDS: [0]
|
|
- GlobalSplitU: [1]
|
|
- DepthU: [ 16 ]
|
|
- VectorWidth: [1]
|
|
- GlobalReadVectorWidth: [4]
|
|
- InnerUnroll: [2]
|
|
- ScheduleIterAlg: [1]
|
|
- OptNoLoadLoop: [0]
|
|
BenchmarkForkParameters:
|
|
JoinParameters:
|
|
BenchmarkJoinParameters:
|
|
BenchmarkFinalParameters:
|
|
- ProblemSizes:
|
|
- Exact: [ 1024,3072,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,3072,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,4096,1,4096,1056,1056,4128,4160 ]
|
|
- Exact: [ 4096,4096,1,1024,4128,4128,1088,1056 ]
|
|
- Exact: [ 1024,2048,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,3072,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 3072,3072,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 1024,2048,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 3072,2048,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 1024,512,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,512,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 512,512,1,64,544,544,128,96 ]
|
|
- Exact: [ 64,512,1,512,92,96,576,544 ]
|
|
- Exact: [ 3072,512,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 30528,4096,1,1024,30554,30554,1088,1056 ]
|
|
- Exact: [ 30528,2048,1,1024,30554,30554,1088,1056 ]
|
|
|
|
########################################
|
|
# NN - standard 1Blocks/Inst
|
|
########################################
|
|
|
|
- # BenchmarkProblemSizeGroup - Standard
|
|
InitialSolutionParameters:
|
|
BenchmarkCommonParameters:
|
|
- KernelLanguage: ["Assembly"]
|
|
- EdgeType: ["ShiftPtr"]
|
|
- PrefetchLocalRead: [True]
|
|
- PrefetchGlobalRead: [True]
|
|
ForkParameters:
|
|
- MatrixInstruction:
|
|
- [32, 32, 2, 1]
|
|
- ThreadTile:
|
|
- [ 2, 32 ]
|
|
- [ 1, 64 ]
|
|
- WorkGroup:
|
|
- [ 64, 4, 1 ]
|
|
- [ 32, 8, 1 ]
|
|
- WorkGroupMapping: [1]
|
|
#- DirectToLds: [0]
|
|
- TransposeLDS: [1]
|
|
- LdsBlockSizePerPad: [128]
|
|
- LdsPadA: [4]
|
|
- LdsPadB: [4]
|
|
- GlobalSplitU: [1]
|
|
- DepthU: [ 16 ]
|
|
- VectorWidth: [1]
|
|
- GlobalReadVectorWidth: [4]
|
|
- InnerUnroll: [2]
|
|
- ScheduleIterAlg: [1]
|
|
- OptNoLoadLoop: [0]
|
|
BenchmarkForkParameters:
|
|
JoinParameters:
|
|
BenchmarkJoinParameters:
|
|
BenchmarkFinalParameters:
|
|
- ProblemSizes:
|
|
- Exact: [ 1024,3072,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,3072,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,4096,1,4096,1056,1056,4128,4160 ]
|
|
- Exact: [ 4096,4096,1,1024,4128,4128,1088,1056 ]
|
|
- Exact: [ 1024,2048,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,3072,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 3072,3072,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 1024,2048,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 3072,2048,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 1024,512,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,512,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 512,512,1,64,544,544,128,96 ]
|
|
- Exact: [ 64,512,1,512,92,96,576,544 ]
|
|
- Exact: [ 3072,512,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 30528,4096,1,1024,30554,30554,1088,1056 ]
|
|
- Exact: [ 30528,2048,1,1024,30554,30554,1088,1056 ]
|
|
|
|
########################################
|
|
# TN - standard 2Blocks/Inst
|
|
# BERT BIG model
|
|
# batch size 1, 4, 6
|
|
# seq_size : 512
|
|
########################################
|
|
|
|
- # BenchmarkProblemSizeGroup - Standard
|
|
InitialSolutionParameters:
|
|
BenchmarkCommonParameters:
|
|
- KernelLanguage: ["Assembly"]
|
|
- EdgeType: ["ShiftPtr"]
|
|
- PrefetchLocalRead: [True]
|
|
- PrefetchGlobalRead: [True]
|
|
ForkParameters:
|
|
- MatrixInstruction:
|
|
- [32, 32, 1, 2]
|
|
- [32, 32, 2, 1]
|
|
- [16, 16, 4, 1]
|
|
- [16, 16, 1, 4]
|
|
- ThreadTile:
|
|
- [ 2, 32 ]
|
|
- [ 1, 64 ]
|
|
- [ 2, 16 ]
|
|
- [ 4, 32 ]
|
|
- WorkGroup:
|
|
- [ 64, 4, 1 ]
|
|
- [ 32, 8, 1 ]
|
|
- [ 16, 16, 1 ]
|
|
- WorkGroupMapping: [1]
|
|
#- DirectToLds: [0]
|
|
- TransposeLDS: [1]
|
|
- LdsBlockSizePerPad: [128]
|
|
- LdsPadA: [4]
|
|
- LdsPadB: [4]
|
|
- GlobalSplitU: [1]
|
|
- DepthU: [ 16 ]
|
|
- VectorWidth: [1]
|
|
- GlobalReadVectorWidth: [4]
|
|
- InnerUnroll: [1]
|
|
- ScheduleIterAlg: [1]
|
|
- OptNoLoadLoop: [0]
|
|
BenchmarkForkParameters:
|
|
JoinParameters:
|
|
BenchmarkJoinParameters:
|
|
BenchmarkFinalParameters:
|
|
- ProblemSizes:
|
|
- Exact: [ 1024,2048,1,3072,1056,1056,3136,3104 ]
|
|
- Exact: [ 1024,3072,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 1024,512,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 3072,3072,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 3072,512,1,1024,3104,3104,1088,1056 ]
|
|
- Exact: [ 512,512,1,64,544,544,128,96 ]
|
|
- Exact: [ 1024,80,1,1024,1056,1056,1088,1056 ]
|
|
- Exact: [ 30522,120,1,1024,30554,30554,1088,1056 ]
|
|
- Exact: [ 30522,20,1,1024,30554,30554,1088,1056 ]
|
|
- Exact: [ 30522,80,1,1024,30554,30554,1088,1056 ]
|
|
- Exact: [ 30522,160,1,1024,30554,30554,1088,1056 ]
|
|
- Exact: [ 30522,120,1,1024,30554,30554,1088,1056 ]
|
|
- Exact: [ 1024,120,1,1024,30554,30554,1088,1056 ]
|
|
- Exact: [ 1024,20,1,1024,30554,30554,1088,1056 ]
|
|
|
|
########################################
|
|
LibraryLogic:
|
|
ScheduleName: "arcturus"
|
|
DeviceNames: ["Device 7380", "Device 7388", "Device 738c", "Device 7390"]
|