• Vlyn@lemmy.zip
    link
    fedilink
    English
    arrow-up
    32
    ·
    10 months ago

    “Doing nothing” is probably downloading an update. There’s also a difference between reserved RAM and actually used one.

    For example .NET applications grab RAM when they need it, but they don’t just free it afterwards if not necessary (Like it needs 1 GB, uses that, but when the work is done your task manager keeps showing 1 GB). This helps performance, if the application needs RAM again a short time later it’s already reserved and ready to go.

    The whole behavior changes when Windows is low on free RAM, then applications are forced to free up their reserved RAM so you don’t start swapping too much.

    Overall this means: The more RAM your system has the higher the perceived RAM usage of your system. Unused RAM is wasted RAM and it’s easy to free up some if you actually hit the limit. As long as your RAM is not full applications will happily use more and hold onto it to be more responsive.

    • KillingTimeItself@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      10 months ago

      everybody says this in response to my statement. Steam is doing NOTHING. I’ve checked, it’s not downloading an update, it’s not pre compiling shaders, it’s not caching them, it’s not doing ANYTHING. I don’t know if people just don’t understand how obscene this is, or think im just wrong.

      Heroic, a launcher for both epic games, and GOG. idles similarly to steam uses a bit less ram though, launches multiple times faster, and is much more usable. And this is ANOTHER web app.

      I use linux, it reports as used ram, not cached ram. Again, im not wrong. I understand the concept of caching ram, i understand the concept of actively used ram, this is not cached ram. That’s also not a very complete explanation of ram caching, ram caching helps in the event that you use that same information, that was already cached. For example, you open a game, or a project, and then close it, it’s pretty likely that some of that will be cached, so that way when you open it again, it launches quicker (particularly if you open and close it multiple times)

      again i use linux, i literally hand formatted my swap partition, i understand how this works. Also generally, how swapping works, is that it actually swaps cached ram into swap, and only upon swap being filled or almost full, does it actually start to clear cached ram. This may not be the default behavior on windows though, since solidstate drives handle different these days. But this is the default on linux (configurable obviously)

      The last tidbit is not quite true, it’s true to a point, your system will idle at a higher memory usage, the fundamental problem here is different, actually unused ram is wasted ram, having too much ram, does actually just waste ram. (though im sure linux would absolutely love to use it for cache) Caching everything is an obscene proposition, considering that most people don’t have a lot of ram. Chances are, if you have 16 gb of ram, and upgrade to 32, you will see a bump in max used ram, and overtime cached ram. However when we upgrade from 32 to 64 in this same scenario, you probably won’t notice a change at all, except for the outliers in the data. Though i suppose you might cache more things, but at that point it really doesn’t matter tbh.

      It’s compounded by applications being heavily bloated and stupidly non performant, i would argue it matters more to have more efficient usage of ram application wise, than it would be to have better ram management OS wise. This should be fairly simple to understand why. An application using 1GB of memory, when in reality it should be capable of using as little as 250MB for instance, is the single worst form of wasted memory you can possibly create, because that memory CANNOT be used for anything else. Period, until the application is no longer running.

      That said, again to reiterate my original point here, steam on idle, closed, in the background, not in the foreground, no updates, no game updates, etc… Consumes an entire gigabyte of ram. Why? Because the web front end runs at ALL times, for some reason. Steam is running an entirely separate web browser installation, 24/7 because, why not i guess? Fun fact, you used to be able to disable it under linux, and steam ram usage would drop to under 200MB.

      Here’s another funny pain point of ram caching, when dedicated applications like discord, and steam, start using web backends, you compound this with software bloat, they all use a web backend, and instead of running on a single web browser like all of your tabs, they now run in THREE separate web browsers, thats THREE times the idle wasted ram, because you have three separate web browsers, all running, and all individually sandboxed. This is actually just bad ram management, inherently. It’s more secure i suppose, provides a development benefit, technically. But to the end user, and the ram itself, harms it actively.

      • Vlyn@lemmy.zip
        link
        fedilink
        English
        arrow-up
        1
        ·
        10 months ago

        Ah, I didn’t expect it to be actually used RAM. Maybe this is a Linux issue with the Steam build then? Here is my Windows 11 task manager, Steam just downloaded 10 different game updates (so did plenty of work) and is now idle:

        In total 516.5 MB RAM on a machine with 32 GB (22 GB free at the moment), if there was any pressure on RAM usage it would probably go down further.

        Either way, since upgrading to 32 GB RAM nearly a decade ago I haven’t had a single issue with RAM usage (While with 16 GB I actually had games in the past where I ran out of memory). So it’s no big deal as far as I’m concerned and if I’d actually run any applications that needs tons of RAM I’d quickly upgrade to 64 GB and be done with it.

        The only way this would be annoying is on low-end machines, like 4 or 8 GB RAM in total, but those have plenty of issues anyway in regards to games (otherwise why would you install Steam?). On a high-end machine complaining about 1 GB of RAM is a waste of time in my opinion, there are a ton of better topics you can rage at.

        • KillingTimeItself@lemmy.dbzer0.com
          link
          fedilink
          English
          arrow-up
          1
          ·
          10 months ago

          it could very well be a linux build issue, it wouldn’t surprise me honestly. The main telling thing for me though is that heroic uses the same if not more ram, and is actually many times more performant.

          My main problem with the ram usage is that steam takes equally as long to launch as it does to boot a game, which is super annoying, not including any updates it hasnt performed yet. Heroic launches faster than my web browser does, even though its literally an electron app.

          I wouldnt really care how much ram it used if i could just close it when i was done with it, and have it go away, but it’s such a mess that’s not really feasible.

          The whole “just buy more ram” is not really a solution im a fan of. My system has 16GB. which is fine most of the time, it gets stretched sometimes, most of that ram is used by browsers, (because three different containerized browsers run simultaneously for some reason) so my idle ram quickly becomes 8GB. 8GB is still a lot of available ram though, if steam didn’t use an additional gig on top of that it would only be beneficial. Maybe i’m just too jaded in general. But saying just get more ram is kind of like saying “just repair a cracked back glass on a phone” When i never wanted to have a piece of glass on the back of my phone which could get broken in the first place.

          Although to preface this, i AM a linux user, and i can routinely enjoy a machine with 4GB of ram through the magic of non shit software. i3 + debian cooks. Idle ram usage under 100M is trivial when you aren’t running any bloat. In fact, my server actually on average, uses less ram than my workstation. It’s probably sitting at like 4GB util right now, running a handful of services, and a handful of game servers.