From e6e3d18ea2e8d0cd48d2ab82433e0590bf66bacb Mon Sep 17 00:00:00 2001 From: woutermans Date: Sun, 18 Oct 2026 21:27:26 +0200 Subject: [PATCH] release: install.sh covers the engine's CNN models e and f The models list and its completeness check (have) only knew rr-* and k/m/l: an up-to-date stamp skipped the builder, so engine\e and engine\f (the DLSS 3 CNN, the RDNA2 route) were never built on installs that already had the other models, and copy_models skipped them from the shared cache. The prompt now names the RDNA2 route. --- install.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/install.sh b/install.sh index c0988ef..412e543 100755 --- a/install.sh +++ b/install.sh @@ -167,14 +167,14 @@ if [[ ! -f "$BUILDER" ]]; then [[ "$DO_ENGINE" != 1 ]] || fail "missing $BUILDER (this release has no engine-model builder)" done_msg; exit 0 fi -models=(rr-d rr-e rr-f k k-ldr m m-ldr l l-ldr) +models=(rr-d rr-e rr-f k k-ldr m m-ldr l l-ldr e f) # One build serves every game with the same DLLs and builder: the key covers both and the accuracy choice. key() { # key EXACT(0|1) { echo "exact=$1" sha256sum -- "$RUNTIME/nvngx_dlss.dll" "$RUNTIME/nvngx_dlssd.dll" 2>/dev/null | cut -d' ' -f1 (cd "$RUNTIME/tools" && find . -type f ! -name '*.pyc' -print0 | LC_ALL=C sort -z | xargs -0 sha256sum); } | sha256sum | cut -c1-16 } -have() { local m; for m in "${models[@]}"; do [[ -f "$1/$m/model.json" || -f "$1/$m/rr.txt" ]] || return 1; done; } +have() { local m; for m in "${models[@]}"; do [[ -f "$1/$m/model.json" || -f "$1/$m/rr.txt" || -f "$1/$m/e.txt" ]] || return 1; done; } STAMP="$RUNTIME/engine/.d4r-models" if [[ "$EXACT" == ask ]]; then EXACT=0 @@ -190,6 +190,7 @@ if [[ "$DO_ENGINE" == ask ]]; then echo "Set up d4r's own DLSS engine (recommended)?" echo ' + Faster on RDNA4: DLSS 4 / 4.5 and Ray Reconstruction run on d4r'"'"'s Vulkan engine instead of NVIDIA'"'"'s kernels' echo ' through CUDA emulation (for example Ray Reconstruction at 720p -> 4K in about 3.6 ms per frame).' + echo ' + On RDNA2 (Steam Deck) it is the route for DLSS 3'"'"'s CNN presets E and F: those models run without cooperative matrices.' echo ' + Lower latency: the game shows the upscaled result of the frame it just rendered, not an older one.' echo ' + No minute-long freeze while DLSS'"'"'s CUDA kernels compile the first time a model is used.' echo ' - Longer setup, once: building its models takes a minute or two (it renders a test frame per model'