[Tracking] Builder, setup and updates: errors, disk space, slow builds and shader preparation #2505

Open
opened 2026-11-11 21:21:42 +00:00 by NotRexed · 7 comments
NotRexed commented 2026-11-11 21:21:42 +00:00 (Migrated from github.com)

Attach the Builder's log (or the error text) and say where the game folder is.

Reports

  • #1148: Can't extract when LOCALAPPDATA is symlinked
  • #1388: Installer completely eats up remaining disk space
  • #1617: build stop at beginning
  • #1674: Build is Taking way to long compared to 2.0.11
  • #1896: Setup: fall back when Windows' tar.exe is missing
  • #2005: Builder: a dump with a 5.5 GB zeroed stretch (11,935 Tex files) builds with stand-ins and the game crashes at (v2.0.14 (hookshot v2.0.14, source 3a9998c3; Hookshot Builder v2.0.14, ; NVIDIA GeForce RTX 5090, NVIDIA 621.14 (driver 0x9b438000, Vulkan 1.4;; AMD Ryzen 7 7800X3D, 32 GB, Windows 11 Pro 25H2 (build 26200))
  • #2085: wont update to lastest release
  • #2129: After an update, enough times the game won't build
  • #2184: Can't select the build language anymore (pull request #2284)
  • #2218: Shader prepare time
  • #2237: Warn users about damaged-dump texture stand-ins where they will see it (Builder UI, game folder note)
  • #2242: The Builder's headless shader prep is stopped by its 15-minute silence watchdog on slow (AMD) drivers, pushing
  • #2257: The compile step fails at the end if you change the default folder for the build files. (pull request #2137)
  • #2308: PATH
  • #2320: Add GameTitle Directory
  • #2348: Permission Error Denied
  • #2361: Builder: pre-#456 unpacked romfs retains outer .nup Zstd frame on damaged .zs files, bypassing damaged_game_fi (pull request #2391)
  • #2364: Hookshot Builder v2.1.0 on Windows 10.0.26200.0 update gives error
  • #2423: HookshotBuilder incorrectly requests .NET Desktop Runtime Fresh download of the official v2.1.0 HookshotBuilde
  • #2473: The DLSS and FSR 4 tick boxes should be more visible in the builder.

These reports were collected here so one fix closes them all and the open list stays readable. Add new details as a comment here (version, card and driver, where in the game, and the hookshot_log.txt from the game folder).

Attach the Builder's log (or the error text) and say where the game folder is. ## Reports - #1148: Can't extract when LOCALAPPDATA is symlinked - #1388: Installer completely eats up remaining disk space - #1617: build stop at beginning - #1674: Build is Taking way to long compared to 2.0.11 - #1896: Setup: fall back when Windows' tar.exe is missing - #2005: Builder: a dump with a 5.5 GB zeroed stretch (11,935 Tex files) builds with stand-ins and the game crashes at (v2.0.14 (hookshot v2.0.14, source 3a9998c3; Hookshot Builder v2.0.14, ; NVIDIA GeForce RTX 5090, NVIDIA 621.14 (driver 0x9b438000, Vulkan 1.4;; AMD Ryzen 7 7800X3D, 32 GB, Windows 11 Pro 25H2 (build 26200)) - #2085: wont update to lastest release - #2129: After an update, enough times the game won't build - #2184: Can't select the build language anymore (pull request #2284) - #2218: Shader prepare time - #2237: Warn users about damaged-dump texture stand-ins where they will see it (Builder UI, game folder note) - #2242: The Builder's headless shader prep is stopped by its 15-minute silence watchdog on slow (AMD) drivers, pushing - #2257: The compile step fails at the end if you change the default folder for the build files. (pull request #2137) - #2308: PATH - #2320: Add GameTitle Directory - #2348: Permission Error Denied - #2361: Builder: pre-#456 unpacked romfs retains outer .nup Zstd frame on damaged .zs files, bypassing damaged_game_fi (pull request #2391) - #2364: Hookshot Builder v2.1.0 on Windows 10.0.26200.0 update gives error - #2423: HookshotBuilder incorrectly requests .NET Desktop Runtime Fresh download of the official v2.1.0 HookshotBuilde - #2473: The DLSS and FSR 4 tick boxes should be more visible in the builder. These reports were collected here so one fix closes them all and the open list stays readable. Add new details as a comment here (version, card and driver, where in the game, and the hookshot_log.txt from the game folder).
NotRexed commented 2026-11-11 21:32:02 +00:00 (Migrated from github.com)

Another report collected here: #2512: Aesthetic fix: Builder top bar thickness

Another report collected here: #2512: Aesthetic fix: Builder top bar thickness
NotRexed commented 2026-11-12 03:07:24 +00:00 (Migrated from github.com)

More reports of this, collected here:

  • #2522: internet issues
  • #2576: Record the compile flags a build actually used
  • #2577: An update rebuilds the game with the flags it was built with
More reports of this, collected here: - #2522: internet issues - #2576: Record the compile flags a build actually used - #2577: An update rebuilds the game with the flags it was built with
Owner

@kafasam commented on GitHub · 2026-11-12 06:19 UTC · original

