Просмотр исходного кода

Add preprocessor checks for Apple devices.

Based on work by @rbourgeat in https://github.com/ggerganov/llama.cpp/pull/5322/files
Mathijs de Bruin 1 год назад
Родитель
Сommit
d8c054517d
1 измененных файлов с 6 добавлено и 1 удалено
  1. 6 1
      ggml-vulkan.cpp

+ 6 - 1
ggml-vulkan.cpp

@@ -1109,10 +1109,15 @@ static void ggml_vk_instance_init() {
 #ifdef GGML_VULKAN_VALIDATE
         "VK_EXT_validation_features",
 #endif
+#ifdef __APPLE__
         "VK_KHR_portability_enumeration",
+#endif
     };
+    vk::InstanceCreateInfo instance_create_info(vk::InstanceCreateFlags(), &app_info, layers, extensions);
+#ifdef __APPLE__
+    instance_create_info.flags = vk::InstanceCreateFlagBits::eEnumeratePortabilityKHR;
+#endif
 
-    vk::InstanceCreateInfo instance_create_info(vk::InstanceCreateFlags(vk::InstanceCreateFlagBits::eEnumeratePortabilityKHR), &app_info, layers, extensions);
 #ifdef GGML_VULKAN_VALIDATE
     const std::vector<vk::ValidationFeatureEnableEXT> features_enable = { vk::ValidationFeatureEnableEXT::eBestPractices };
     vk::ValidationFeaturesEXT validation_features = {