Path of Exile 2 on Linux (Steam/Proton) – shadercache keeps growing endlessly
|
Hello,
I’ve noticed a serious issue when playing Path of Exile 2 on Linux Ubuntu 22.04.5 LTS via Steam (Proton). The folder ~/.steam/debian-installation/steamapps/shadercache/ keeps growing constantly while the game is running. The size increases by about 1 MB every second and never gets released. What makes it even stranger: the cache keeps filling up even when I am staying in old areas that should already be fully loaded. As a result, the disk usage just keeps climbing until I manually clean the folder. Steps to reproduce: Launch PoE 2 on Linux Ubuntu 22.04.5 LTS (Steam/Proton). Play for 10–20 minutes. Check the shadercache folder – it continuously grows without limit. This causes my /home partition to lose gigabytes of free space during one play session. Could you please check this? It seems like shader pre-caching is not being handled correctly. Thanks! Last bumped on Dec 23, 2025, 8:09:18 PM
|
|
|
I have the same problem. Tried deleting them or moving them to another location, but it didn't help.
|
|
|
This game always compiles shaders repeatedly, suspecting that the shader cache doesn't work at all.
|
|
|
Exact same issue, loading times (to or from a map, sometimes even traveling through checkpoints, even back to my own hideout) are in the order of minutes, sometimes over 10+ minutes.
Monitoring the size of all shadercache locations shows: - `%appdata%/Roaming/Path of Exile 2/ShaderCacheVulkan` at ~900Mb so far (and growing, but very slowly). - `steamapps/shadercache/2694490` at 65Gb so far, with these subfolder sizes: - `/fozpipelinesv6`: 58Gb, - `/mesa_shader_cache_sf`: 895Mb, - `/nvidiav1`: 6.4Gb, - `/radv_builtin_shaders`: 1.3Mb Tried multiple versions of Proton (8 didn't work, 9 works "sometimes", 10 and Experimental run the game just fine, except for the constant compilation of shaders). |
|
|
After much messing around with this, I ended up disabling the Vulkan layer Steam/Valve uses to "fossilize" shaders with the following environment variable:
DISABLE_VK_LAYER_VALVE_steam_fossilize_1=1 Now, there is no more 3 or 4 parallel compiles of shaders happening constantly, filling up multiple different shader cache directories, there's just one. The `steamapps/shadercache` directories are no longer growing, and the only shader cache being utilized is the "driver's default" location at `$HOME/.cache/nvidia/GLCache/` according to `lsof` on the running game (and the game's own cache as well). Maps are loading fast again, no longer have to wait 5-8 minutes on a loading screen, game is (finally) playable. |
|













