diff options
| author | 2022-12-30 14:50:07 +0100 | |
|---|---|---|
| committer | 2023-01-05 21:02:44 +0100 | |
| commit | 16809c1fa7e2b4fb798749030645deaec79a2381 (patch) | |
| tree | e43ef31843da210165c529494652014a660268e6 /src/yuzu_cmd | |
| parent | Merge pull request #9557 from FernandoS27/ooops-i-killed-the-shitty-drivers (diff) | |
| download | yuzu-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.cpp | 1 | ||||
| -rw-r--r-- | src/yuzu_cmd/default_ini.h | 4 |
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 |
| 351 | use_pessimistic_flushes = | 351 | use_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 | ||
| 355 | use_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 |
| 355 | use_caches_gc = | 359 | use_caches_gc = |