# A config to generate a fast kernel for large DGEMMs GlobalParameters: MinimumRequiredVersion: 4.0.2 PrintLevel: 1 ForceRedoBenchmarkProblems: True ForceRedoLibraryLogic: True ForceRedoLibraryClient: True CMakeBuildType: Release EnqueuesPerSync: 30 SyncsPerBenchmark: 1 LibraryPrintDebug: False NumElementsToValidate: 1000 ValidationMaxToPrint: 4 ValidationPrintValids: False ShortNames: False MergeFiles: True Platform: 0 Device: 0 KernelTime: True PinClocks: True SleepPercent: 000 DataInitTypeBeta : 1 DataInitTypeAB : 0 DataInitTypeC : 0 PrintWinnersOnly: 1 PrintSolutionRejectionReason: 1 BenchmarkProblems: ######################################## # NT - standard ######################################## - - # ProblemType OperationType: GEMM DataType: d TransposeA: False TransposeB: True UseBeta: True Batched: True - # BenchmarkProblemSizeGroup - Standard InitialSolutionParameters: BenchmarkCommonParameters: - KernelLanguage: ["Assembly"] - EdgeType: ["ShiftPtr"] ForkParameters: - PrefetchGlobalRead: [True] - PrefetchLocalRead: [True,False] - SuppressNoLoadLoop: [0] # suppress=0 puts less code in core loop - ThreadTile: - [ 6, 4 ] - [ 6, 6 ] - [ 4, 4 ] - WorkGroup: #- [ 16, 32, 1 ] - [ 32, 16, 1 ] - [ 16, 16, 1 ] - WorkGroupMapping: [8] - DepthU: [ 8 ] - VectorWidth: [2] - FractionalLoad: [1] - AssertSummationElementMultiple: [2] - AssertFree0ElementMultiple: [2] - AssertFree1ElementMultiple: [2] BenchmarkForkParameters: BenchmarkJoinParameters: BenchmarkFinalParameters: - ProblemSizes: # A few classic large matrix problems: - Range: [ [4608], [4608], [1], [4608] ] # 48x48 tiles so exactly 30 tiles/CU on 64-CU device - Range: [ [5760], [5760], [1], [5760] ] - Range: [ [7744], [7744], [1], [7744] ] ########################################