this post was submitted on 21 Oct 2023
35 points (87.2% liked)

Linux Gaming

15796 readers
17 users here now

Gaming on the GNU/Linux operating system.

Recommended news sources:

Related chat:

Related Communities:

Please be nice to other members. Anyone not being nice will be banned. Keep it fun, respectful and just be awesome to each other.

founded 4 years ago
MODERATORS
 

It feels like I mine bitcoins for our Great Daddy Gaben every other update, setting my CPU at 100% for a long time.

I know it makes difference (to skipping it and eating lags), it works, but how it doesn't use previous literal gigabytes of generated shaders, starting from 0% every time? Why it takes so much time?

I feel like I'm a dumbass and I miss something obvious. Or I just feel like I'm alone with it? Do you guys all deal with it?

Am sitting at 66% percents, my PC heats like it renders video in Premiere, just to let me play the game I've played yesterday again. Guess all my recycling and replanting routine can fuck right off with that power consumption. Sorry, nature, I tried.

But anyway if you are tired of it or knows some tricks, write what's on your mind.

all 35 comments
sorted by: hot top controversial new old
[–] [email protected] 15 points 1 year ago (1 children)

What GPU are you using and what driver version? Both AMD and Nvidia have added support for VK_EXT_graphics_pipeline_library which greatly improve performance while compiling. I prefer just skipping shader compilation, since most games will perform fine doing it while playing.

[–] [email protected] 3 points 1 year ago (1 children)

1060, 6Gb x i5 8600

535.113.01-0ubuntu0.22.04.3

It's faster than when I first came to Linux, sure. And I see that my 6yo mid setup doesn't work okay in big games if I skip this, and is slower than most recent builds of the same price range.

[–] [email protected] 6 points 1 year ago (1 children)

I think honestly if you're not willing to upgrade your pc there's not a lot you can do other than wait for potential optimization

Shader caching on a modern pc for anything but big chunky triple a games takes less than 5 minutes

[–] [email protected] 3 points 1 year ago

Yup, shader updates on Steam dropped significantly when I upgraded my GTX 960 to an RX 6650XT.

It still takes some time on my 3500U APU laptop, but I rarely play anything on that system.

[–] [email protected] 13 points 1 year ago (1 children)

Ultimately this is what it's running in the background: https://github.com/ValveSoftware/Fossilize

The idea is to make sure your graphics card shader cache is full with everything the game may use at some point, enabling smoother play and less hitching.

I think on NVIDIA, the cache ain't that big by default so it may be recompiling everything from scratch, whereas it's less noticeable on AMD systems because it's already compiled it so only compiles what's changed/new.

This issue suggests it's currently pretty broken on NVIDIA right now: https://github.com/ValveSoftware/steam-for-linux/issues/9803

[–] [email protected] 9 points 1 year ago

Didn't know they have a github account. Thanks for pasting these links. I'd study this Q more while another reshadering is going on.

What isn't broken with Nvidia? :b

[–] [email protected] 11 points 1 year ago

This is not a Linux specific issue though it's worse on Linux because vulkan shader processing happens for almost every game. I remember people on windows complaining that The Last of Us was compiling shaders for several hours when first launched and that if shader compilation was skipped the game was laggy as hell(which is not a surprise considering how poor the game ran even after shader compilation)

[–] [email protected] 10 points 1 year ago

I clicked on CS2 at 3. At 5 it was at 80%.

[–] NabeGewell 8 points 1 year ago

honestly I just run a game and go watch a vid till it starts, sometimes multiple vids if there was an update.

That or I just skip it, actually it doesn't lag that much from skipping half of the time

[–] just_another_person 8 points 1 year ago* (last edited 1 year ago) (2 children)

I'm not sure what the question is, but if you're asking about pre-compiled shader downloads, those are just files being installed. If you're asking why your machine is compiling shaders locally before a game launch, it's so your machine doesn't hitch and stutter when running the game. You pretty much always want this enabled.

I don't know what your comment about Bitcoin is about, but if you're imagining your machine doing work to benefit Valve, you're mistaken about how shader caching works, and the distribution of such.

[–] [email protected] 15 points 1 year ago (1 children)

The Bitcoin thing was a joke about how it uses so much CPU/GPU, it almost feels as if he's mining crypto for Daddy Gaben.

His actual complaint is that the shaders seem to get recompiled on every game launch, which takes forever, instead of just re-using the ones it compiled previously.

[–] just_another_person 6 points 1 year ago

Well I can explain the latter:

Steam has a very simple but extensive distribution system in that if the client (your machine) has X combination of hardware, it will frequently check for updates to any files the publisher has pushed upstream. The Steam platform has a compilation mechanism to pre-build graphics and shader caches for end-user clients to prevent them from having to do all that work, so when a publisher tweaks something related to graphics, Steam's backend will build distributed versiona of these compiled shareders and textures and make them available to clients to save your local machine from having to do that work itself on update and launch.

