Name NVIDIA's Shader Cache Size limit when the library warm finds the driver's cache cold.

The driver keeps the prepared shaders' libraries in its shader cache, and under Windows that cache has a size limit
set in NVIDIA's settings. A limit smaller than the set drops the oldest libraries as new ones come in (a 2048 MB cache
could not hold them on the reporter's RTX 5070 Ti), so every start builds them again in the background and play
stutters until that is done. The cold lines of the library warm now say so on NVIDIA under Windows, most plainly when
the cache is cold right after a warm that finished on the same driver; the build kit's notes and the example file say
it too. tests/warm_hint_check.py checks which hint each case gets.

From pull request #403 by tarballz; two conflicts resolved (an include and the build kit's notes).

Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
This commit is contained in:
chrg6
2026-11-10 09:13:35 -05:00
parent 25e31815fd
commit a1fcbb0b07
7 changed files with 179 additions and 3 deletions

View File

@@ -144,6 +144,10 @@ beside the game.
"Preparing shaders" once while the driver rebuilds them. With a driver that has Vulkan's graphics pipeline library
it lasts at most about 20 seconds once the shaders are translated, and the remaining pipelines are built in the
background while you play.
- On an NVIDIA card, set **Shader Cache Size** to **Unlimited** in the NVIDIA app (Graphics, Global Settings). The
driver keeps the prepared shaders' libraries in that cache, and a smaller limit drops the oldest as new ones come in
(a 2048 MB cache could not hold them): every start then builds them again in the background, and play stutters, with
some things missing for a few frames, until that is done. The log's `library warm` lines say when this happens.
- **Screen** in the menu has Texture filtering (anisotropic, up to 16x, at once), Upscaling (DLSS on NVIDIA RTX cards,
FSR 3.1 on any card where `amd_fidelityfx_vk.dll` loads), Frame generation (NVIDIA DLSS on RTX 40 and 50 cards, with
a DLSS multiplier of 2x, or 3x and 4x on RTX 50 cards; FSR 3.1 on any card where it loads; it needs DLSS or FSR 3.1