diff --git a/aiter/configs/model_configs/dsv4_bf16_tuned_gemm.csv b/aiter/configs/model_configs/dsv4_bf16_tuned_gemm.csv index c3ec32066d..3e79c34d07 100644 --- a/aiter/configs/model_configs/dsv4_bf16_tuned_gemm.csv +++ b/aiter/configs/model_configs/dsv4_bf16_tuned_gemm.csv @@ -412,96 +412,96 @@ gfx942,80,48,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,10312, gfx942,80,64,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,10312,0,4.7714,opus_gemm_gfx942_wkc_accum_512x32x16x64_1x1_16x16x16_0x0x0,0.0215,7.03,221.48 gfx942,80,16,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,10310,0,4.5125,opus_gemm_gfx942_wkc_accum_256x16x16x64_1x1_16x16x16_0x0x0,0.0205,1.86,145.69 gfx950,256,1024,16160,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,5009,0,222.0124,opus_gemm_512x256x256x64_2x4_16x16x32_0x0x0_4g_safe,0.0,1068.54,1258.69 -gfx1250,256,1,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20125,13,4.2392,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x3_p3w2,0.0156,0.49,496.76 -gfx1250,256,2,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20125,8,4.3337,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x3_p3w2,0.0117,0.97,487.93 -gfx1250,256,4,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,10,4.411,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0107,1.9,483.33 -gfx1250,256,8,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20121,9,4.5208,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x2_p3w2,0.0103,3.71,479.29 -gfx1250,256,16,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,8,4.4856,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0095,7.48,498.58 -gfx1250,256,32,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20121,10,4.5858,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x2_p3w2,0.0099,14.63,518.05 -gfx1250,256,64,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,15,4.7822,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0097,28.07,555.02 -gfx1250,256,128,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,7,4.9531,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0083,54.2,648.33 -gfx1250,256,256,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20258,6,5.6479,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.009,95.06,765.84 -gfx1250,256,512,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20258,3,6.7705,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0064,158.59,967.96 -gfx1250,256,1024,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20286,3,8.7769,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x64x256_2x1_16x16x32_0x0x0_c4x2_p3w2,0.0069,244.67,1254.43 -gfx1250,256,2048,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20402,3,11.5296,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x128_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0071,372.52,1727.98 -gfx1250,256,4096,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20420,0,16.5789,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x256_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,518.12,2276.91 -gfx1250,256,8192,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20556,2,26.9272,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x2_p3w1,0.0048,638.01,2725.88 -gfx1250,256,16384,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20546,0,59.345,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x64x256_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,578.98,2438.34 +gfx1250,256,1,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.758,auto,0.0,0.44,442.59 +gfx1250,256,2,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.826,auto,0.0,0.87,438.16 +gfx1250,256,4,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.7867,auto,0.0,1.75,445.39 +gfx1250,256,8,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.584,auto,0.0,4.68,604.57 +gfx1250,256,16,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.542,auto,0.0,9.47,631.4 +gfx1250,256,32,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.814,auto,0.0,17.6,622.88 +gfx1250,256,64,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.717,auto,0.0,36.11,714.07 +gfx1250,256,128,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.772,auto,0.0,71.17,851.34 +gfx1250,256,256,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.005,auto,0.0,107.27,864.21 +gfx1250,256,512,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.854,auto,0.0,183.42,1119.51 +gfx1250,256,1024,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,7.11,auto,0.0,302.04,1548.53 +gfx1250,256,2048,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,8.817,auto,0.0,487.12,2259.61 +gfx1250,256,4096,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,13.687,auto,0.0,627.6,2758.0 +gfx1250,256,8192,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,15.413,auto,0.0,1114.63,4762.23 +gfx1250,256,16384,256,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,24.075,auto,0.0,1427.2,6010.53 gfx1250,256,1,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,6,4.4343,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0059,0.95,947.96 -gfx1250,256,2,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,6,4.5176,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0098,1.86,932.52 -gfx1250,256,4,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,6,4.5432,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0088,3.69,931.32 -gfx1250,256,8,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,9,4.6225,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0088,7.26,923.32 -gfx1250,256,16,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,6,4.6446,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0078,14.45,934.8 -gfx1250,256,32,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,10,4.6801,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0096,28.68,959.21 -gfx1250,256,64,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,7,4.9403,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0083,54.34,968.39 -gfx1250,256,128,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20256,6,5.9353,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c2x4_p3w2,0.0084,90.45,905.42 -gfx1250,256,256,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20256,3,6.8967,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c2x4_p3w2,0.0066,155.69,950.25 -gfx1250,256,512,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20294,2,8.6094,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x64x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0049,249.43,1035.25 -gfx1250,256,1024,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20394,3,10.4295,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x128_2x1_16x16x32_0x0x0_c4x2_p3w2,0.0068,411.81,1307.01 -gfx1250,256,2048,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20420,0,15.4751,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x256_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,555.08,1490.7 -gfx1250,256,4096,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20546,1,22.4866,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x64x256_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,764.0,1865.25 -gfx1250,256,8192,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,42.0113,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,817.87,1896.91 -gfx1250,256,16384,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,77.0625,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,891.74,2013.81 -gfx1250,256,1,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20237,13,4.6851,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x128_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0146,1.79,1792.67 -gfx1250,256,2,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,8,4.7717,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0103,3.52,1762.28 -gfx1250,256,4,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,11,4.645,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0088,7.22,1814.76 +gfx1250,256,2,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.427,auto,0.0,1.89,951.6 +gfx1250,256,4,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.471,auto,0.0,3.75,946.36 +gfx1250,256,8,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.62,auto,0.0,9.27,1179.01 +gfx1250,256,16,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.643,auto,0.0,18.42,1191.81 +gfx1250,256,32,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.777,auto,0.0,35.54,1188.57 +gfx1250,256,64,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.798,auto,0.0,70.68,1259.64 +gfx1250,256,128,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.993,auto,0.0,134.45,1345.84 +gfx1250,256,256,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,6.86,auto,0.0,156.52,955.34 +gfx1250,256,512,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,6.86,auto,0.0,313.04,1299.26 +gfx1250,256,1024,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,8.615,auto,0.0,498.55,1582.3 +gfx1250,256,2048,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,11.434,auto,0.0,751.26,2017.55 +gfx1250,256,4096,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,19.144,auto,0.0,897.4,2190.92 +gfx1250,256,8192,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,24.654,auto,0.0,1393.68,3232.41 +gfx1250,256,16384,512,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,48.267,auto,0.0,1423.74,3215.22 +gfx1250,256,1,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.886,auto,0.0,1.72,1718.96 +gfx1250,256,2,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.913,auto,0.0,3.41,1711.6 +gfx1250,256,4,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.959,auto,0.0,6.77,1699.85 gfx1250,256,8,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,11,4.6801,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0092,14.34,1809.9 -gfx1250,256,16,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,14,4.7726,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0102,28.12,1791.99 -gfx1250,256,32,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20237,12,5.056,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x128_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0096,53.09,1723.95 -gfx1250,256,64,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20168,6,5.6837,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x64x256_1x2_16x16x32_0x0x0_c4x4_p3w2,0.0088,94.46,1591.21 -gfx1250,256,128,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20258,3,7.3756,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0067,145.58,1315.06 -gfx1250,256,256,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20292,3,8.6872,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x64x256_2x1_16x16x32_0x0x0_c2x4_p3w2,0.0068,247.2,1267.39 -gfx1250,256,512,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20402,3,10.724,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x128_2x1_16x16x32_0x0x0_c4x4_p3w2,0.007,400.5,1271.12 -gfx1250,256,1024,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,14.3101,auto,0.0,600.27,1318.95 -gfx1250,256,2048,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20546,0,20.606,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x64x256_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,833.73,1424.83 -gfx1250,256,4096,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,34.1143,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1007.19,1475.38 -gfx1250,256,8192,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,70.7988,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,970.63,1303.34 -gfx1250,256,16384,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,132.8872,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1034.25,1325.64 -gfx1250,256,1,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,6,6.2166,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0093,2.7,2700.75 -gfx1250,256,2,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,7,6.1369,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0088,5.47,2737.83 -gfx1250,256,4,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,7,6.2492,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0084,10.74,2692.56 -gfx1250,256,8,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,7,6.3755,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0082,21.05,2646.93 -gfx1250,256,16,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,7,6.3616,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.009,42.2,2668.17 -gfx1250,256,32,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20166,4,6.4277,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x64x256_1x2_16x16x32_0x0x0_c2x4_p3w2,0.008,83.52,2671.32 -gfx1250,256,64,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20168,3,7.8984,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x64x256_1x2_16x16x32_0x0x0_c4x4_p3w2,0.0068,135.94,2223.7 -gfx1250,256,128,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20292,3,8.6068,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x64x256_2x1_16x16x32_0x0x0_c2x4_p3w2,0.0067,249.51,2132.04 -gfx1250,256,256,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20400,3,11.1151,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x128_2x1_16x16x32_0x0x0_c2x4_p3w2,0.0068,386.41,1792.42 -gfx1250,256,512,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20420,1,14.0016,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x256_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,613.5,1647.57 -gfx1250,256,1024,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,19.6216,auto,0.0,875.56,1496.32 -gfx1250,256,2048,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,0,33.6694,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1020.5,1245.73 -gfx1250,256,4096,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,61.7837,auto,0.0,1112.26,1086.19 -gfx1250,256,8192,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,108.7449,auto,0.0,1263.87,1079.96 -gfx1250,256,16384,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,209.0758,auto,0.0,1314.73,1043.18 +gfx1250,256,16,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.728,auto,0.0,36.0,2294.11 +gfx1250,256,32,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.629,auto,0.0,57.99,1882.97 +gfx1250,256,64,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.723,auto,0.0,113.67,1914.88 +gfx1250,256,128,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.968,auto,0.0,216.13,1952.36 +gfx1250,256,256,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,6.807,auto,0.0,315.48,1617.46 +gfx1250,256,512,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,8.511,auto,0.0,504.64,1601.63 +gfx1250,256,1024,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,11.722,auto,0.0,732.8,1610.17 +gfx1250,256,2048,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,14.908,auto,0.0,1152.39,1969.42 +gfx1250,256,4096,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,20.8,auto,0.0,1651.91,2419.79 +gfx1250,256,8192,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,45.355,auto,0.0,1515.15,2034.5 +gfx1250,256,16384,1024,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,83.315,auto,0.0,1649.63,2114.39 +gfx1250,256,1,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.884,auto,0.0,3.44,3437.65 +gfx1250,256,2,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.05,auto,0.0,6.64,3327.09 +gfx1250,256,4,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.1371,auto,0.0,13.06,3275.46 +gfx1250,256,8,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.1561,auto,0.0,26.03,3272.92 +gfx1250,256,16,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.156,auto,0.0,52.06,3292.05 +gfx1250,256,32,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.13,auto,0.0,104.65,3347.06 +gfx1250,256,64,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.423,auto,0.0,198.0,3238.73 +gfx1250,256,128,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,6.197,auto,0.0,346.54,2961.12 +gfx1250,256,256,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,8.769,auto,0.0,489.79,2271.97 +gfx1250,256,512,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,11.488,auto,0.0,747.73,2008.07 +gfx1250,256,1024,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,15.473,auto,0.0,1110.31,1897.51 +gfx1250,256,2048,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,25.653,auto,0.0,1339.4,1635.02 +gfx1250,256,4096,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,45.669,auto,0.0,1504.73,1469.46 +gfx1250,256,8192,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,84.967,auto,0.0,1617.56,1382.19 +gfx1250,256,16384,2048,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,157.459,auto,0.0,1745.71,1385.15 gfx1250,256,1,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20121,7,3.8661,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x2_p3w2,0.0156,0.14,137.76 -gfx1250,256,2,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20247,7,4.2196,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x2_p3w2,0.0078,0.25,128.19 -gfx1250,256,4,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20121,8,4.3496,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x2_p3w2,0.0117,0.48,128.19 -gfx1250,256,8,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20001,15,4.5088,opus_gemm_gfx1250_splitk_cluster_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_p3w2,0.0176,0.93,131.04 -gfx1250,256,16,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20000,11,4.2882,opus_gemm_gfx1250_splitk_cluster_tdm_ws_128x16x32x128_1x2_16x16x32_0x0x0_p3w2,0.0078,1.96,153.31 -gfx1250,256,32,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20118,10,4.5128,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c2x1_p3w2,0.0098,3.72,175.17 -gfx1250,256,64,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20124,6,4.6054,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c4x2_p3w2,0.0088,7.29,229.46 -gfx1250,256,128,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20122,8,4.8581,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c2x2_p3w2,0.0098,13.81,327.13 -gfx1250,256,256,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20156,9,5.0503,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x64x256_1x2_16x16x32_0x0x0_c4x1_p3w2,0.0102,26.58,525.55 -gfx1250,256,512,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20156,6,5.2707,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x64x256_1x2_16x16x32_0x0x0_c4x1_p3w2,0.0089,50.93,907.68 -gfx1250,256,1024,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20232,6,6.1936,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x128_2x1_16x16x32_0x0x0_c4x2_p3w2,0.009,86.68,1460.21 -gfx1250,256,2048,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,8.7416,auto,0.0,122.83,2009.2 -gfx1250,256,4096,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,10.5749,auto,0.0,203.07,3272.18 -gfx1250,256,8192,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,15.8581,auto,0.0,270.84,4331.02 -gfx1250,256,16384,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,27.8922,auto,0.0,307.97,4906.0 -gfx1250,256,1,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,88.543,auto,0.0,11.96,11964.0 -gfx1250,256,2,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,88.1396,auto,0.0,24.03,12021.78 -gfx1250,256,4,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,85.8848,auto,0.0,49.32,12343.61 -gfx1250,256,8,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,87.6339,auto,0.0,96.68,12109.42 -gfx1250,256,16,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,90.5082,auto,0.0,187.22,11748.44 -gfx1250,256,32,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,92.3521,auto,0.0,366.96,11560.08 -gfx1250,256,64,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20346,0,130.4572,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x256x128_2x1_16x16x32_0x0x0_c2x4_p3w1,0.0,519.56,8248.94 -gfx1250,256,128,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20472,0,177.1425,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x256x128_2x1_16x16x32_0x0x0_c2x4_p3w1,0.0,765.26,6171.34 -gfx1250,256,256,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20562,1,286.4794,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c2x4_p3w1,0.0,946.39,3935.19 -gfx1250,256,512,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,502.7167,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1078.62,2378.36 -gfx1250,256,1024,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,0,971.1146,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1116.74,1371.84 -gfx1250,256,2048,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,1951.0287,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1111.7,822.83 -gfx1250,256,4096,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,3794.8636,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1143.1,567.0 -gfx1250,256,8192,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,0,7657.8504,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1132.93,423.66 -gfx1250,256,16384,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,0,auto,0.0,0.0,0.0 +gfx1250,256,2,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,2.774,auto,0.0,0.38,195.0 +gfx1250,256,4,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,2.892,auto,0.0,0.73,192.8 +gfx1250,256,8,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.043,auto,0.0,1.38,194.17 +gfx1250,256,16,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.766,auto,0.0,2.23,174.56 +gfx1250,256,32,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,2.956,auto,0.0,5.68,267.43 +gfx1250,256,64,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,2.953,auto,0.0,11.36,357.86 +gfx1250,256,128,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.499,auto,0.0,19.18,454.2 +gfx1250,256,256,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.577,auto,0.0,37.52,742.02 +gfx1250,256,512,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.769,auto,0.0,71.22,1269.34 +gfx1250,256,1024,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.512,auto,0.0,97.4,1640.78 +gfx1250,256,2048,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.427,auto,0.0,197.85,3236.35 +gfx1250,256,4096,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.823,auto,0.0,368.79,5942.47 +gfx1250,256,8192,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,11.649,auto,0.0,368.7,5895.93 +gfx1250,256,16384,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,11.975,auto,0.0,717.32,11427.07 +gfx1250,256,1,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,57.778,auto,0.0,18.33,18334.46 +gfx1250,256,2,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,57.747,auto,0.0,36.68,18348.92 +gfx1250,256,4,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,60.426,auto,0.0,70.11,17544.25 +gfx1250,256,8,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,58.406,auto,0.0,145.06,18169.29 +gfx1250,256,16,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,61.216,auto,0.0,276.81,17370.13 +gfx1250,256,32,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,62.935,auto,0.0,538.49,16963.5 +gfx1250,256,64,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,91.463,auto,0.0,741.06,11765.78 +gfx1250,256,128,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,96.722,auto,0.0,1401.54,11302.56 +gfx1250,256,256,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,178.356,auto,0.0,1520.1,6320.79 +gfx1250,256,512,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,331.133,auto,0.0,1637.53,3610.75 +gfx1250,256,1024,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,630.787,auto,0.0,1719.25,2111.99 +gfx1250,256,2048,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,1213.308,auto,0.0,1787.64,1323.13 +gfx1250,256,4096,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,2393.462,auto,0.0,1812.4,898.98 +gfx1250,256,8192,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4739.464,auto,0.0,1830.55,684.53 +gfx1250,256,16384,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,9484.974,auto,0.0,1829.38,572.43 gfx942,80,1,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,skinny,2,0,3.6782,sol2,0.0,0.14,144.8 gfx942,80,2,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,10310,0,4.1922,opus_gemm_gfx942_wkc_accum_256x16x16x64_1x1_16x16x16_0x0x0,0.0234,0.25,129.03 gfx942,80,4,64,4096,False,torch.bfloat16,torch.bfloat16,False,False,opus,10310,0,4.2146,opus_gemm_gfx942_wkc_accum_256x16x16x64_1x1_16x16x16_0x0x0,0.0234,0.5,132.29 @@ -955,93 +955,78 @@ gfx950,256,10240,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,asm gfx950,256,12288,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,asm,10,1,8690.592,_ZN5aiter24bf16gemm_bf16_tn_256x256E,0.0,1497.45,499.04 gfx950,256,14336,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,torch,0,0,10308.1547,native,0.0,1472.88,473.72 gfx950,256,16384,129280,4096,False,torch.bfloat16,torch.bfloat16,False,False,asm,10,1,12034.317,_ZN5aiter24bf16gemm_bf16_tn_256x256E,0.0,1441.85,451.17 -gfx1250,256,1,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20247,11,4.1718,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x2_p3w2,0.0,0.22,223.4 -gfx1250,256,2,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20014,12,4.3268,opus_gemm_gfx1250_splitk_cluster_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_p3w2,0.0078,0.42,218.74 -gfx1250,256,4,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20247,12,4.3419,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x2_p3w2,0.0117,0.85,224.64 -gfx1250,256,8,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20247,13,4.436,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x2_p3w2,0.0098,1.65,232.92 -gfx1250,256,16,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20121,5,4.6873,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x2_p3w2,0.0098,3.13,245.12 -gfx1250,256,32,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20001,12,4.6459,opus_gemm_gfx1250_splitk_cluster_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_p3w2,0.0122,6.32,297.11 -gfx1250,256,64,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20002,5,4.7927,opus_gemm_gfx1250_splitk_cluster_tdm_ws_128x16x32x512_1x2_16x16x32_0x0x0_p3w1,0.009,12.25,384.58 -gfx1250,256,128,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20122,13,5.0205,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c2x2_p3w2,0.011,23.39,551.52 -gfx1250,256,256,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20122,13,5.3889,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c2x2_p3w2,0.0109,43.59,857.37 -gfx1250,256,512,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20124,5,6.1997,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c4x2_p3w2,0.0104,75.77,1342.5 -gfx1250,256,1024,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20232,7,7.522,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x128_2x1_16x16x32_0x0x0_c4x2_p3w2,0.011,124.9,2091.02 -gfx1250,256,2048,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20232,3,11.9368,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x128_2x1_16x16x32_0x0x0_c4x2_p3w2,0.0083,157.42,2558.46 -gfx1250,256,4096,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,21.9065,auto,0.0,171.55,2746.31 -gfx1250,256,8192,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,24.1877,auto,0.0,310.74,4936.67 -gfx1250,256,16384,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,33.6596,auto,0.0,446.6,7067.69 -gfx1250,256,1,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,11,4.3285,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.013,1.27,1275.3 -gfx1250,256,2,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,11,4.4714,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.013,2.46,1237.92 -gfx1250,256,4,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,11,4.5581,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0169,4.83,1221.0 -gfx1250,256,8,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,10,4.7255,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0111,9.32,1190.53 -gfx1250,256,16,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20121,13,4.8069,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x2_p3w2,0.012,18.32,1195.51 -gfx1250,256,32,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20125,12,5.0135,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x3_p3w2,0.0119,35.14,1194.45 -gfx1250,256,64,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20251,11,5.2693,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x3_p3w2,0.0113,66.86,1228.19 -gfx1250,256,128,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20258,10,6.0534,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0113,116.4,1228.79 -gfx1250,256,256,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20258,5,7.7248,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.01,182.44,1213.19 -gfx1250,256,512,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20286,5,9.548,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x64x256_2x1_16x16x32_0x0x0_c4x2_p3w2,0.0105,295.2,1386.5 -gfx1250,256,1024,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20308,4,13.6378,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x128x128_2x1_16x16x32_0x0x0_c4x3_p3w2,0.0096,413.35,1537.75 -gfx1250,256,2048,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20416,0,20.0789,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x256_2x1_16x16x32_0x0x0_c4x3_p3w1,0.0,561.5,1814.74 -gfx1250,256,4096,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20560,2,31.7346,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x3_p3w1,0.006,710.54,2122.95 -gfx1250,256,8192,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20560,0,62.8215,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x3_p3w1,0.0,717.86,2057.21 -gfx1250,256,16384,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20560,1,112.4836,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x3_p3w1,0.0,801.84,2248.94 -gfx1250,256,1,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20125,13,4.8497,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x3_p3w2,0.0137,1.51,1516.67 -gfx1250,256,2,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20125,12,4.9228,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x3_p3w2,0.0117,2.98,1497.27 -gfx1250,256,4,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,10,5.1268,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0146,5.73,1443.68 -gfx1250,256,8,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,13,5.0114,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.01,11.72,1489.19 -gfx1250,256,16,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,11,5.137,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0117,22.86,1476.7 -gfx1250,256,32,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20247,13,5.2955,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x2_p3w2,0.0114,44.35,1478.91 -gfx1250,256,64,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20256,13,5.623,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c2x4_p3w2,0.0111,83.54,1480.18 -gfx1250,256,128,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20258,6,7.03,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0105,133.64,1323.77 -gfx1250,256,256,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20258,3,8.4767,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0087,221.67,1329.79 -gfx1250,256,512,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20286,3,10.7654,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x64x256_2x1_16x16x32_0x0x0_c4x2_p3w2,0.0081,349.09,1412.34 -gfx1250,256,1024,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20402,3,13.494,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x128_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0085,557.0,1709.55 -gfx1250,256,2048,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20420,0,20.4402,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x256_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,735.43,1898.09 -gfx1250,256,4096,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,2,32.6101,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.006,921.95,2154.38 -gfx1250,256,8192,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,65.0479,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,924.39,2047.25 -gfx1250,256,16384,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,122.5594,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,981.23,2113.25 -gfx1250,256,1,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,12,5.2116,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0166,2.82,2819.95 -gfx1250,256,2,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,12,5.1045,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0107,5.75,2882.33 -gfx1250,256,4,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20251,11,5.5104,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x3_p3w2,0.0125,10.66,2675.96 -gfx1250,256,8,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,12,5.3656,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.01,21.89,2760.39 -gfx1250,256,16,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,11,5.7666,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0107,40.73,2591.16 -gfx1250,256,32,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,5,5.9482,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0095,78.98,2556.13 -gfx1250,256,64,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20160,5,6.9978,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x64x256_1x2_16x16x32_0x0x0_c4x2_p3w2,0.0098,134.26,2247.65 -gfx1250,256,128,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20258,3,8.5582,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0085,219.56,1960.37 -gfx1250,256,256,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20294,3,9.677,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x64x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0086,388.35,1950.44 -gfx1250,256,512,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20402,3,13.9022,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x128_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0086,540.65,1659.35 -gfx1250,256,1024,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20420,0,19.4369,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x256_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,773.39,1618.43 -gfx1250,256,2048,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,2,31.4179,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.006,956.93,1535.26 -gfx1250,256,4096,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,55.2211,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1088.89,1481.12 -gfx1250,256,8192,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,115.0855,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1044.95,1293.8 -gfx1250,256,16384,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,222.9309,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1078.89,1269.97 -gfx1250,256,1,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,5,7.0637,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0073,4.16,4159.09 -gfx1250,256,2,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,5,7.1513,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0095,8.21,4110.72 -gfx1250,256,4,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,6,7.2255,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0106,16.25,4073.61 -gfx1250,256,8,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,5,7.3724,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0097,31.86,4002.44 -gfx1250,256,16,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,6,7.3937,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0103,63.54,4010.85 -gfx1250,256,32,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20166,6,7.2401,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x64x256_1x2_16x16x32_0x0x0_c2x4_p3w2,0.0102,129.77,4136.68 -gfx1250,256,64,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20168,3,9.9717,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x64x256_1x2_16x16x32_0x0x0_c4x4_p3w2,0.0087,188.44,3062.64 -gfx1250,256,128,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20294,3,10.9157,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x64x256_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0087,344.28,2905.85 -gfx1250,256,256,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20402,3,14.1071,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x128_2x1_16x16x32_0x0x0_c4x4_p3w2,0.0085,532.8,2415.71 -gfx1250,256,512,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20420,1,20.227,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x64x256_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,743.18,1918.1 -gfx1250,256,1024,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,2,30.8847,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0061,973.45,1561.76 -gfx1250,256,2048,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,0,54.6739,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1099.79,1227.44 -gfx1250,256,4096,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,105.6526,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1138.25,992.48 -gfx1250,256,8192,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,221.3486,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1086.6,814.8 -gfx1250,256,16384,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,433.5658,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1109.49,764.24 -gfx1250,256,1,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,37.3726,auto,0.0,12.4,12399.95 -gfx1250,256,2,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20219,6,37.7451,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x256x128_1x2_16x16x32_0x0x0_c1x4_p3w1,0.0103,24.55,12279.67 -gfx1250,256,4,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20219,6,38.7137,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x256x128_1x2_16x16x32_0x0x0_c1x4_p3w1,0.0108,47.87,11976.52 -gfx1250,256,8,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,41.0235,auto,0.0,90.36,11309.89 -gfx1250,256,16,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,42.3235,auto,0.0,175.16,10977.43 -gfx1250,256,32,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,45.6578,auto,0.0,324.74,10203.44 -gfx1250,256,64,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20471,2,64.2884,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x256x128_2x1_16x16x32_0x0x0_c1x4_p3w1,0.006,461.26,7285.82 -gfx1250,256,128,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20348,1,92.1742,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x256x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,643.43,5136.45 -gfx1250,256,256,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20474,0,134.2082,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x64x256x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,883.81,3603.04 -gfx1250,256,512,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,248.4091,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,955.0,2028.01 -gfx1250,256,1024,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,0,464.072,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1022.38,1172.69 -gfx1250,256,2048,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20556,0,888.3131,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x2_p3w1,0.0,1068.23,703.67 -gfx1250,256,4096,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20556,0,1762.6836,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x2_p3w1,0.0,1076.68,446.38 -gfx1250,256,8192,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20556,0,3498.672,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x2_p3w1,0.0,1084.89,317.35 -gfx1250,256,16384,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20562,0,6943.9129,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c2x4_p3w1,0.0,1093.24,253.07 +gfx1250,256,16384,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,18.4251,auto,0.0,815.86,12911.5 +gfx1250,256,8192,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,14.2898,auto,0.0,525.98,8356.07 +gfx1250,256,4096,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,11.3339,auto,0.0,331.58,5308.15 +gfx1250,256,2048,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,10.5596,auto,0.0,177.95,2892.13 +gfx1250,256,1024,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20232,7,8.1807,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x128_2x1_16x16x32_0x0x0_c4x2_p3w2,0.011,114.85,1922.65 +gfx1250,256,512,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20124,5,6.6315,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c4x2_p3w2,0.0104,70.84,1255.08 +gfx1250,256,256,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.9672,auto,0.0,47.29,930.16 +gfx1250,256,128,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.8405,auto,0.0,24.26,572.03 +gfx1250,256,64,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.1506,auto,0.0,11.4,357.86 +gfx1250,256,32,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.5864,auto,0.0,6.4,300.97 +gfx1250,256,16,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20121,5,4.5493,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x2_p3w2,0.0098,3.23,252.55 +gfx1250,256,8,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20247,13,3.8493,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x2_p3w2,0.0098,1.91,268.42 +gfx1250,256,4,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.9771,auto,0.0,0.92,245.24 +gfx1250,256,2,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.9185,auto,0.0,0.47,241.53 +gfx1250,256,1,64,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.9813,auto,0.0,0.23,234.09 +gfx1250,256,16384,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,55.3463,auto,0.0,1629.64,4570.66 +gfx1250,256,8192,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,36.8532,auto,0.0,1223.7,3506.81 +gfx1250,256,4096,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,32.5825,auto,0.0,692.05,2067.71 +gfx1250,256,2048,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,14.2098,auto,0.0,793.42,2564.29 +gfx1250,256,1024,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,12.2739,auto,0.0,459.28,1708.63 +gfx1250,256,512,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20286,5,10.2911,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x64x256_2x1_16x16x32_0x0x0_c4x2_p3w2,0.0105,273.88,1286.38 +gfx1250,256,256,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,6.4214,auto,0.0,219.47,1459.44 +gfx1250,256,128,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.5693,auto,0.0,126.52,1335.6 +gfx1250,256,64,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.6764,auto,0.0,62.07,1140.1 +gfx1250,256,32,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.1951,auto,0.0,33.91,1152.69 +gfx1250,256,16,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20121,13,4.7953,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x2_p3w2,0.012,18.37,1198.40 +gfx1250,256,8,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20255,10,4.4697,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x32x32x256_2x1_16x16x32_0x0x0_c1x4_p3w2,0.0111,9.85,1258.67 +gfx1250,256,4,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,11,4.2913,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0169,5.13,1296.91 +gfx1250,256,2,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.0234,auto,0.0,2.74,1375.76 +gfx1250,256,1,384,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.0246,auto,0.0,1.37,1371.6 +gfx1250,256,16384,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,62.4384,auto,0.0,1926.04,4148.06 +gfx1250,256,8192,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,40.2231,auto,0.0,1494.9,3310.76 +gfx1250,256,4096,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,33.944,auto,0.0,885.72,2069.72 +gfx1250,256,2048,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,17.0993,auto,0.0,879.12,2268.94 +gfx1250,256,1024,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,12.7896,auto,0.0,587.68,1803.71 +gfx1250,256,512,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,11.2435,auto,0.0,334.25,1352.28 +gfx1250,256,256,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,7.3916,auto,0.0,254.21,1525.0 +gfx1250,256,128,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,6.583,auto,0.0,142.72,1413.66 +gfx1250,256,64,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.8139,auto,0.0,80.8,1431.58 +gfx1250,256,32,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.29,auto,0.0,44.4,1480.44 +gfx1250,256,16,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,11,4.5508,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.0117,25.81,1666.91 +gfx1250,256,8,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20129,13,4.4061,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x16x32x256_1x2_16x16x32_0x0x0_c1x4_p3w2,0.01,13.33,1693.77 +gfx1250,256,4,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.1978,auto,0.0,6.99,1763.18 +gfx1250,256,2,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.0281,auto,0.0,3.64,1829.83 +gfx1250,256,1,512,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3.9859,auto,0.0,1.84,1845.35 +gfx1250,256,16384,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,108.954,auto,0.0,2207.52,2598.49 +gfx1250,256,8192,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,103.1663,auto,0.0,1165.68,1443.28 +gfx1250,256,4096,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,60.1798,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,999.16,1359.08 +gfx1250,256,2048,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,25.5575,auto,0.0,1176.36,1887.29 +gfx1250,256,1024,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,21.1831,auto,0.0,709.64,1485.02 +gfx1250,256,512,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,14.1786,auto,0.0,530.11,1627.01 +gfx1250,256,256,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,9.5185,auto,0.0,394.82,1982.91 +gfx1250,256,128,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,7.5595,auto,0.0,248.57,2219.36 +gfx1250,256,64,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,6.5464,auto,0.0,143.52,2402.64 +gfx1250,256,32,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.6153,auto,0.0,83.66,2707.67 +gfx1250,256,16,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.6493,auto,0.0,41.58,2644.97 +gfx1250,256,8,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.9938,auto,0.0,23.52,2965.9 +gfx1250,256,4,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.3226,auto,0.0,13.58,3411.28 +gfx1250,256,2,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.1526,auto,0.0,7.07,3543.04 +gfx1250,256,1,1024,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.0927,auto,0.0,3.59,3590.89 +gfx1250,256,16384,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,187.5654,auto,0.0,2564.63,1766.58 +gfx1250,256,8192,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,194.3801,auto,0.0,1237.36,927.85 +gfx1250,256,4096,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,1,113.0086,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0,1064.16,927.87 +gfx1250,256,2048,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,39.569,auto,0.0,1519.61,1696.0 +gfx1250,256,1024,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,opus,20564,2,32.1312,opus_gemm_gfx1250_splitk_clusterlaunch_tdm_ws_128x128x128x128_2x1_16x16x32_0x0x0_c4x4_p3w1,0.0061,935.69,1501.17 +gfx1250,256,512,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,19.2443,auto,0.0,781.13,2016.04 +gfx1250,256,256,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,12.2494,auto,0.0,613.6,2782.07 +gfx1250,256,128,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,9.445,auto,0.0,397.89,3358.33 +gfx1250,256,64,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,7.3257,auto,0.0,256.5,4168.85 +gfx1250,256,32,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,6.1408,auto,0.0,153.0,4877.21 +gfx1250,256,16,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.93,auto,0.0,79.22,5000.85 +gfx1250,256,8,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,5.8026,auto,0.0,40.48,5085.23 +gfx1250,256,4,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.5745,auto,0.0,25.67,6434.33 +gfx1250,256,2,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.4898,auto,0.0,13.08,6547.51 +gfx1250,256,1,2048,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,4.4125,auto,0.0,6.65,6658.03 diff --git a/aiter/configs/model_configs/dsv4pro_bf16_tuned_gemm.csv b/aiter/configs/model_configs/dsv4pro_bf16_tuned_gemm.csv new file mode 100644 index 0000000000..a3613ee36d --- /dev/null +++ b/aiter/configs/model_configs/dsv4pro_bf16_tuned_gemm.csv @@ -0,0 +1,16 @@ +gfx,cu_num,M,N,K,bias,dtype,outdtype,scaleAB,bpreshuffle,libtype,solidx,splitK,us,kernelName,err_ratio,tflops,bw +gfx1250,256,1,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,25.5588,auto,0.0,18.13,18131.47 +gfx1250,256,2,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,25.6286,auto,0.0,36.16,18085.17 +gfx1250,256,4,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,25.7178,auto,0.0,72.07,18028.58 +gfx1250,256,8,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,26.3710,auto,0.0,140.56,17594.0 +gfx1250,256,16,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,27.1162,auto,0.0,273.39,17133.78 +gfx1250,256,32,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,28.2982,auto,0.0,523.95,16462.77 +gfx1250,256,64,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,32.3609,auto,0.0,916.34,14474.07 +gfx1250,256,128,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,42.7325,auto,0.0,1387.88,11079.35 +gfx1250,256,256,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,67.0230,auto,0.0,1769.76,7214.8 +gfx1250,256,512,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,199.3847,auto,0.0,1189.81,2526.65 +gfx1250,256,1024,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,398.0347,auto,0.0,1192.01,1367.24 +gfx1250,256,2048,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,768.4669,auto,0.0,1234.82,813.41 +gfx1250,256,4096,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,1498.5199,auto,0.0,1266.48,525.07 +gfx1250,256,8192,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,2986.6679,auto,0.0,1270.87,371.76 +gfx1250,256,16384,32320,7168,False,torch.bfloat16,torch.bfloat16,False,False,triton,0,0,3336.9446,auto,0.0,2274.94,526.61 diff --git a/aiter/ops/triton/_gluon_kernels/gfx1250/gemm/basic/gemm_a16w16.py b/aiter/ops/triton/_gluon_kernels/gfx1250/gemm/basic/gemm_a16w16.py index f26129775b..f9267e1803 100644 --- a/aiter/ops/triton/_gluon_kernels/gfx1250/gemm/basic/gemm_a16w16.py +++ b/aiter/ops/triton/_gluon_kernels/gfx1250/gemm/basic/gemm_a16w16.py @@ -500,7 +500,7 @@ def _gemm_a16w16_compute_bound_kernel( accumulator = gl.zeros((BLOCK_M, BLOCK_N), dtype=gl.float32, layout=WMMA_LAYOUT) # TDM prologue: fill the pipeline with NUM_BUFFERS-1 tiles - for _ in gl.static_range(NUM_BUFFERS): + for _ in gl.static_range(NUM_BUFFERS - 1): gl.amd.gfx1250.tdm.async_load( a_desc, [0, 0], a_buffer.index(load_idx % NUM_BUFFERS) ) @@ -534,7 +534,7 @@ def _gemm_a16w16_compute_bound_kernel( # Register pre-load prologue: wait for tile 0 then read it into cur_a/cur_b. # After TDM prologue there are (NUM_BUFFERS-1)*2 ops in-flight; waiting for # (NUM_BUFFERS-2)*2 lets exactly one tile (tile 0) complete. - gl.amd.gfx1250.tdm.async_wait((NUM_BUFFERS - 1) * 2) + gl.amd.gfx1250.tdm.async_wait((NUM_BUFFERS - 2) * 2) if LAYOUT[0] == "T": cur_a = gl.amd.cdna4.async_copy.load_shared_relaxed( @@ -594,7 +594,7 @@ def _gemm_a16w16_compute_bound_kernel( # Tighter wait: after issuing the new TDM there are (NUM_BUFFERS-1)*2 # ops in-flight. Waiting for (NUM_BUFFERS-2)*2 guarantees that tile # compute_idx+1 has landed in LDS. - gl.amd.gfx1250.tdm.async_wait((NUM_BUFFERS - 1) * 2) + gl.amd.gfx1250.tdm.async_wait((NUM_BUFFERS - 2) * 2) load_idx += 1 @@ -629,7 +629,7 @@ def _gemm_a16w16_compute_bound_kernel( # The final K tile is peeled out after this loop so its (possibly partial) # TDM load can be bounds-checked with set_bounds; the interior iterations # use the fast add_offsets path that leaves the OOB bound untouched. - for _ in range(num_k_tiles - NUM_BUFFERS - 2): + for _ in range(num_k_tiles - NUM_BUFFERS - 1): # WMMA for the current tile — uses operands pre-loaded in the # *previous* iteration so no ds_read stall before the matrix op. @@ -665,7 +665,7 @@ def _gemm_a16w16_compute_bound_kernel( # Tighter wait: after issuing the new TDM there are (NUM_BUFFERS-1)*2 # ops in-flight. Waiting for (NUM_BUFFERS-2)*2 guarantees that tile # compute_idx+1 has landed in LDS. - gl.amd.gfx1250.tdm.async_wait((NUM_BUFFERS - 1) * 2) + gl.amd.gfx1250.tdm.async_wait((NUM_BUFFERS - 2) * 2) load_idx += 1 @@ -729,7 +729,7 @@ def _gemm_a16w16_compute_bound_kernel( b_desc, [0, 0], b_buffer.index(load_idx % NUM_BUFFERS) ) - gl.amd.gfx1250.tdm.async_wait((NUM_BUFFERS - 1) * 2) + gl.amd.gfx1250.tdm.async_wait((NUM_BUFFERS - 2) * 2) load_idx += 1 @@ -759,8 +759,8 @@ def _gemm_a16w16_compute_bound_kernel( # Epilogue: no more TDM loads; drain the remaining NUM_BUFFERS-1 tiles. # The first NUM_BUFFERS-2 iterations still use the pre-load / WMMA pattern. - for i in gl.static_range(NUM_BUFFERS - 1): - gl.amd.gfx1250.tdm.async_wait((NUM_BUFFERS - 2 - i) * 2) + for i in gl.static_range(NUM_BUFFERS - 2): + gl.amd.gfx1250.tdm.async_wait((NUM_BUFFERS - 3 - i) * 2) if LAYOUT[0] == "T": next_a = gl.amd.cdna4.async_copy.load_shared_relaxed( diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=1024-K=4096.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=1024-K=4096.json index a77904ac22..52cfca14c9 100644 --- a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=1024-K=4096.json +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=1024-K=4096.json @@ -1,26 +1,114 @@ { - "M_LEQ_64": { - "BLOCK_M": 16, - "BLOCK_N": 16, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 2, - "kernel_type": "bandwidth_bound" - }, - "any": { - "BLOCK_M": 64, - "BLOCK_N": 64, - "BLOCK_K": 256, - "NUM_BUFFERS": 3, - "num_warps": 4, - "kernel_type": "compute_bound" - }, - "M_LEQ_1024": { - "BLOCK_M": 64, - "BLOCK_N": 64, - "BLOCK_K": 256, - "NUM_BUFFERS": 3, - "num_warps": 4, - "kernel_type": "compute_bound" - } -} + "M_LEQ_1": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 32, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_1024": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_4096": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 3, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + } +} \ No newline at end of file diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=1024-K=7168.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=1024-K=7168.json new file mode 100644 index 0000000000..422078b056 --- /dev/null +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=1024-K=7168.json @@ -0,0 +1,90 @@ +{ + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 8, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 32, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 6, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 64, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 8, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 64, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 256, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 2, + "num_warps": 8, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 256, + "BLOCK_N": 256, + "BLOCK_K": 64, + "NUM_BUFFERS": 3, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 32, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 6, + "num_warps": 4, + "kernel_type": "compute_bound" + } +} diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=129280-K=4096.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=129280-K=4096.json new file mode 100644 index 0000000000..199fbc144b --- /dev/null +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=129280-K=4096.json @@ -0,0 +1,114 @@ +{ + "M_LEQ_1": { + "BLOCK_M": 16, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 2, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 32, + "BLOCK_N": 256, + "BLOCK_K": 128, + "NUM_BUFFERS": 2, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 128, + "NUM_BUFFERS": 2, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_1024": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_4096": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + } +} \ No newline at end of file diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=2048-K=4096.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=2048-K=4096.json index 706c51a9fb..241fb6e6de 100644 --- a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=2048-K=4096.json +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=2048-K=4096.json @@ -1,26 +1,114 @@ { - "M_LEQ_64": { - "BLOCK_M": 16, - "BLOCK_N": 16, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 2, - "kernel_type": "bandwidth_bound" - }, - "any": { - "BLOCK_M": 64, - "BLOCK_N": 128, - "BLOCK_K": 256, - "NUM_BUFFERS": 2, - "num_warps": 4, - "kernel_type": "compute_bound" - }, - "M_LEQ_1024": { - "BLOCK_M": 64, - "BLOCK_N": 128, - "BLOCK_K": 256, - "NUM_BUFFERS": 2, - "num_warps": 4, - "kernel_type": "compute_bound" - } -} + "M_LEQ_1": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 6, + "num_warps": 1, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 32, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 32, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_1024": { + "BLOCK_M": 64, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 5, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_4096": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 2, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + } +} \ No newline at end of file diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=2048-K=7168.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=2048-K=7168.json new file mode 100644 index 0000000000..bf9196da1b --- /dev/null +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=2048-K=7168.json @@ -0,0 +1,90 @@ +{ + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 32, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 6, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 64, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 6, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 3, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 3, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 256, + "BLOCK_N": 256, + "BLOCK_K": 128, + "NUM_BUFFERS": 2, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 256, + "BLOCK_N": 256, + "BLOCK_K": 64, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 128, + "NUM_BUFFERS": 7, + "num_warps": 4, + "kernel_type": "compute_bound" + } +} diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=256-K=4096.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=256-K=4096.json index 7d8664f155..53f32d83a1 100644 --- a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=256-K=4096.json +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=256-K=4096.json @@ -1,26 +1,114 @@ { - "M_LEQ_64": { - "BLOCK_M": 16, - "BLOCK_N": 16, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 2, - "kernel_type": "bandwidth_bound" - }, - "any": { - "BLOCK_M": 32, - "BLOCK_N": 32, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 4, - "kernel_type": "compute_bound" - }, - "M_LEQ_1024": { - "BLOCK_M": 32, - "BLOCK_N": 32, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 4, - "kernel_type": "compute_bound" - } -} + "M_LEQ_1": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 32, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_1024": { + "BLOCK_M": 32, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_4096": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + } +} \ No newline at end of file diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=32320-K=7168.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=32320-K=7168.json new file mode 100644 index 0000000000..e1d74eca2d --- /dev/null +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=32320-K=7168.json @@ -0,0 +1,90 @@ +{ + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 64, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 1, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 64, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 32, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 64, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 256, + "BLOCK_N": 256, + "BLOCK_K": 128, + "NUM_BUFFERS": 2, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 256, + "BLOCK_N": 256, + "BLOCK_K": 128, + "NUM_BUFFERS": 2, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 256, + "BLOCK_N": 256, + "BLOCK_K": 128, + "NUM_BUFFERS": 2, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 256, + "BLOCK_N": 256, + "BLOCK_K": 64, + "NUM_BUFFERS": 3, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 128, + "BLOCK_N": 256, + "BLOCK_K": 64, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + } +} diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=384-K=7168.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=384-K=7168.json new file mode 100644 index 0000000000..cd997f5065 --- /dev/null +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=384-K=7168.json @@ -0,0 +1,90 @@ +{ + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 64, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 3, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 256, + "BLOCK_N": 128, + "BLOCK_K": 64, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 2, + "kernel_type": "compute_bound" + } +} diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=512-K=4096.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=512-K=4096.json index ab59a391b1..da3dc5727c 100644 --- a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=512-K=4096.json +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=512-K=4096.json @@ -1,26 +1,114 @@ { - "M_LEQ_64": { - "BLOCK_M": 16, - "BLOCK_N": 16, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 2, - "kernel_type": "bandwidth_bound" - }, - "any": { - "BLOCK_M": 32, - "BLOCK_N": 64, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 4, - "kernel_type": "compute_bound" - }, - "M_LEQ_1024": { - "BLOCK_M": 32, - "BLOCK_N": 64, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 4, - "kernel_type": "compute_bound" - } -} + "M_LEQ_1": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 32, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 6, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 32, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_1024": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_4096": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + } +} \ No newline at end of file diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=512-K=7168.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=512-K=7168.json new file mode 100644 index 0000000000..f2c76a3540 --- /dev/null +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=512-K=7168.json @@ -0,0 +1,90 @@ +{ + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 6, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 64, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 128, + "BLOCK_N": 128, + "BLOCK_K": 128, + "NUM_BUFFERS": 3, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 256, + "BLOCK_N": 128, + "BLOCK_K": 64, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 32, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 6, + "num_warps": 4, + "kernel_type": "compute_bound" + } +} diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=64-K=4096.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=64-K=4096.json index 26d5fb147c..399882db5c 100644 --- a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=64-K=4096.json +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=64-K=4096.json @@ -1,26 +1,114 @@ { - "M_LEQ_64": { - "BLOCK_M": 16, - "BLOCK_N": 16, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 2, - "kernel_type": "bandwidth_bound" - }, - "M_LEQ_1024": { - "BLOCK_M": 32, - "BLOCK_N": 32, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 4, - "kernel_type": "compute_bound" - }, - "any": { - "BLOCK_M": 32, - "BLOCK_N": 32, - "BLOCK_K": 512, - "NUM_BUFFERS": 3, - "num_warps": 4, - "kernel_type": "compute_bound" - } -} + "M_LEQ_1": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 7, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 8, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 3, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 8, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 8, + "num_warps": 2, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 1, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "M_LEQ_1024": { + "BLOCK_M": 32, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 16, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_4096": { + "BLOCK_M": 32, + "BLOCK_N": 32, + "BLOCK_K": 512, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "bandwidth_bound" + }, + "any": { + "BLOCK_M": 64, + "BLOCK_N": 64, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + } +} \ No newline at end of file diff --git a/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=64-K=7168.json b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=64-K=7168.json new file mode 100644 index 0000000000..5da33db4a4 --- /dev/null +++ b/aiter/ops/triton/configs/gemm/gfx1250-GEMM-A16W16-N=64-K=7168.json @@ -0,0 +1,90 @@ +{ + "M_LEQ_4": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_8": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_16": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 7, + "num_warps": 1, + "kernel_type": "compute_bound" + }, + "M_LEQ_32": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 7, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_64": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_128": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + }, + "M_LEQ_512": { + "BLOCK_M": 64, + "BLOCK_N": 16, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_2048": { + "BLOCK_M": 64, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_8192": { + "BLOCK_M": 64, + "BLOCK_N": 32, + "BLOCK_K": 256, + "NUM_BUFFERS": 4, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "any": { + "BLOCK_M": 128, + "BLOCK_N": 64, + "BLOCK_K": 128, + "NUM_BUFFERS": 6, + "num_warps": 4, + "kernel_type": "compute_bound" + }, + "M_LEQ_256": { + "BLOCK_M": 16, + "BLOCK_N": 16, + "BLOCK_K": 512, + "NUM_BUFFERS": 5, + "num_warps": 2, + "kernel_type": "compute_bound" + } +} diff --git a/aiter/tuned_gemm.py b/aiter/tuned_gemm.py index 834b25a60a..3d0e919ccd 100644 --- a/aiter/tuned_gemm.py +++ b/aiter/tuned_gemm.py @@ -206,8 +206,9 @@ def get_GEMM_A16W16_config( assert ( False ), f"no solution for {M=} {N=} {K=} {dtype=} {bias=}, {scaleAB=}, {bpreshuffle=}" - elif is_skinny_default_shape(M, N, K, dtype, cu_num): - # soltype, solution_idx = 3, 2 + elif gfx in ("gfx90a", "gfx942", "gfx950") and is_skinny_default_shape( + M, N, K, dtype, cu_num + ): default_config["libtype"] = "skinny" default_config["solidx"] = 2 default_config["kernelName"] = ""