You can disable the behavior in the downloads settings from what I remember. I'm sure you can Google get more specific about how you want that handled, but it can be disabled, your local machine will just have to spend more effort to build them itself to satisfy the requirement the game. You're spending more money on your energy bill this way vs just letting the steam client download the pre-built versions.

[–] [email protected] -3 points 1 year ago (2 children)

It's me venting. And providing a place for venting and advices. Things people do sometimes.

While you are sounding like some chatgpt. You do a paragraph on me mentioning bitcoin with obvious sarcasm. And it's all messed up.

[–] [email protected] 0 points 1 year ago (1 children)

Their comments reads nothing at all like ChatGPT to me, and I'm stuggling to see why you said that.

What is the supposed sarcasm regarding bitcoin mining? Not sure what point is being made with that.

[–] [email protected] 2 points 1 year ago (1 children)

It feels like I mine bitcoins for our Great Daddy Gaben every other update, setting my CPU at 100% for a long time.

That wasn't serious. Can we call it a metaphor or an epithet? This person wrote a dedicated paragraph about that, thinking I suspect Valve in mining bitcoins. I didn't think they are a bot, but they seemed to lose the tone of my text completely, once they got to 'bitcoin' word. It felt bot-ish because chatbots do dance around a few words sometimes.

[–] [email protected] 1 points 1 year ago (1 children)

Stop responding as if you've been asked "why do you think they are a bot" or "why do you think it's bitcoin mining". You were only asked why you said that. I know it's not your actual idea.

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago) (1 children)

I was asked why they sounded like a bot to me, no? I made no point writing that.

[–] [email protected] 0 points 1 year ago (1 children)

You weren't asked why you thought they were a bot. As I said, none of us seriously believed you thought they were a bot. We asked what the point being made by that joke was.

[–] [email protected] 1 points 1 year ago (1 children)

And I said it has no point.

[–] [email protected] 1 points 1 year ago

If your joke has no point, then it's just a statement.

[–] just_another_person -2 points 1 year ago (1 children)

Your comment was out of place and didn't make sense. That's why I brought it up. Couldn't tell if you thought your local machine was actually coin mining or whatever. Just an out of place comment where you should have asked the straightforward question of "What are shaders and why...?".

[–] [email protected] -2 points 1 year ago (1 children)

You are a real person AND you felt like my starting little half-joke about bitcoin (ignoring everything else in my post) is worth you writing half of your previous answer, a whole paragraph about it? Like what? Seriously?

I'm still not convinced if you aren't a robot. You do behave as such. Just like ones on stackoverflow I've seen today.

[–] just_another_person 4 points 1 year ago* (last edited 1 year ago) (1 children)

Yeah, cause those GPT bots are out there monitoring your very special comments on Lemmy specifically. Y'know because they matter...

If you thought that was a joke, I have some material you should watch.

[–] [email protected] -2 points 1 year ago* (last edited 1 year ago) (1 children)

Yeah, cause those GPT bots are out there monitoring your very special comments on Lemmy specifically. Y'know because they matter...

Bots on there or reddit answer anything with a YT link, or just anything. There were subs where bots were talking to each other in circles, a lot of them were noticed carmafarming. I doubt no one of techie locals tried to build a good person-like bot there. This project is too obvious of an idea.

I don't feel special. I feel screwed that some human-adjacent bot answers me bs and makes no sense. I feel like I'm trapped in a void, and I can't reach other people.

If you thought that was a joke, I have some material you should watch.

I don't know what invited that suggestion. But drop them. I have time.

I'd take my words back, if they would be related to what I've said.

[–] [email protected] 5 points 1 year ago (1 children)

Do you have an Nvidia card?

[–] [email protected] 3 points 1 year ago (1 children)

To my sorrow, yes. How fucked am I?

[–] [email protected] 10 points 1 year ago (2 children)

Irreparably and permanently.

Valve put a lot of work in improving the shader compilation process for AMD. It's smooth as butter and very, very fast.

[–] [email protected] 5 points 1 year ago

me, collecting my anus bones and fitting them together

Ha, I'm happy for you having a better time, and it sounds like a good reason to switch.

[–] Molecular0079 5 points 1 year ago

It's just as slow. I have a laptop with a Radeon 680M and I regularly have to wait for Vulkan shaders to be compiled. Most recent game I ran into this issue with was For Honor. Took about half an hour to get into the game.

[–] [email protected] 3 points 1 year ago (2 children)

I agree that's very annoying sometimes but at the same time very beneficial for in-game performance as it greatly reduces the amount of computations the game has to do at runtime. If you have a powerful enough PC or the game isn't very demanding you can just disable shader pre-caching in steam settings and it shouldn't matter much but it's a real life saver for more demanding titles and imo worth all that wait.

[–] [email protected] 4 points 1 year ago

Yeah, I disabled it and never notice any issues, but I only play BG3 and Guildwars2.

[–] [email protected] 3 points 1 year ago

I hear you. I'm really just venting.

The catch is those non-demanding games are fast to reshader. It's only when you face a heavyweight release this starts to matter, and wastes time accordingly :)

[–] [email protected] -1 points 1 year ago

I don't have this issue using jc141 releases