From 314d5969bcacd262f28996c3625a82226fe9e521 Mon Sep 17 00:00:00 2001 From: rasbid <104773487+rasbid@users.noreply.github.com> Date: Mon, 13 Oct 2025 20:00:49 +0300 Subject: [PATCH] Tune AMD GCN warptiles --- ggml/src/ggml-vulkan/ggml-vulkan.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/ggml/src/ggml-vulkan/ggml-vulkan.cpp b/ggml/src/ggml-vulkan/ggml-vulkan.cpp index ebbb412e55f..b42f092aa75 100644 --- a/ggml/src/ggml-vulkan/ggml-vulkan.cpp +++ b/ggml/src/ggml-vulkan/ggml-vulkan.cpp @@ -2464,8 +2464,18 @@ static void ggml_vk_load_shaders(vk_device& device) { // chip specific tuning if ((device->architecture == AMD_GCN) && (device->driver_id != vk::DriverId::eAmdProprietary)) { + l_warptile = { 256, 128, 128, 16, 16, 64, 2, tm_l, tn_l, tk_l, 16 }; + l_warptile_mmq = { 256, 128, 128, 32, 16, 64, 2, tm_l, tn_l, tk_l, 16 }; + l_warptile_mmq_int = { 256, 128, 128, 32, 16, 64, 2, 4, 4, 1, 16 }; + l_warptile_mmqid = { 256, 128, 128, 32, 16, 64, 2, tm_l, tn_l, tk_l, 16 }; + m_warptile_mmq = m_warptile_mmq_int = { 256, 64, 64, 32, 16, 16, 2, 2, 2, 1, 16 }; m_warptile_mmqid = { 256, 64, 64, 32, 16, 16, 2, 2, 2, 1, 16 }; + + s_warptile = { 128, 64, 64, 16, 16, 32, 2, tm_s, tn_s, tk_s, 16 }; + s_warptile_mmq = { 128, 64, 64, 32, 16, 32, 2, tm_s, tn_s, tk_s, 16 }; + s_warptile_mmq_int = { 128, 64, 64, 32, 16, 32, 2, 2, 1, 1, 16 }; + s_warptile_mmqid = { 128, 64, 64, 32, 16, 32, 2, tm_s, tn_s, tk_s, 16 }; } l_mmq_wg_denoms = l_wg_denoms = {128, 128, 1 };