{
    "templates": {
        "GemmFp4LowLatency": {
            "dtypeA": "e2m1",
            "dtypeC": "e2m1",
            "mmaM": 128,
            "mmaN": 8,
            "mmaK": 64,
            "tileM": 128,
            "tileN": 8,
            "tileK": 512,
            "epilogueTileM": 128,
            "epilogueTileN": 8,
            "numStages": 4,
            "numMmaStages": 1,
            "numSlicesForSplitK": 1,
            "useTwoTmaLoadWarps": true,
            "clusterDimX": 1,
            "clusterDimY": 1,
            "clusterDimZ": 1,
            "sliceK": false,
            "transposeMmaOutput": true,
            "useShuffledMatrixA": true,
            "useDeepSeekFp8": false,
            "useTmaStore": true,
            "useCustomMmaSchedule": true,
            "sfLayoutB": "8x4",
            "sfLayoutC": "8x4",
            "gridTriggerSecondaryB": true,
            "gridWaitForPrimaryA": false,
            "gridWaitForPrimaryB": true,
            "usePdl": true
        },
        "GemmFp4Throughput": {
            "dtypeA": "e2m1",
            "dtypeC": "e2m1",
            "mmaM": 128,
            "mmaN": 128,
            "mmaK": 64,
            "tileM": 128,
            "tileN": 128,
            "tileK": 256,
            "epilogueTileM": 128,
            "epilogueTileN": 128,
            "numStages": 3,
            "numMmaStages": 1,
            "numSlicesForSplitK": 1,
            "useTwoTmaLoadWarps": true,
            "clusterDimX": 1,
            "clusterDimY": 1,
            "clusterDimZ": 1,
            "sliceK": false,
            "transposeMmaOutput": false,
            "useShuffledMatrixA": false,
            "useDeepSeekFp8": false,
            "useTmaStore": true,
            "useCustomMmaSchedule": true,
            "sfLayoutB": "128x4",
            "sfLayoutC": "128x4",
            "gridTriggerSecondaryA": true,
            "gridTriggerSecondaryB": false,
            "gridWaitForPrimaryA": true,
            "gridWaitForPrimaryB": false,
            "usePdl": true
        },
        "GemmFp8DeepSeekLowLatency": {
            "dtypeA": "e4m3",
            "dtypeC": "e4m3",
            "mmaM": 64,
            "mmaN": 8,
            "mmaK": 32,
            "tileM": 128,
            "tileN": 8,
            "tileK": 128,
            "epilogueTileM": 64,
            "epilogueTileN": 8,
            "numStages": 3,
            "numMmaStages": 1,
            "numSlicesForSplitK": 1,
            "useTwoTmaLoadWarps": true,
            "clusterDimX": 1,
            "clusterDimY": 1,
            "clusterDimZ": 1,
            "sliceK": false,
            "transposeMmaOutput": true,
            "useShuffledMatrixA": true,
            "useDeepSeekFp8": true,
            "useTmaStore": true,
            "useCustomMmaSchedule": true,
            "gridTriggerSecondaryB": true,
            "gridWaitForPrimaryA": false,
            "gridWaitForPrimaryB": true,
            "usePdl": true

        },
        "GemmPerTensorScalingFp8Throughput": {
            "dtypeA": "e4m3",
            "dtypeC": "e4m3",
            "mmaM": 128,
            "mmaN": 128,
            "mmaK": 32,
            "tileM": 128,
            "tileN": 128,
            "tileK": 256,
            "epilogueTileM": 128,
            "epilogueTileN": 128,
            "numStages": 3,
            "numMmaStages": 1,
            "numSlicesForSplitK": 1,
            "useTwoTmaLoadWarps": true,
            "clusterDimX": 1,
            "clusterDimY": 1,
            "clusterDimZ": 1,
            "sliceK": false,
            "transposeMmaOutput": false,
            "useShuffledMatrixA": false,
            "useDeepSeekFp8": false,
            "useTmaStore": true,
            "useCustomMmaSchedule": true,
            "gridTriggerSecondaryA": true,
            "gridTriggerSecondaryB": false,
            "gridWaitForPrimaryA": true,
            "gridWaitForPrimaryB": false,
            "usePdl": true
        },
        "GemmPerTensorScalingFp8LowLatency": {
            "dtypeA": "e4m3",
            "dtypeC": "e4m3",
            "mmaM": 128,
            "mmaN": 8,
            "mmaK": 32,
            "tileM": 128,
            "tileN": 8,
            "tileK": 512,
            "epilogueTileM": 128,
            "epilogueTileN": 8,
            "numStages": 3,
            "numMmaStages": 1,
            "numSlicesForSplitK": 2,
            "useTwoTmaLoadWarps": true,
            "clusterDimX": 1,
            "clusterDimY": 1,
            "clusterDimZ": 2,
            "sliceK": false,
            "transposeMmaOutput": true,
            "useShuffledMatrixA": true,
            "useDeepSeekFp8": false,
            "useTmaStore": true,
            "useCustomMmaSchedule": true,
            "gridTriggerSecondaryB": true,
            "gridWaitForPrimaryA": false,
            "gridWaitForPrimaryB": true,
            "usePdl": true
        },
        "GemmDeepSeekFp8LowLatency": {
            "dtypeA": "e4m3",
            "dtypeC": "e4m3",
            "mmaM": 64,
            "mmaN": 8,
            "mmaK": 32,
            "tileM": 128,
            "tileN": 8,
            "tileK": 128,
            "epilogueTileM": 64,
            "epilogueTileN": 8,
            "numStages": 4,
            "numSlicesForSplitK": 1,
            "useTwoTmaLoadWarps": true,
            "clusterDimX": 1,
            "clusterDimY": 1,
            "clusterDimZ": 1,
            "sliceK": false,
            "transposeMmaOutput": true,
            "useShuffledMatrixA": false,
            "useDeepSeekFp8": true,
            "useTmaStore": true,
            "useCustomMmaSchedule": true,
            "gridTriggerSecondaryB": true,
            "gridWaitForPrimaryA": false,
            "gridWaitForPrimaryB": true,
            "hoistMmaTaskTryWaits": true,
            "numStagesMma": 2,
            "numStagesMmaWithinWorkTile": 2,
            "useTwoMmaWarps": true,
            "useMetaFp8": false,
            "usePdl": true
        },
        "GemmDeepSeekFp8Throughput": {
            "dtypeA": "e4m3",
            "dtypeC": "e4m3",
            "mmaM": 64,
            "mmaN": 128,
            "mmaK": 32,
            "tileM": 128,
            "tileN": 128,
            "tileK": 128,
            "epilogueTileM": 64,
            "epilogueTileN": 128,
            "numStages": 4,
            "numSlicesForSplitK": 1,
            "useTwoTmaLoadWarps": true,
            "clusterDimX": 1,
            "clusterDimY": 1,
            "clusterDimZ": 1,
            "sliceK": false,
            "transposeMmaOutput": true,
            "useShuffledMatrixA": false,
            "useDeepSeekFp8": true,
            "useTmaStore": true,
            "useCustomMmaSchedule": true,
            "hoistMmaTaskTryWaits": true,
            "numStagesMma": 2,
            "numStagesMmaWithinWorkTile": 2,
            "useTwoMmaWarps": true,
            "useMetaFp8": false,
            "usePdl": true,
            "gridTriggerSecondaryA": true,
            "gridTriggerSecondaryB": false,
            "gridWaitForPrimaryA": true,
            "gridWaitForPrimaryB": false
        },
        "GemmMxE2m1MxE4m3LowLatency": {
            "dtypeA": "mxe2m1",
            "dtypeB": "mxe4m3",
            "dtypeC": "mxe4m3",
            "mmaM": 128,
            "mmaN": 8,
            "mmaK": 32,
            "tileM": 128,
            "tileN": 8,
            "tileK": 512,
            "epilogueTileM": 128,
            "epilogueTileN": 8,
            "numStages": 3,
            "numMmaStages": 1,
            "numSlicesForSplitK": 1,
            "useTwoTmaLoadWarps": true,
            "clusterDimX": 1,
            "clusterDimY": 1,
            "clusterDimZ": 1,
            "sliceK": false,
            "transposeMmaOutput": true,
            "useShuffledMatrixA": true,
            "useDeepSeekFp8": false,
            "useTmaStore": true,
            "useCustomMmaSchedule": true,
            "sfLayoutB": "8x4",
            "sfLayoutC": "8x4",
            "useMetaFp8": false,
            "gridTriggerSecondaryB": true,
            "gridWaitForPrimaryA": false,
            "gridWaitForPrimaryB": true,
            "usePdl": true
        }
    },
    "configs": [
        {
            "_template": "GemmFp4Throughput",
            "dtypeC": ["bf16", "fp16", "fp32"]
        },
        {
            "_template": "GemmPerTensorScalingFp8Throughput",
            "dtypeC": ["e4m3"]
        },
        {
            "_template": "GemmPerTensorScalingFp8Throughput",
            "dtypeC": ["bf16", "fp16"],
            "numStages": 2
        },
        {
            "_template": "GemmPerTensorScalingFp8LowLatency",
            "dtypeC": ["bf16", "fp16", "e4m3"],
            "numSlicesForSplitK": 2,
            "clusterDimZ": 2
        },
        {
            "_template": "GemmPerTensorScalingFp8LowLatency",
            "dtypeC": ["bf16", "fp16", "e4m3"],
            "numSlicesForSplitK": 1,
            "clusterDimZ": 1
        },
        {
            "_template": "GemmDeepSeekFp8LowLatency",
            "dtypeC": ["bf16", "fp16", "e4m3"],
            "useUnrollLoop2xForMma": [true, false]
        },
        {
            "_template": "GemmDeepSeekFp8Throughput",
            "_comment": "TileN 16",
            "dtypeC": ["bf16", "fp16", "e4m3"],
            "useUnrollLoop2xForMma": [true, false],
            "mmaN": 16,
            "tileN": 16,
            "epilogueTileN": 16
        },
        {
            "_template": "GemmDeepSeekFp8Throughput",
            "_comment": "TileN 32",
            "dtypeC": ["bf16", "fp16", "e4m3"],
            "useUnrollLoop2xForMma": [true, false],
            "mmaN": 32,
            "tileN": 32,
            "epilogueTileN": 32
        },
        {
            "_template": "GemmDeepSeekFp8Throughput",
            "_comment": "TileN 64",
            "dtypeC": ["bf16", "fp16", "e4m3"],
            "useUnrollLoop2xForMma": [true, false],
            "mmaN": 64,
            "tileN": 64,
            "epilogueTileN": 64
        },
        {
            "_template": "GemmDeepSeekFp8Throughput",
            "_comment": "TileN 128",
            "dtypeC": ["bf16", "fp16", "e4m3"],
            "useUnrollLoop2xForMma": [true, false],
            "mmaN": 128,
            "tileN": 128,
            "epilogueTileN": 128
        },
        {
            "_template": "GemmMxE2m1MxE4m3LowLatency",
            "dtypeC": ["bf16", "fp16", "fp32", "mxe4m3"]
        }
    ]
}