A data point from the RX 6700 XT (i7-12700K, Windows, AMD proprietary): with current main's per-stage progress logging, the Builder's headless preparation completes on this machine for the first time. The same machine saw the 15-minute silence watchdog stop the preparation three times before (reported in #2242: the headless game would go quiet during the pipeline stages and be stopped, pushing everything onto first start).

This run: every 10 s a progress line kept the watchdog fed through all stages — the pipeline prediction (55,391 pipelines), the noted pipelines (28,347), and the precompile finished in one headless pass:

precompile: 10392 programs, 17955 graphics and 9691 compute pipelines, 701 mesh fallback programs in 5509705 ms

— 92 minutes end to end, no stall, no kill. The line-per-10-seconds alone appears to be what lets an AMD-slow preparation survive; nothing else changed on this machine. One caveat worth noting for anyone reproducing: the resulting driver cache is keyed to the build folder's executable path — running the game from a different folder after copying it starts the interactive preparation over, so the bake pays off for the folder it ran in.

> [@kafasam](https://github.com/kafasam) commented on GitHub · 2026-11-12 06:19 UTC · [original](https://github.com/NotRexed/Hookshot/issues/2505#issuecomment-6816324754) A data point from the RX 6700 XT (i7-12700K, Windows, AMD proprietary): with current main's per-stage progress logging, the Builder's headless preparation **completes** on this machine for the first time. The same machine saw the 15-minute silence watchdog stop the preparation three times before (reported in #2242: the headless game would go quiet during the pipeline stages and be stopped, pushing everything onto first start). This run: every 10 s a progress line kept the watchdog fed through all stages — the pipeline prediction (55,391 pipelines), the noted pipelines (28,347), and the precompile finished in one headless pass: `precompile: 10392 programs, 17955 graphics and 9691 compute pipelines, 701 mesh fallback programs in 5509705 ms` — 92 minutes end to end, no stall, no kill. The line-per-10-seconds alone appears to be what lets an AMD-slow preparation survive; nothing else changed on this machine. One caveat worth noting for anyone reproducing: the resulting driver cache is keyed to the build folder's executable path — running the game from a different folder after copying it starts the interactive preparation over, so the bake pays off for the folder it ran in. <!-- github-sync:c:6816324754 -->
Owner

@Junpeixix commented on GitHub · 2026-11-12 08:37 UTC · original

An update to #1388: I can build the game just fine, without it eating up all my remaining space, if I set the build/install path to anywhere on my C: drive. However, when I try and move the folder to my D: drive following the installation, I get somewhat of an odd error (see screenshot). For reference, the folder is only 33.6 GB.

image
> [@Junpeixix](https://github.com/Junpeixix) commented on GitHub · 2026-11-12 08:37 UTC · [original](https://github.com/NotRexed/Hookshot/issues/2505#issuecomment-6818851119) An update to #1388: I can build the game just fine, without it eating up all my remaining space, if I set the build/install path to anywhere on my C: drive. However, when I try and move the folder to my D: drive following the installation, I get somewhat of an odd error (see screenshot). For reference, the folder is only 33.6 GB. <img width="477" height="262" alt="image" src="https://github.com/user-attachments/assets/539ab06d-07ad-49fa-9c82-da7e86e10bca" /> <!-- github-sync:c:6818851119 -->
Owner

@Waryxxful commented on GitHub · 2026-11-12 11:21 UTC · original

First start on a card without mesh shaders: RX 5600 XT 6 GB (RDNA1), Adrenalin 26.10.1, Windows 11, Ryzen 5 5600X, 24 GB. Main de866017.

Times per part, from the log:

part time notes
Builder --prepare-shaders, shader programs ~18 programs a minute for the first 10 min (215 of 38,809), then stopped by me warm_compute runs first. It builds every compute variant (9,691) in the driver, seconds each on AMD. The bar barely moves, and the log's waiting: nothing ... has finished for 41 s reads like a hang
First start, shader programs 120 s for 38,809 (70 failed: 69 networks left out on purpose, plus 79116b290d46542f, the branch at instruction 16404 goes outside the program) The compute warm pass was skipped (hookshot_prepared.bin.warming was left by the stopped builder run), so this is translation alone
First start, predicted pipelines 3,603 s for 51,054 driver shader cache 2305 → 3393 MB. Next start: the driver's shader cache kept 31 of 32 predicted pipelines asked, so the AMD driver does keep them
Next start, noted pipelines 2,355 s for 28,668
The start after that 10.8 s

Three more things from the same runs:

  • Memory during the noted pipelines. Private memory reached 29.4-30.6 GB (both times, near the start of that part), with 0.3-0.4 GB of the 24 GB left free. The working set was 9-12 GB. This could be what closes the game on smaller PCs during "Building pipelines": #1001's RX 580 4 GB on Fedora reports exactly that on v2.1.0. Samples every 30 s are available.
  • A close during the noted pipelines keeps none of that part. The close logged the preparation did not stop within 10 s: closing anyway, and the process ended before prepare_with_screen's pipeline_cache_save(true). mkw_vk_pipelines.bin stayed at its start size, and the next start began the noted pipelines from zero. On this card the part takes ~40 min, so a periodic save within precompile_run (or one at the 10 s limit) would keep most of it.
  • The control bridge's wait answers within the hour. A script waiting for frame 1 across a long first start has to wait again: scripts/hookshot_bench.py in #2714 does that.
> [@Waryxxful](https://github.com/Waryxxful) commented on GitHub · 2026-11-12 11:21 UTC · [original](https://github.com/NotRexed/Hookshot/issues/2505#issuecomment-6822203520) **First start on a card without mesh shaders: RX 5600 XT 6 GB (RDNA1), Adrenalin 26.10.1, Windows 11, Ryzen 5 5600X, 24 GB. Main `de866017`.** Times per part, from the log: | part | time | notes | |---|---|---| | Builder `--prepare-shaders`, shader programs | ~18 programs a minute for the first 10 min (215 of 38,809), then stopped by me | `warm_compute` runs first. It builds every compute variant (9,691) in the driver, seconds each on AMD. The bar barely moves, and the log's `waiting: nothing ... has finished for 41 s` reads like a hang | | First start, shader programs | 120 s for 38,809 (70 failed: 69 networks left out on purpose, plus `79116b290d46542f`, `the branch at instruction 16404 goes outside the program`) | The compute warm pass was skipped (`hookshot_prepared.bin.warming` was left by the stopped builder run), so this is translation alone | | First start, predicted pipelines | **3,603 s** for 51,054 | `driver shader cache` 2305 → 3393 MB. Next start: `the driver's shader cache kept 31 of 32 predicted pipelines asked`, so the AMD driver does keep them | | Next start, noted pipelines | **2,355 s** for 28,668 | | | The start after that | **10.8 s** | | Three more things from the same runs: - **Memory during the noted pipelines.** Private memory reached **29.4-30.6 GB** (both times, near the start of that part), with **0.3-0.4 GB** of the 24 GB left free. The working set was 9-12 GB. This could be what closes the game on smaller PCs during "Building pipelines": #1001's RX 580 4 GB on Fedora reports exactly that on v2.1.0. Samples every 30 s are available. - **A close during the noted pipelines keeps none of that part.** The close logged `the preparation did not stop within 10 s: closing anyway`, and the process ended before `prepare_with_screen`'s `pipeline_cache_save(true)`. `mkw_vk_pipelines.bin` stayed at its start size, and the next start began the noted pipelines from zero. On this card the part takes ~40 min, so a periodic save within `precompile_run` (or one at the 10 s limit) would keep most of it. - **The control bridge's `wait` answers within the hour.** A script waiting for frame 1 across a long first start has to wait again: `scripts/hookshot_bench.py` in #2714 does that. <!-- github-sync:c:6822203520 -->
Owner

@vrwallace commented on GitHub · 2026-11-12 13:44 UTC · original

Reporting startup pipeline-compilation OOM kills on v2.1.0 (source e561602e), with a confirmed startup workaround. Related to #775, but this is an Intel Arc Pro B50 discrete GPU and a newer Hookshot version.

Environment:

  • Zorin OS 18.1 (Ubuntu noble base), kernel 7.0.0-42-generic.
  • About 46 GiB system RAM and 2 GiB swap.
  • Selected GPU: Intel Arc Pro B50 Graphics (BMG G21), Vulkan 1.4, driver reported as 0x6402008.
  • Launched using the game folder's hookshot shell launcher, on a local disk.

The launcher starts successfully, but the game is killed while preparing pipelines. The kernel recorded three Hookshot OOM kills across November 11–12. Selected kernel evidence (timestamps are local):

Nov 11 21:14:26 Out of memory: Killed process 2698967 (hookshot) total-vm:45500316kB, anon-rss:40549664kB
Nov 12 02:08:49 Out of memory: Killed process 2713222 (hookshot) total-vm:587602316kB, anon-rss:40534072kB
Nov 12 07:10:04 Out of memory: Killed process 2948019 (hookshot) total-vm:582626264kB, anon-rss:40738128kB

The latest failed run ended around pipelines 1085 of 20463, 5% of all. The preceding run's log ended around predicted pipelines 38475 of 67106, 58% of all. These are kernel OOM kills, rather than an exception reported by the shell launcher. The exact allocation/driver cause has not been isolated.

Workaround tested: add this immediately after set -eu in the game-folder shell launcher, so its builder/game child inherits it:

export RX_VK_PRECOMPILE=${RX_VK_PRECOMPILE:-0}

This defaults startup precompilation off while allowing RX_VK_PRECOMPILE=1 to restore it. No shader caches were deleted and no game binaries were patched. With this change the game reached the Zelda title / New Game screen, and the user confirmed it worked. An early process sample was about 2.5 GiB RSS; this is not a measured peak. Full gameplay stability has not been tested, and on-demand compilation may cause stutters.

Could startup precompilation be bounded by available memory, or offer a persistent skip/fallback after OOM failures?

Latest failed hookshot_log.txt (local username/path redacted)
[hos host] hookshot v2.1.0 (source e561602e)
[hos host] mem: guest memory stays host-pointer imports for the GPU (slow submissions on AMD): /dev/udmabuf cannot be opened
[hos host] boot: image 96 MB at 0x80000000, 9809 MB of memory for the game
[hos host] boot: 47354 MB of memory, 2047 MB of swap
[hos MainThread] boot: _init_libc0 (0x85717e50)
[hos MainThread] boot: nnosInitialize (0x8510f720)
[hos MainThread] boot: _init_libc1 (0x85717e60)
[hos MainThread] boot: nninitStartup (0x8262bb10)
[hos MainThread] heap: 6894 MB at 0x1000000000
[hos MainThread] boot: _init_libc2 (0x85717e80)
[hos MainThread] boot: main DT_INIT (0x812377e0)
[a64] unimplemented import _ZN2nn2ro12ProtectRelroEPKvS2_S2_S2_S2_ (lr 0x81237908)
[hos MainThread] boot: subsdk0 DT_INIT (0x84ec0040)
[hos MainThread] boot: sdk DT_INIT (0x84fa0060)
[hos MainThread] boot: nnMain (0x81222cd0)
[hos sead::MainThread] fs: mounted content: -> <game-folder>/romfs
[hos sead::MainThread] oe: language en-US (language.txt)
[hos sead::MainThread] oe: output resolution 2048x1152 (the game's)
[hos sead::MainThread] oe: GetCurrentGraphicsScale -> 1.00
[hos sead::MainThread] gs: BootGraphicsSystem(0, 0): no graphics server yet (headless)
[a64] unimplemented import _ZN2nn2vi36SetDisplay120HzRefreshRateCapabilityEPNS0_7DisplayEb (lr 0x8348bf64)
[hos sead::MainThread] nvn: native NVN layer: 427 procs
[hos sead::MainThread] nvn: native NVN device (flags 0): no Switch GPU emulation
[hos sead::MainThread] nvn: window origin upper left
[hos sead::MainThread] nvn: depth mode near = -w (GL)
[hos sead::MainThread] nvn: texture pool of 33068 descriptors
[hos sead::MainThread] vi: GetNativeWindow -> 0x1102400
[hos sead::MainThread] nvn: window of 3 textures (3 active), 2560x1440 format 0x25
[hos host] vk: device 0: Intel(R) Arc(tm) Pro B50 Graphics (BMG G21), Vulkan 1.4, driver 0x6402008, type 2
[hos host] vk: device 1: AMD Radeon 740M Graphics (RADV PHOENIX2), Vulkan 1.4, driver 0x6402008, type 1
[hos host] vk: device 2: llvmpipe (LLVM 20.1.2, 256 bits), Vulkan 1.4, driver 0x6402008, type 4
[hos host] vk: subgroups: default 32 lanes, 16-32, pinned to 32 on stages 0xe0
[hos host] vk: mesh shaders row: Automatic (native)
[hos host] vk: robust buffer access on
[hos host] vk: colour outputs NaN-guarded
[hos host] vk: positions invariant (not an NVIDIA card)
[hos host] vk: matrix multiplies in software (the cooperative matrices lack 16x8x16 f16)
[hos host] vk: Intel(R) Arc(tm) Pro B50 Graphics (BMG G21), Vulkan 1.4, driver 0x6402008; mesh shaders yes, host memory import yes, pipeline libraries yes
[hos host] vk: surface caps images 3..0 extent 1280x720..1280x720 usage 0x8009f alpha 0x9 transform 0x1
[hos host] vk: swapchain 1280x720, 4 images, mailbox
[hos host] vk: guest memory imported in place (alignment 4096)
[hos host] vk: replay ready (window; push descriptors yes (32), extended dynamic state 3 yes, custom border colours yes)
[hos host] vk: fsr3: AMD FSR 3.1 can run on this GPU
[hos host] menu: the upscalers asked in the background while the start-up screen shows (0 ms)
[hos host] vk: pipeline cache <game-folder>/mkw_vk_pipelines.bin (0 KB)
[hos host] vk: ui: the game's own menu font, from its files
[hos host] vk: ui: Dear ImGui 1.92.9b on the window's images (format 44)
[hos host] vk: images from a pool of 128 MB blocks (memory type 0)
[hos host] hid: SDL controller support ready (DualSense, DualShock 4, Switch Pro, Xbox and others)
[hos host] hid: controller "8BitDo Ultimate 2C Wireless Controller" connected (SDL)
[hos sead::MainThread] prompts: auto: controller "8BitDo Ultimate 2C Wireless Controller": xbox
[hos host] discord: no Discord client is running; trying again every 15 s
[hos sead::MainThread] applet: render target pool 512 MB (the game's 305 MB)
[a64] unimplemented import _ZN2nn3aoc17CountAddOnContentEv (lr 0x83392a38)
[hos host] vk: program cache <game-folder>/hookshot_programs.bin: 46604 program keys kept, 6562069 KB
[hos host] vk: precompile: compute programs: every kept one (0 keys listed as dispatched in play)
[hos host] vk: start-up: pipelines 50 of 20463, 0% of all
[hos host] vk: start-up: pipelines 50 of 20463, 0% of all
[hos host] vk: start-up: pipelines 76 of 20463, 0% of all
[hos host] vk: start-up: pipelines 194 of 20463, 1% of all
[hos host] vk: start-up: pipelines 285 of 20463, 1% of all
[hos host] vk: start-up: pipelines 302 of 20463, 1% of all
[hos host] vk: start-up: pipelines 307 of 20463, 2% of all
[hos host] vk: start-up: pipelines 309 of 20463, 2% of all
[hos host] vk: start-up: pipelines 342 of 20463, 2% of all
[hos host] vk: start-up: pipelines 389 of 20463, 2% of all
[hos host] vk: start-up: pipelines 482 of 20463, 2% of all
[hos host] vk: start-up: pipelines 601 of 20463, 3% of all
[hos host] vk: start-up: pipelines 699 of 20463, 3% of all
[hos host] vk: start-up: pipelines 706 of 20463, 3% of all
[hos host] vk: start-up: pipelines 752 of 20463, 4% of all
[hos host] vk: start-up: pipelines 796 of 20463, 4% of all
[hos host] vk: start-up: pipelines 875 of 20463, 4% of all
[hos host] vk: start-up: pipelines 903 of 20463, 4% of all
[hos host] vk: start-up: pipelines 1055 of 20463, 5% of all
[hos host] vk: start-up: pipelines 1085 of 20463, 5% of all

> [@vrwallace](https://github.com/vrwallace) commented on GitHub · 2026-11-12 13:44 UTC · [original](https://github.com/NotRexed/Hookshot/issues/2505#issuecomment-6825292390) Reporting startup pipeline-compilation OOM kills on **v2.1.0 (source e561602e)**, with a confirmed startup workaround. Related to #775, but this is an Intel Arc Pro B50 discrete GPU and a newer Hookshot version. Environment: - Zorin OS 18.1 (Ubuntu noble base), kernel 7.0.0-42-generic. - About 46 GiB system RAM and 2 GiB swap. - Selected GPU: Intel Arc Pro B50 Graphics (BMG G21), Vulkan 1.4, driver reported as `0x6402008`. - Launched using the game folder's `hookshot` shell launcher, on a local disk. The launcher starts successfully, but the game is killed while preparing pipelines. The kernel recorded three Hookshot OOM kills across November 11–12. Selected kernel evidence (timestamps are local): ```text Nov 11 21:14:26 Out of memory: Killed process 2698967 (hookshot) total-vm:45500316kB, anon-rss:40549664kB Nov 12 02:08:49 Out of memory: Killed process 2713222 (hookshot) total-vm:587602316kB, anon-rss:40534072kB Nov 12 07:10:04 Out of memory: Killed process 2948019 (hookshot) total-vm:582626264kB, anon-rss:40738128kB ``` The latest failed run ended around `pipelines 1085 of 20463, 5% of all`. The preceding run's log ended around `predicted pipelines 38475 of 67106, 58% of all`. These are kernel OOM kills, rather than an exception reported by the shell launcher. The exact allocation/driver cause has not been isolated. **Workaround tested:** add this immediately after `set -eu` in the game-folder shell launcher, so its builder/game child inherits it: ```sh export RX_VK_PRECOMPILE=${RX_VK_PRECOMPILE:-0} ``` This defaults startup precompilation off while allowing `RX_VK_PRECOMPILE=1` to restore it. No shader caches were deleted and no game binaries were patched. With this change the game reached the Zelda title / New Game screen, and the user confirmed it worked. An early process sample was about 2.5 GiB RSS; this is not a measured peak. Full gameplay stability has not been tested, and on-demand compilation may cause stutters. Could startup precompilation be bounded by available memory, or offer a persistent skip/fallback after OOM failures? <details> <summary>Latest failed hookshot_log.txt (local username/path redacted)</summary> ```text [hos host] hookshot v2.1.0 (source e561602e) [hos host] mem: guest memory stays host-pointer imports for the GPU (slow submissions on AMD): /dev/udmabuf cannot be opened [hos host] boot: image 96 MB at 0x80000000, 9809 MB of memory for the game [hos host] boot: 47354 MB of memory, 2047 MB of swap [hos MainThread] boot: _init_libc0 (0x85717e50) [hos MainThread] boot: nnosInitialize (0x8510f720) [hos MainThread] boot: _init_libc1 (0x85717e60) [hos MainThread] boot: nninitStartup (0x8262bb10) [hos MainThread] heap: 6894 MB at 0x1000000000 [hos MainThread] boot: _init_libc2 (0x85717e80) [hos MainThread] boot: main DT_INIT (0x812377e0) [a64] unimplemented import _ZN2nn2ro12ProtectRelroEPKvS2_S2_S2_S2_ (lr 0x81237908) [hos MainThread] boot: subsdk0 DT_INIT (0x84ec0040) [hos MainThread] boot: sdk DT_INIT (0x84fa0060) [hos MainThread] boot: nnMain (0x81222cd0) [hos sead::MainThread] fs: mounted content: -> <game-folder>/romfs [hos sead::MainThread] oe: language en-US (language.txt) [hos sead::MainThread] oe: output resolution 2048x1152 (the game's) [hos sead::MainThread] oe: GetCurrentGraphicsScale -> 1.00 [hos sead::MainThread] gs: BootGraphicsSystem(0, 0): no graphics server yet (headless) [a64] unimplemented import _ZN2nn2vi36SetDisplay120HzRefreshRateCapabilityEPNS0_7DisplayEb (lr 0x8348bf64) [hos sead::MainThread] nvn: native NVN layer: 427 procs [hos sead::MainThread] nvn: native NVN device (flags 0): no Switch GPU emulation [hos sead::MainThread] nvn: window origin upper left [hos sead::MainThread] nvn: depth mode near = -w (GL) [hos sead::MainThread] nvn: texture pool of 33068 descriptors [hos sead::MainThread] vi: GetNativeWindow -> 0x1102400 [hos sead::MainThread] nvn: window of 3 textures (3 active), 2560x1440 format 0x25 [hos host] vk: device 0: Intel(R) Arc(tm) Pro B50 Graphics (BMG G21), Vulkan 1.4, driver 0x6402008, type 2 [hos host] vk: device 1: AMD Radeon 740M Graphics (RADV PHOENIX2), Vulkan 1.4, driver 0x6402008, type 1 [hos host] vk: device 2: llvmpipe (LLVM 20.1.2, 256 bits), Vulkan 1.4, driver 0x6402008, type 4 [hos host] vk: subgroups: default 32 lanes, 16-32, pinned to 32 on stages 0xe0 [hos host] vk: mesh shaders row: Automatic (native) [hos host] vk: robust buffer access on [hos host] vk: colour outputs NaN-guarded [hos host] vk: positions invariant (not an NVIDIA card) [hos host] vk: matrix multiplies in software (the cooperative matrices lack 16x8x16 f16) [hos host] vk: Intel(R) Arc(tm) Pro B50 Graphics (BMG G21), Vulkan 1.4, driver 0x6402008; mesh shaders yes, host memory import yes, pipeline libraries yes [hos host] vk: surface caps images 3..0 extent 1280x720..1280x720 usage 0x8009f alpha 0x9 transform 0x1 [hos host] vk: swapchain 1280x720, 4 images, mailbox [hos host] vk: guest memory imported in place (alignment 4096) [hos host] vk: replay ready (window; push descriptors yes (32), extended dynamic state 3 yes, custom border colours yes) [hos host] vk: fsr3: AMD FSR 3.1 can run on this GPU [hos host] menu: the upscalers asked in the background while the start-up screen shows (0 ms) [hos host] vk: pipeline cache <game-folder>/mkw_vk_pipelines.bin (0 KB) [hos host] vk: ui: the game's own menu font, from its files [hos host] vk: ui: Dear ImGui 1.92.9b on the window's images (format 44) [hos host] vk: images from a pool of 128 MB blocks (memory type 0) [hos host] hid: SDL controller support ready (DualSense, DualShock 4, Switch Pro, Xbox and others) [hos host] hid: controller "8BitDo Ultimate 2C Wireless Controller" connected (SDL) [hos sead::MainThread] prompts: auto: controller "8BitDo Ultimate 2C Wireless Controller": xbox [hos host] discord: no Discord client is running; trying again every 15 s [hos sead::MainThread] applet: render target pool 512 MB (the game's 305 MB) [a64] unimplemented import _ZN2nn3aoc17CountAddOnContentEv (lr 0x83392a38) [hos host] vk: program cache <game-folder>/hookshot_programs.bin: 46604 program keys kept, 6562069 KB [hos host] vk: precompile: compute programs: every kept one (0 keys listed as dispatched in play) [hos host] vk: start-up: pipelines 50 of 20463, 0% of all [hos host] vk: start-up: pipelines 50 of 20463, 0% of all [hos host] vk: start-up: pipelines 76 of 20463, 0% of all [hos host] vk: start-up: pipelines 194 of 20463, 1% of all [hos host] vk: start-up: pipelines 285 of 20463, 1% of all [hos host] vk: start-up: pipelines 302 of 20463, 1% of all [hos host] vk: start-up: pipelines 307 of 20463, 2% of all [hos host] vk: start-up: pipelines 309 of 20463, 2% of all [hos host] vk: start-up: pipelines 342 of 20463, 2% of all [hos host] vk: start-up: pipelines 389 of 20463, 2% of all [hos host] vk: start-up: pipelines 482 of 20463, 2% of all [hos host] vk: start-up: pipelines 601 of 20463, 3% of all [hos host] vk: start-up: pipelines 699 of 20463, 3% of all [hos host] vk: start-up: pipelines 706 of 20463, 3% of all [hos host] vk: start-up: pipelines 752 of 20463, 4% of all [hos host] vk: start-up: pipelines 796 of 20463, 4% of all [hos host] vk: start-up: pipelines 875 of 20463, 4% of all [hos host] vk: start-up: pipelines 903 of 20463, 4% of all [hos host] vk: start-up: pipelines 1055 of 20463, 5% of all [hos host] vk: start-up: pipelines 1085 of 20463, 5% of all ``` </details> <!-- github-sync:c:6825292390 -->
Owner

@vrwallace commented on GitHub · 2026-11-12 13:46 UTC · original

Follow-up to my report above: the workaround only gets through startup; gameplay is not fixed. The user reached the title and watched the intro, then the screen went black as the 3D scene began. This appears similar to the Intel reports in #999 / #366, but the underlying cause is not confirmed.

The same process remained alive (about 11.6 GiB RSS in one sample), with no new kernel OOM or GPU-reset message observed. The log shows skipped compute dispatches while pipelines compile, followed by slow draws, and then stops reporting presented frames while occasional game-thread messages continue. A debugger attach was denied, so I do not have stacks proving a driver/compiler stall.

Selected end of log:

[hos Presentation Thread] vk: pool 0x1178821100+0x70 imported in 16.4 ms as 0x1178000000..0x117e000000 (34 imports, 290 ms in all)
[hos Presentation Thread] vk: pool 0x117a000000 remade larger (7 retired)
[hos Presentation Thread] vk: pool 0x1178000000..0x117e000000: mirror made with the GPU's contents of 1 retired pool(s)
[hos rmbl::VibrationThread] vcores: 7366 takes, 1 waits (mean 4 us, longest 0.0 ms), 1 kicks, 0 yields, 0 escapes in 7 s
[hos Presentation Thread] vk: pool 0x117e8ce780+0x40 imported in 20.7 ms as 0x1178000000..0x1180000000 (35 imports, 311 ms in all)
[hos Presentation Thread] vk: pool 0x1178000000 remade larger (8 retired)
[hos Presentation Thread] vk: pool 0x1178000000..0x1180000000: mirror made with the GPU's contents of 1 retired pool(s)
[hos Presentation Thread] vk: a clear after 38 draws of its pass (1536x864, 1 colour targets + depth, last program f8d01f6626632433): a pass of its own
[hos Presentation Thread] vk: sampler 405 is nearest: min filter 0, mag filter 0, wrap 7/7/7, lod 0..15 bias 0, aniso 1, compare 0
[hos Presentation Thread] vk: sampler anisotropy: the game asks for 1 (min filter 0, mip filter nearest, LOD bias 0; made with 16)
[hos Presentation Thread] vk: a clear after 3 draws of its pass (384x216, 1 colour targets + depth, last program ef0f65f8fb3b67b4): a pass of its own
[hos Presentation Thread] vk: a clear after 3 draws of its pass (384x216, 2 colour targets + depth, last program 6ffa31242058ad57): a pass of its own
[hos Presentation Thread] vk: sampler 423 is nearest: min filter 5, mag filter 0, wrap 7/7/7, lod 0..15 bias 0, aniso 1, compare 0
[hos Presentation Thread] vk: pool 0x7f78954000+0x5de00 imported in 2.0 ms as 0x7f78000000..0x7f79000000 (36 imports, 313 ms in all)
[hos Presentation Thread] vk: vertex format NVN 0x3 -> vk 13
[hos Presentation Thread] vk: pool 0x7fe2578400+0x75f0 imported in 2.3 ms as 0x7fe2000000..0x7fe3000000 (37 imports, 315 ms in all)
[hos Presentation Thread] vk: pool 0x7f7d295400+0x654 imported in 4.1 ms as 0x7f7c000000..0x7f7e000000 (38 imports, 320 ms in all)
[hos Presentation Thread] vk: pool 0x7f970d4600+0x19a0 imported in 2.4 ms as 0x7f97000000..0x7f98000000 (39 imports, 322 ms in all)
[hos Presentation Thread] vk: pool 0x7f9a0e9c00+0x61bc imported in 3.1 ms as 0x7f9a000000..0x7f9b000000 (40 imports, 325 ms in all)
[hos Presentation Thread] vk: pool 0x7f88b1d800+0xb16c imported in 2.7 ms as 0x7f88000000..0x7f89000000 (41 imports, 328 ms in all)
[hos Presentation Thread] vk: pool 0x7f98d54a00+0x1d38 imported in 2.7 ms as 0x7f98000000..0x7f99000000 (42 imports, 330 ms in all)
[hos Presentation Thread] vk: pool 0x7f86b9f600+0x97e0 imported in 8.0 ms as 0x7f85000000..0x7f88000000 (43 imports, 338 ms in all)
[hos Presentation Thread] vk: vertex format NVN 0xd -> vk 16
[hos Presentation Thread] vk: vertex format NVN 0xf -> vk 20
[hos Presentation Thread] vk: texture slot 0x2f17 (handle 0x18c02f17): no image for it; NVN target 1 format 0x8c 43x85x1 levels 7 gpu 0x10b9a73a00, view yes (format 0x8c target 1), wanted view type 1 use 0
[hos Presentation Thread] vk: texture slot 0x3206 (handle 0x18c03206): no image for it; NVN target 1 format 0x8b 1024x1024x1 levels 11 gpu 0x10ccf91a00, view yes (format 0x8b target 1), wanted view type 1 use 0
[hos Presentation Thread] vk: texture slot 0x2f10 (handle 0x18c02f10): no image for it; NVN target 1 format 0x8d 171x171x1 levels 8 gpu 0x10b9a67800, view yes (format 0x8d target 1), wanted view type 1 use 0
[hos Presentation Thread] vk: texture slot 0x2f05 (handle 0x18c02f05): no image for it; NVN target 1 format 0x8e 341x341x1 levels 9 gpu 0x10b9995200, view yes (format 0x8e target 1), wanted view type 1 use 0
[hos Presentation Thread] vk: texture 0x1147bf6000 12288x12288x1 x1 levels 1 NVN 0x32 -> vk 124 (385 textures, 1909 MB)
[hos Presentation Thread] vk: texture slot 0x31b4 (handle 0x18c031b4): no image for it; NVN target 1 format 0x8b 512x256x1 levels 10 gpu 0x10cc09f000, view yes (format 0x8b target 1), wanted view type 1 use 0
[hos Presentation Thread] vk: a clear after 3475 draws of its pass (12288x12288, 0 colour targets + depth, last program ffb53ed102dd9908): a pass of its own
[hos Presentation Thread] vk: a clear after 3475 draws of its pass (4096x4096, 0 colour targets + depth, last program ffb53ed102dd9908): a pass of its own
[hos Presentation Thread] vk: a clear after 1 draws of its pass (1536x864, 1 colour targets + depth, last program 489438d734e2463a): a pass of its own
[hos Presentation Thread] vk: slow submit: 2480.3 ms: draw 2331.6 descriptors 38.3 texture lookups 35.2 uploads 33.8 pipelines 2.2 programs 49.5 commands 66.9 dispatch 101.3
[hos Presentation Thread] vk: depth-compare sampler: the game's compare mode 1 function 4 -> compare on op 3 (filters min 1 mag 1)
[hos Presentation Thread] vk: slow submit: 386.7 ms: texture lookups 10.5 uploads 10.3 dispatch 386.6
[hos Presentation Thread] vk: NVN2 program d4d5fb09c1cd2097 (stage 0) lowered with extended registers (1132 REGMAP words)
[hos Presentation Thread] vk: NVN2 program e61be02173ea53e7 (stage 0) lowered with extended registers (1144 REGMAP words)
[hos PreActorModelCompose] vcores: 5947 takes, 1 waits (mean 14 us, longest 0.0 ms), 0 kicks, 0 yields, 0 escapes in 6 s
[hos nn.npln.Callback] vcores: 5419 takes, 2 waits (mean 15 us, longest 0.0 ms), 0 kicks, 0 yields, 0 escapes in 5 s
[hos rmbl::VibrationThread] hid: 61440 vibration values, strongest 0.00 since the last count
[hos rmbl::VibrationThread] hid: 65536 vibration values, strongest 0.00 since the last count
[hos rmbl::VibrationThread] vcores: 21716 takes, 1 waits (mean 3 us, longest 0.0 ms), 1 kicks, 0 yields, 0 escapes in 21 s
[hos rmbl::VibrationThread] vcores: 8630 takes, 2 waits (mean 247 us, longest 0.5 ms), 1 kicks, 0 yields, 0 escapes in 8 s
[hos PreActorModelCompose] vcores: 7706 takes, 2 waits (mean 99 us, longest 0.2 ms), 0 kicks, 0 yields, 0 escapes in 7 s
> [@vrwallace](https://github.com/vrwallace) commented on GitHub · 2026-11-12 13:46 UTC · [original](https://github.com/NotRexed/Hookshot/issues/2505#issuecomment-6825335480) Follow-up to my report above: **the workaround only gets through startup; gameplay is not fixed.** The user reached the title and watched the intro, then the screen went black as the 3D scene began. This appears similar to the Intel reports in #999 / #366, but the underlying cause is not confirmed. The same process remained alive (about 11.6 GiB RSS in one sample), with no new kernel OOM or GPU-reset message observed. The log shows skipped compute dispatches while pipelines compile, followed by slow draws, and then stops reporting presented frames while occasional game-thread messages continue. A debugger attach was denied, so I do not have stacks proving a driver/compiler stall. Selected end of log: ```text [hos Presentation Thread] vk: pool 0x1178821100+0x70 imported in 16.4 ms as 0x1178000000..0x117e000000 (34 imports, 290 ms in all) [hos Presentation Thread] vk: pool 0x117a000000 remade larger (7 retired) [hos Presentation Thread] vk: pool 0x1178000000..0x117e000000: mirror made with the GPU's contents of 1 retired pool(s) [hos rmbl::VibrationThread] vcores: 7366 takes, 1 waits (mean 4 us, longest 0.0 ms), 1 kicks, 0 yields, 0 escapes in 7 s [hos Presentation Thread] vk: pool 0x117e8ce780+0x40 imported in 20.7 ms as 0x1178000000..0x1180000000 (35 imports, 311 ms in all) [hos Presentation Thread] vk: pool 0x1178000000 remade larger (8 retired) [hos Presentation Thread] vk: pool 0x1178000000..0x1180000000: mirror made with the GPU's contents of 1 retired pool(s) [hos Presentation Thread] vk: a clear after 38 draws of its pass (1536x864, 1 colour targets + depth, last program f8d01f6626632433): a pass of its own [hos Presentation Thread] vk: sampler 405 is nearest: min filter 0, mag filter 0, wrap 7/7/7, lod 0..15 bias 0, aniso 1, compare 0 [hos Presentation Thread] vk: sampler anisotropy: the game asks for 1 (min filter 0, mip filter nearest, LOD bias 0; made with 16) [hos Presentation Thread] vk: a clear after 3 draws of its pass (384x216, 1 colour targets + depth, last program ef0f65f8fb3b67b4): a pass of its own [hos Presentation Thread] vk: a clear after 3 draws of its pass (384x216, 2 colour targets + depth, last program 6ffa31242058ad57): a pass of its own [hos Presentation Thread] vk: sampler 423 is nearest: min filter 5, mag filter 0, wrap 7/7/7, lod 0..15 bias 0, aniso 1, compare 0 [hos Presentation Thread] vk: pool 0x7f78954000+0x5de00 imported in 2.0 ms as 0x7f78000000..0x7f79000000 (36 imports, 313 ms in all) [hos Presentation Thread] vk: vertex format NVN 0x3 -> vk 13 [hos Presentation Thread] vk: pool 0x7fe2578400+0x75f0 imported in 2.3 ms as 0x7fe2000000..0x7fe3000000 (37 imports, 315 ms in all) [hos Presentation Thread] vk: pool 0x7f7d295400+0x654 imported in 4.1 ms as 0x7f7c000000..0x7f7e000000 (38 imports, 320 ms in all) [hos Presentation Thread] vk: pool 0x7f970d4600+0x19a0 imported in 2.4 ms as 0x7f97000000..0x7f98000000 (39 imports, 322 ms in all) [hos Presentation Thread] vk: pool 0x7f9a0e9c00+0x61bc imported in 3.1 ms as 0x7f9a000000..0x7f9b000000 (40 imports, 325 ms in all) [hos Presentation Thread] vk: pool 0x7f88b1d800+0xb16c imported in 2.7 ms as 0x7f88000000..0x7f89000000 (41 imports, 328 ms in all) [hos Presentation Thread] vk: pool 0x7f98d54a00+0x1d38 imported in 2.7 ms as 0x7f98000000..0x7f99000000 (42 imports, 330 ms in all) [hos Presentation Thread] vk: pool 0x7f86b9f600+0x97e0 imported in 8.0 ms as 0x7f85000000..0x7f88000000 (43 imports, 338 ms in all) [hos Presentation Thread] vk: vertex format NVN 0xd -> vk 16 [hos Presentation Thread] vk: vertex format NVN 0xf -> vk 20 [hos Presentation Thread] vk: texture slot 0x2f17 (handle 0x18c02f17): no image for it; NVN target 1 format 0x8c 43x85x1 levels 7 gpu 0x10b9a73a00, view yes (format 0x8c target 1), wanted view type 1 use 0 [hos Presentation Thread] vk: texture slot 0x3206 (handle 0x18c03206): no image for it; NVN target 1 format 0x8b 1024x1024x1 levels 11 gpu 0x10ccf91a00, view yes (format 0x8b target 1), wanted view type 1 use 0 [hos Presentation Thread] vk: texture slot 0x2f10 (handle 0x18c02f10): no image for it; NVN target 1 format 0x8d 171x171x1 levels 8 gpu 0x10b9a67800, view yes (format 0x8d target 1), wanted view type 1 use 0 [hos Presentation Thread] vk: texture slot 0x2f05 (handle 0x18c02f05): no image for it; NVN target 1 format 0x8e 341x341x1 levels 9 gpu 0x10b9995200, view yes (format 0x8e target 1), wanted view type 1 use 0 [hos Presentation Thread] vk: texture 0x1147bf6000 12288x12288x1 x1 levels 1 NVN 0x32 -> vk 124 (385 textures, 1909 MB) [hos Presentation Thread] vk: texture slot 0x31b4 (handle 0x18c031b4): no image for it; NVN target 1 format 0x8b 512x256x1 levels 10 gpu 0x10cc09f000, view yes (format 0x8b target 1), wanted view type 1 use 0 [hos Presentation Thread] vk: a clear after 3475 draws of its pass (12288x12288, 0 colour targets + depth, last program ffb53ed102dd9908): a pass of its own [hos Presentation Thread] vk: a clear after 3475 draws of its pass (4096x4096, 0 colour targets + depth, last program ffb53ed102dd9908): a pass of its own [hos Presentation Thread] vk: a clear after 1 draws of its pass (1536x864, 1 colour targets + depth, last program 489438d734e2463a): a pass of its own [hos Presentation Thread] vk: slow submit: 2480.3 ms: draw 2331.6 descriptors 38.3 texture lookups 35.2 uploads 33.8 pipelines 2.2 programs 49.5 commands 66.9 dispatch 101.3 [hos Presentation Thread] vk: depth-compare sampler: the game's compare mode 1 function 4 -> compare on op 3 (filters min 1 mag 1) [hos Presentation Thread] vk: slow submit: 386.7 ms: texture lookups 10.5 uploads 10.3 dispatch 386.6 [hos Presentation Thread] vk: NVN2 program d4d5fb09c1cd2097 (stage 0) lowered with extended registers (1132 REGMAP words) [hos Presentation Thread] vk: NVN2 program e61be02173ea53e7 (stage 0) lowered with extended registers (1144 REGMAP words) [hos PreActorModelCompose] vcores: 5947 takes, 1 waits (mean 14 us, longest 0.0 ms), 0 kicks, 0 yields, 0 escapes in 6 s [hos nn.npln.Callback] vcores: 5419 takes, 2 waits (mean 15 us, longest 0.0 ms), 0 kicks, 0 yields, 0 escapes in 5 s [hos rmbl::VibrationThread] hid: 61440 vibration values, strongest 0.00 since the last count [hos rmbl::VibrationThread] hid: 65536 vibration values, strongest 0.00 since the last count [hos rmbl::VibrationThread] vcores: 21716 takes, 1 waits (mean 3 us, longest 0.0 ms), 1 kicks, 0 yields, 0 escapes in 21 s [hos rmbl::VibrationThread] vcores: 8630 takes, 2 waits (mean 247 us, longest 0.5 ms), 1 kicks, 0 yields, 0 escapes in 8 s [hos PreActorModelCompose] vcores: 7706 takes, 2 waits (mean 99 us, longest 0.2 ms), 0 kicks, 0 yields, 0 escapes in 7 s ``` <!-- github-sync:c:6825335480 -->
Commenting is not possible because the repository is archived.
No milestone
No assignees
2 participants
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
MagicBeanDev/Hookshot#2505
No description provided.