From: Jeff Bolz Date: Mon, 18 Aug 2025 05:56:29 +0000 (-0500) Subject: vulkan: disable spirv-opt for bfloat16 shaders (#15352) X-Git-Tag: upstream/0.0.6199~9 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=ae532eac2c1df1d8edc3d2719145895b966de1bf;p=pkg%2Fggml%2Fsources%2Fllama.cpp vulkan: disable spirv-opt for bfloat16 shaders (#15352) --- diff --git a/ggml/src/ggml-vulkan/vulkan-shaders/vulkan-shaders-gen.cpp b/ggml/src/ggml-vulkan/vulkan-shaders/vulkan-shaders-gen.cpp index 6cc474b9..75c572d6 100644 --- a/ggml/src/ggml-vulkan/vulkan-shaders/vulkan-shaders-gen.cpp +++ b/ggml/src/ggml-vulkan/vulkan-shaders/vulkan-shaders-gen.cpp @@ -223,7 +223,8 @@ void string_to_spv_func(const std::string& _name, const std::string& in_fname, c std::string target_env = (name.find("_cm2") != std::string::npos) ? "--target-env=vulkan1.3" : "--target-env=vulkan1.2"; // disable spirv-opt for coopmat shaders for https://github.com/ggerganov/llama.cpp/issues/10734 - std::string opt_level = coopmat ? "" : "-O"; + // disable spirv-opt for bf16 shaders for https://github.com/ggml-org/llama.cpp/issues/15344 + std::string opt_level = (coopmat || name.find("bf16") != std::string::npos) ? "" : "-O"; #ifdef _WIN32 std::vector cmd = {GLSLC, "-fshader-stage=compute", target_env, opt_level, "\"" + in_path + "\"", "-o", "\"" + out_fname + "\""};