• MystikIncarnate@lemmy.ca
    link
    fedilink
    English
    arrow-up
    12
    arrow-down
    3
    ·
    6 hours ago

    I work in tech, and I don’t understand people’s obsession with having all their RAM free at all times.

    If you don’t use it, why do you have it?

    Windows (not the best OS, but the one I know the most about), will lie to you about how much memory you have that’s free. It puts data in RAM as cache. In the event you need that data, it’s already loaded in RAM. Usually this is stuff like DLLs and executables for programs.

    There’s a difference between “free” memory, and “available” memory.

    In addition, RAM is always going down in price, so 32G today costs what 16G did, some number of years ago. The same can be said for 16G vs 8G, etc. Though, the comparison becomes less relevant as you get into much smaller and older memory types, since the cost per dimm will only ever go so low.

    Buy the memory, use as much of it as you can, as often as you can. Go wild with it. Enjoy.

    • Arthur Besse@lemmy.ml
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      30 minutes ago

      I work in tech, and I don’t understand people’s obsession with having all their RAM free at all times.

      If you don’t use it, why do you have it?

      Windows (not the best OS, but the one I know the most about), will lie to you about how much memory you have that’s free. It puts data in RAM as cache. In the event you need that data, it’s already loaded in RAM. Usually this is stuff like DLLs and executables for programs.

      There’s a difference between “free” memory, and “available” memory.

      Linux and macOS do the same, although I wouldn’t call it lying per se :)

      There is certainly a lack of understanding of the difference between free and available RAM. TLDR: yes, free RAM is indeed wasted RAM.

      If you actually have a lot of free RAM, it’s probably because you either booted or freed a lot of RAM very recently. After using your computer for a while, most of your available RAM should not be free but rather being used for page cache and other caches.

      After a program has just read and/or written more data from disk than will fit in available RAM, the kernel’s page cache (which is typically the bulk of that not-free-but-available memory) should be mostly populated by the most recent of those operations. This means that if that program (or any other program) reads those files again, before they are evicted from cache by other things, they will not need to wait for the disk and will get them back much faster.

      However, managing all of this is the kernel’s job, and the not-free-but-available RAM being used for page cache is not (in any OS, as far as I know, though I mostly know Linux) attributed to the program(s) responsible for putting things there.

      So, when people are complaining about an application using 40% of their RAM it is not necessarily due to them misunderstanding free-vs-available RAM. The used number for an application does not include the portion of the system’s not-free-but-available RAM which the application is also responsible for occupying.

      (If you want to know which programs and/or which files are responsible for occupying your page cache… on Linux at least, it is not really possible without instrumenting your kernel. There are a variety of tools that let you see which blocks of a given file are cached, but there isn’t a reverse mapping from blocks to files.)

    • Hello Hotel@lemmy.world
      link
      fedilink
      English
      arrow-up
      8
      ·
      edit-2
      5 hours ago

      For me there are programs that “can acceptably use that much RAM” and those that it’s “unacceptable”, to me. what’s 20% to 40% of my gaming rig’s resources may be uncomfortably taxing and laggy for my laptop. Its okay to waste resources on my gaming rig but the laptop needs all it can get. I accept some software will not reasonably run on the laptop. My employer has stuck me on 10yo hardware before, running windows 10 pro + intrusive expensive antivirus and nobody is around to question why their computers are getting 5-15fps and locking up for a minute or two when you open chrome. It becomes normal. Any software is the host and/or backbone for other running software should focus on reducing it’s own resource usage for the sake of its children.