protonscr

Each time launching a non-steam game, a new shader cache file is created.

steamopen Distro Family: SteamOS
ValveSoftware/steam-for-linux#10486 · opened 2024-02-10 by ayssia · updated 2026-03-30 · 8 comments · github
Aayssia 2024-02-10 github

Your system information

  • Steam client version (build number or date): 1705108172
  • Distribution (e.g. Ubuntu): Steam Deck
  • Opted into Steam client beta?: No
  • Have you checked for system updates?: Yes
  • Steam Logs: steam-logs.tar.gz
  • GPU: AMD

Please describe your issue in as much detail as possible:

I noticed that certain non-Steam games were taking up a very large amount of space in the shadercache folder, and after checking that folder, I found a lot of nearly identical foz files under ~/.steam/steam/steamapps/shadercache/<non-steam-game-appid>/fozpipelinesv6/steamapprun_pipeline_cache.RANDOMHASH.

Further testing revealed that each time the game was launched, a nearly identical foz file was regenerated in that folder. After multiple runs, the space taken up by that folder became very large.

It feels very strange that the generated shader cache can't be reused but has to be regenerated per launch.

Steps for reproducing this issue:

  1. Add any non-steam game to Steam.
  2. Run the game and close it. Repeat multiple times.
  3. Check the ~/.steam/steam/steamapps/shadercache/<non-steam-game-appid>/fozpipelinesv6/steamapprun_pipeline_cache.RANDOMHASH folder, there should be multiple (nearly) identical foz files there, like this: steamapprun_pipeline_cache_daf05e8efce08522.1.foz, steamapprun_pipeline_cache_daf05e8efce08522.2.foz, steamapprun_pipeline_cache_daf05e8efce08522.3.foz, the only difference is the suffix number.
CCrayphish 2024-08-26 github

I found this thread while hunting this same problem down when my own non-steam game was recompiling shaders from scratch every boot.
Seconding this on client version 1721173382, also Steam Deck. Testing the same game "HoloCure" between Steam and non-Steam versions shows differing behavior in the shadercache/fozpipelinesv6 folder.

Steam version creates one fozpipelinesv6/steamapprun_pipeline_cache.904f69d2b1b44b65/steamapp_pipeline_cache.foz with mask 755 in shadercache dir, and does not create new files on subsequent runs.

Non-steam version creates multiple fozpipelinesv6/steamapprun_pipeline_cache.904f69d2b1b44b65/steamapprun_pipeline_cache_<UNKNOWNHASH>.<incremental>.foz files with mask 644 every launch, creating a new pipeline cache file from scratch each time the game is run.

This is not a perfect comparison between binaries since the game versions unfortunately differ, but I see the same behavior across all non-steam games. Result is that non-steam game pipeline cache folders grow endlessly, and performance is poor every time the game is started since all shaders are compiling from scratch as they are first run.

Ddstrnad 2024-10-02 github

I can confirm I have the same issue. In the picture you can see my non-steam shader cache.
All files are the same name, only different number, and a new file is created each time I start the game.

4ktp6uy86dsd1

AACheshirov 2025-05-06 github

Yeah, same here. This is going to screw up our SSDs. It's so many unnecessary writes. It just copies and pastes the content from the first (or latest) file to a new one every time the game is launched. This is an insanely serious bug!

EDIT: OK, WTF - this bug is a year old!? And I was wondering where my free SSD space was going...

EDIT2: I think the shader cache is actually being used, because I'm using DXVK_HUD=compiler, which shows when shaders are being compiled. It only shows shader compilation during the first launch. However, creating a new cache file every time the game starts instead of reusing the old one is a big issue.

TTech-How 2025-06-26 github

I'm having the same issue with my non Steam games, even Linux native ones. For now, I am going to create a systemd script that deletes the problematic folders every boot up until a fix is implemented. I currently have a 12GB shader cache folder for a game that only really has 350MB in shaders, until I finally found out where it was coming from.

Vvigneshiamvk 2025-09-19 github

Wanted to chime in and say that this issue still exists. Would be nice to have a fix as this is eating up space rather quickly!

RRudo2204 2025-11-26 github

I play Path of Exile using Proton (Steam version is not currently available in my region) and after a week of playing I get about 130-150GB of shader cache due to this issue.

Ttrancexpress 2025-12-09 github

I was running out of disk space, checking why, I found that the Warframe shader cache was 200 GB:

192G    Steam/steamapps/shadercache/230410 

After deleting it, in 2 days, it was 10 GB again:

➜  ~ du -sh /home/sandreev/Steam/steamapps/shadercache/230410/fozpipelinesv6/steamapprun_pipeline_cache.904f69d2b1b44b65/
10G     /home/sandreev/Steam/steamapps/shadercache/230410/fozpipelinesv6/steamapprun_pipeline_cache.904f69d2b1b44b65/
➜  ~ du -sh /home/sandreev/Steam/steamapps/shadercache/230410/fozpipelinesv6/                                            
10G     /home/sandreev/Steam/steamapps/shadercache/230410/fozpipelinesv6/

Really not great...

It seems to only be a problem for Warframe too (I deleted the folder above before calling du -sh here):

➜  ~ du -sh /home/sandreev/Steam/steamapps/shadercache/*
12K     /home/sandreev/Steam/steamapps/shadercache/1092790
1.6M    /home/sandreev/Steam/steamapps/shadercache/12500
1.2M    /home/sandreev/Steam/steamapps/shadercache/1282730
3.0M    /home/sandreev/Steam/steamapps/shadercache/1286990
21M     /home/sandreev/Steam/steamapps/shadercache/1336490
252M    /home/sandreev/Steam/steamapps/shadercache/1583720
8.0K    /home/sandreev/Steam/steamapps/shadercache/219150
8.0K    /home/sandreev/Steam/steamapps/shadercache/219890
28K     /home/sandreev/Steam/steamapps/shadercache/221640
24K     /home/sandreev/Steam/steamapps/shadercache/22600
928M    /home/sandreev/Steam/steamapps/shadercache/230410
5.8M    /home/sandreev/Steam/steamapps/shadercache/233610
8.0K    /home/sandreev/Steam/steamapps/shadercache/247080
384K    /home/sandreev/Steam/steamapps/shadercache/257850
8.0K    /home/sandreev/Steam/steamapps/shadercache/262060
6.4M    /home/sandreev/Steam/steamapps/shadercache/294100
12K     /home/sandreev/Steam/steamapps/shadercache/326460
12K     /home/sandreev/Steam/steamapps/shadercache/413150
87M     /home/sandreev/Steam/steamapps/shadercache/423230
43M     /home/sandreev/Steam/steamapps/shadercache/460790
28K     /home/sandreev/Steam/steamapps/shadercache/562860
24K     /home/sandreev/Steam/steamapps/shadercache/571310
24K     /home/sandreev/Steam/steamapps/shadercache/588650
24K     /home/sandreev/Steam/steamapps/shadercache/646570
1.3M    /home/sandreev/Steam/steamapps/shadercache/736260
232M    /home/sandreev/Steam/steamapps/shadercache/774361
12K     /home/sandreev/Steam/steamapps/shadercache/78000
24K     /home/sandreev/Steam/steamapps/shadercache/860950

There is the shader pre-caching setting under Steam -> Settings -> Downloads (scroll to bottom), I guess I'll try it...

?ghost 2026-03-30 github

This is still an issue. every time i launch a title with a ton of Shaders such as Black Myth Wukong, i lose 1 Gigabyte of space on my disk because a new file in the shader folder is created seemingly using data from the prior shader cache file.

Launch options