@@ -695,29 +695,37 @@ if (GGML_VULKAN)
695695 set (VULKAN_SHADER_GEN_CMAKE_ARGS "" )
696696
697697 # Test all shader extensions
698- test_shader_extension_support(
699- "GL_KHR_cooperative_matrix"
700- "${CMAKE_CURRENT_SOURCE_DIR} /vulkan-shaders/test_coopmat_support.comp"
701- "GGML_VULKAN_COOPMAT_GLSLC_SUPPORT"
702- )
698+ if (NOT GGML_VULKAN_NO_COOPMAT)
699+ test_shader_extension_support(
700+ "GL_KHR_cooperative_matrix"
701+ "${CMAKE_CURRENT_SOURCE_DIR} /vulkan-shaders/test_coopmat_support.comp"
702+ "GGML_VULKAN_COOPMAT_GLSLC_SUPPORT"
703+ )
704+ endif ()
703705
704- test_shader_extension_support(
705- "GL_NV_cooperative_matrix2"
706- "${CMAKE_CURRENT_SOURCE_DIR} /vulkan-shaders/test_coopmat2_support.comp"
707- "GGML_VULKAN_COOPMAT2_GLSLC_SUPPORT"
708- )
706+ if (NOT GGML_VULKAN_NO_COOPMAT2)
707+ test_shader_extension_support(
708+ "GL_NV_cooperative_matrix2"
709+ "${CMAKE_CURRENT_SOURCE_DIR} /vulkan-shaders/test_coopmat2_support.comp"
710+ "GGML_VULKAN_COOPMAT2_GLSLC_SUPPORT"
711+ )
712+ endif ()
709713
710- test_shader_extension_support(
711- "GL_EXT_integer_dot_product"
712- "${CMAKE_CURRENT_SOURCE_DIR} /vulkan-shaders/test_integer_dot_support.comp"
713- "GGML_VULKAN_INTEGER_DOT_GLSLC_SUPPORT"
714- )
714+ if (NOT GGML_VULKAN_NO_INT_DOT)
715+ test_shader_extension_support(
716+ "GL_EXT_integer_dot_product"
717+ "${CMAKE_CURRENT_SOURCE_DIR} /vulkan-shaders/test_integer_dot_support.comp"
718+ "GGML_VULKAN_INTEGER_DOT_GLSLC_SUPPORT"
719+ )
720+ endif ()
715721
716- test_shader_extension_support(
717- "GL_EXT_bfloat16"
718- "${CMAKE_CURRENT_SOURCE_DIR} /vulkan-shaders/test_bfloat16_support.comp"
719- "GGML_VULKAN_BFLOAT16_GLSLC_SUPPORT"
720- )
722+ if (NOT GGML_VULKAN_NO_BF16)
723+ test_shader_extension_support(
724+ "GL_EXT_bfloat16"
725+ "${CMAKE_CURRENT_SOURCE_DIR} /vulkan-shaders/test_bfloat16_support.comp"
726+ "GGML_VULKAN_BFLOAT16_GLSLC_SUPPORT"
727+ )
728+ endif ()
721729
722730 # end vulkan test
723731 list (APPEND GGML_CDEF_PUBLIC GGML_USE_VULKAN)
0 commit comments