From c359d46e01bed787711b754aaeabf655c95a3205 Mon Sep 17 00:00:00 2001 From: Jeff Bolz Date: Fri, 22 Aug 2025 09:58:20 -0500 Subject: [PATCH 1/2] vulkan: workaround MoltenVK compile failure in multi_add --- ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp b/ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp index 0c7acb7060f07..e8958a24dc3d6 100644 --- a/ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp +++ b/ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp @@ -17,8 +17,8 @@ layout (push_constant) uniform parameter2 uint nb[8][4]; } p; -layout (binding = 0) readonly buffer A {A_TYPE data_a[];} a[]; -layout (binding = 0) writeonly buffer D {D_TYPE data_d[];} d[]; +layout (binding = 0) buffer A {A_TYPE data_a[];} a[]; +layout (binding = 0) buffer D {D_TYPE data_d[];} d[]; layout(constant_id = 0) const uint num_srcs = 2; From 6f64e1da66d65fb748af7c788e04ac5bec466601 Mon Sep 17 00:00:00 2001 From: Jeff Bolz Date: Sat, 23 Aug 2025 09:26:07 -0500 Subject: [PATCH 2/2] Update ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp Co-authored-by: Ruben Ortlam --- ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp b/ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp index e8958a24dc3d6..ddfcedfa43524 100644 --- a/ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp +++ b/ggml/src/ggml-vulkan/vulkan-shaders/multi_add.comp @@ -17,6 +17,9 @@ layout (push_constant) uniform parameter2 uint nb[8][4]; } p; +// Workaround for MoltenVK Bug, see https://github.com/ggml-org/llama.cpp/issues/15498 +// layout (binding = 0) readonly buffer A {A_TYPE data_a[];} a[]; +// layout (binding = 0) writeonly buffer D {D_TYPE data_d[];} d[]; layout (binding = 0) buffer A {A_TYPE data_a[];} a[]; layout (binding = 0) buffer D {D_TYPE data_d[];} d[];