Преглед изворни кода

Disable multithreaded pipeline compilation on Qualcomm drivers

This causes crashes during compilation on several 6xx and 5xx driver versions.
Billy Laws пре 3 година
родитељ
комит
a3c261d940
1 измењених фајлова са 4 додато и 1 уклоњено
  1. 4 1
      src/video_core/renderer_vulkan/vk_pipeline_cache.cpp

+ 4 - 1
src/video_core/renderer_vulkan/vk_pipeline_cache.cpp

@@ -286,7 +286,10 @@ PipelineCache::PipelineCache(RasterizerVulkan& rasterizer_, const Device& device
       texture_cache{texture_cache_}, shader_notify{shader_notify_},
       use_asynchronous_shaders{Settings::values.use_asynchronous_shaders.GetValue()},
       use_vulkan_pipeline_cache{Settings::values.use_vulkan_driver_pipeline_cache.GetValue()},
-      workers(std::max(std::thread::hardware_concurrency(), 2U) - 1, "VkPipelineBuilder"),
+      workers(device.GetDriverID() == VK_DRIVER_ID_QUALCOMM_PROPRIETARY
+                  ? 1
+                  : (std::max(std::thread::hardware_concurrency(), 2U) - 1),
+              "VkPipelineBuilder"),
       serialization_thread(1, "VkPipelineSerialization") {
     const auto& float_control{device.FloatControlProperties()};
     const VkDriverId driver_id{device.GetDriverID()};