mirror of
				https://github.com/ggml-org/llama.cpp.git
				synced 2025-11-04 09:32:00 +00:00 
			
		
		
		
	vulkan: disable spirv-opt for coopmat shaders (#10763)
There are some bugs in the 1.3.296 SDK, so disable this. It isn't strictly necessary anyway. Add missing dependency on vulkan-shaders-gen, so shaders get recompiled when it changes. Fix coopmat support reporting when glslc doesn't support NV_coopmat2.
This commit is contained in:
		@@ -206,10 +206,13 @@ 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";
 | 
			
		||||
 | 
			
		||||
    #ifdef _WIN32
 | 
			
		||||
        std::vector<std::string> cmd = {GLSLC, "-fshader-stage=compute", target_env, "-O", "\"" + in_path + "\"", "-o", "\"" + out_fname + "\""};
 | 
			
		||||
        std::vector<std::string> cmd = {GLSLC, "-fshader-stage=compute", target_env, opt_level, "\"" + in_path + "\"", "-o", "\"" + out_fname + "\""};
 | 
			
		||||
    #else
 | 
			
		||||
        std::vector<std::string> cmd = {GLSLC, "-fshader-stage=compute", target_env, "-O", in_path, "-o",  out_fname};
 | 
			
		||||
        std::vector<std::string> cmd = {GLSLC, "-fshader-stage=compute", target_env, opt_level, in_path, "-o",  out_fname};
 | 
			
		||||
    #endif
 | 
			
		||||
 | 
			
		||||
    #ifdef GGML_VULKAN_SHADER_DEBUG_INFO
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user