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

Linux Gaming

15912 readers
11 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
[–] priapus@sh.itjust.works 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.

[–] andrew_bidlaw@sh.itjust.works 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.

[–] flashgnash@lemm.ee 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

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.

[–] Max_P@lemmy.max-p.me 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

[–] andrew_bidlaw@sh.itjust.works 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

[–] Sentau@feddit.de 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)

[–] Smoregoose@lemmy.blahaj.zone 10 points 1 year ago

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

[–] NabeGewell@lemmy.world 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@lemmy.world 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.

[–] Nawor3565@lemmy.blahaj.zone 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.

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.

[–] andrew_bidlaw@sh.itjust.works -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.

[–] irmoz@reddthat.com 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.

[–] andrew_bidlaw@sh.itjust.works 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.

[–] irmoz@reddthat.com 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.

[–] andrew_bidlaw@sh.itjust.works 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.

[–] irmoz@reddthat.com 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.

[–] andrew_bidlaw@sh.itjust.works 1 points 1 year ago (1 children)

And I said it has no point.

[–] irmoz@reddthat.com 1 points 1 year ago

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

[–] just_another_person@lemmy.world -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...?".

[–] andrew_bidlaw@sh.itjust.works -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@lemmy.world 3 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.

[–] andrew_bidlaw@sh.itjust.works -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.

[–] aport@programming.dev 5 points 1 year ago (1 children)

Do you have an Nvidia card?

[–] andrew_bidlaw@sh.itjust.works 3 points 1 year ago (1 children)

To my sorrow, yes. How fucked am I?

[–] aport@programming.dev 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.

[–] andrew_bidlaw@sh.itjust.works 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@lemmy.world 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.

[–] zeerooth@lemmy.antemeridiem.xyz 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.

[–] ProtonBadger@kbin.social 4 points 1 year ago

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

[–] andrew_bidlaw@sh.itjust.works 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 :)

[–] squid -1 points 1 year ago

I don't have this issue using jc141 releases