vk: RX_VK_NOOPT=1 builds pipelines without the driver's optimizer (AMD compiler crash on RX 6900 XT) #166
No reviewers
Labels
No labels
accessibility
autorelease: pending
autorelease: tagged
bug
dependencies
documentation
duplicate
enhancement
github_actions
good first issue
help wanted
invalid
question
testing wanted
wontfix
No milestone
No assignees
1 participant
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Hookshot!166
Loading…
Reference in a new issue
No description provided.
Delete branch "rx-vk-noopt"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What this fixes
An RDNA2 data point, since the AMD path was only tested by forcing it on an NVIDIA card:
RX 6900 XT, AMD proprietary driver 32.0.21045.16010 (2026-10-16), Windows 11 Pro 26300, i7-9700K, 32 GB. Game
0400486024DEC000v131072, builde0f3ccfa, built with thelighting-fixHookshotBuilder (bundled source identical toda030c5, checked file by file).The title screen and menus run at 58-60 fps. Loading a save (Kokiri Forest) ends like this:
-13isguarded_graphics's answer to an access violation insidevkCreateGraphicsPipelines: the driver's shader compiler crashed. After that line nothing is presented any more (black window, GPU engine at 0 %), one thread spins at 100 % inamdvlk64.dll/amdxc64.dll, and the log stays silent; I waited 7 minutes. This looks like the same AMD compiler bug Lichii hit for Ocarina's shaders (zortos293/Lichii#101, #200, #210: an access violation atamdvlk64.dll+0xaff2e7and 6-18 minute builds of two compute shaders), where building the affected pipelines withVK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BITavoids both.Change
RX_VK_NOOPT=1setsVK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BITon every graphics and compute pipeline the game's programs produce (build_graphicsand the compute program path invk_draw.cpp). Off unless the variable is set, so nothing changes for NVIDIA.Testing
Same PC, same build folder, only
hookshot_vk.dllrebuilt. WithRX_VK_NOOPT=1the same save loads: nonot made, no stall, 40 fps in Kokiri Forest (vi: ... fps over the last 5.0 s) with the first-time shader stutter the README describes. Not tested further than the forest on this run.Possibly related: #72 (RX 6600 XT, also RDNA2, stuck after the Deku Tree scene).
Merged, Thanks.