summaryrefslogtreecommitdiff
path: root/src/yuzu_cmd
diff options
context:
space:
mode:
authorGravatar Wollnashorn2022-12-30 14:50:07 +0100
committerGravatar Wollnashorn2023-01-05 21:02:44 +0100
commit16809c1fa7e2b4fb798749030645deaec79a2381 (patch)
treee43ef31843da210165c529494652014a660268e6 /src/yuzu_cmd
parentMerge pull request #9557 from FernandoS27/ooops-i-killed-the-shitty-drivers (diff)
downloadyuzu-16809c1fa7e2b4fb798749030645deaec79a2381.tar.gz
yuzu-16809c1fa7e2b4fb798749030645deaec79a2381.tar.xz
yuzu-16809c1fa7e2b4fb798749030645deaec79a2381.zip
video_core/vulkan: Added `VkPipelineCache` to store Vulkan pipelines
As an optional feature which can be enabled in the advanced graphics configuration, all pipelines that get built at the initial shader loading are stored in a VkPipelineCache object and are dumped to the disk. These vendor specific pipeline cache files are located at `/shader/GAME_ID/vulkan_pipelines.bin`. This feature was mainly added because of an issue with the AMD driver (see yuzu-emu#8507) causing invalidation of the cache files the driver builds automatically.
Diffstat (limited to 'src/yuzu_cmd')
-rw-r--r--src/yuzu_cmd/config.cpp1
-rw-r--r--src/yuzu_cmd/default_ini.h4
2 files changed, 5 insertions, 0 deletions
diff --git a/src/yuzu_cmd/config.cpp b/src/yuzu_cmd/config.cpp
index 1e45e57bc..b2d690bb6 100644
--- a/src/yuzu_cmd/config.cpp
+++ b/src/yuzu_cmd/config.cpp
@@ -321,6 +321,7 @@ void Config::ReadValues() {
321 ReadSetting("Renderer", Settings::values.accelerate_astc); 321 ReadSetting("Renderer", Settings::values.accelerate_astc);
322 ReadSetting("Renderer", Settings::values.use_fast_gpu_time); 322 ReadSetting("Renderer", Settings::values.use_fast_gpu_time);
323 ReadSetting("Renderer", Settings::values.use_pessimistic_flushes); 323 ReadSetting("Renderer", Settings::values.use_pessimistic_flushes);
324 ReadSetting("Renderer", Settings::values.use_vulkan_driver_pipeline_cache);
324 325
325 ReadSetting("Renderer", Settings::values.bg_red); 326 ReadSetting("Renderer", Settings::values.bg_red);
326 ReadSetting("Renderer", Settings::values.bg_green); 327 ReadSetting("Renderer", Settings::values.bg_green);
diff --git a/src/yuzu_cmd/default_ini.h b/src/yuzu_cmd/default_ini.h
index 6fcf04e1b..7f8c8af0c 100644
--- a/src/yuzu_cmd/default_ini.h
+++ b/src/yuzu_cmd/default_ini.h
@@ -350,6 +350,10 @@ use_fast_gpu_time =
350# 0: Off (default), 1: On 350# 0: Off (default), 1: On
351use_pessimistic_flushes = 351use_pessimistic_flushes =
352 352
353# Enables storing a cache file for Vulkan pipelines, which can significantly improve shader load time.
354# 0: Off (default), 1: On
355use_vulkan_driver_pipeline_cache =
356
353# Whether to use garbage collection or not for GPU caches. 357# Whether to use garbage collection or not for GPU caches.
354# 0 (default): Off, 1: On 358# 0 (default): Off, 1: On
355use_caches_gc = 359use_caches_gc =