Hello Linux folks, i would like to share one little hack which i have found.

On fedora, zram-generator comes installed and configured by default with lz4 algorithm i believe, and no disk swap, if you have 8gb of ram or more, that is fine, but if you have 4gb or less, systemd-oomd either kills your games when they use too much memory, or you face an OOMD and get your system frozen.

When configuring fedora, normally i would create an in-disk swap, so that my computer wouldn’t freeze but face a MASSIVE slowdown when on way too high memory usage, i also set zram-generator to use the zstd algorithm so that zram compression rate is higher but slightly slower, like that i can use my low memory more efficiently with a lower risk of OOMD.

I was watching a bringus studios video once, where he tried to run counter-strike 2 on a ps4 using linux and proton; the game would always use too much memory and that would freeze the system before it got a change to actually launch, the strange ps4 linux was using in-disk swap, and so, increasing swapiness to 100 bringus tried to leverage that to make the game run. He was successful. In disk swap is very slow, so the performance was crap, but that does not matter…

So i had the idea to combine it with zram-swap to avoid the in-disk swap penalty, also using zstd as the algorithm to make the most out of the memory, and it was a massive sucess! Some games which would make my system very unstable or straight up freeze on certain launch attempts started launching and working just fine! and without dumb in-disk swap slowdowns!

While running modded Victoria 2 i have noticed my system using about 3.3 to 3.4GB of swap, and about 3.5 gb of ram, so about 100 to 200MB of real uncompressed memory usage, assuming zstd is running at level 1 of compression, and achieving at least 3.0 as compression rate, in thesis, my system has now the equivalent to 10GB of ram, well above it’s weight! even more impressive considering how low are the numbers we are working here!

tldr: setting your swapiness=100 while using zstd as your zram-generator compression algorithm, and no in-disk swap will help your system use the most out of your ram with negligible performance penalty

42 points

Not infinite ram. I’d say double ram, plus there is a noticable, but quick delay when switching to an application that was compressed by ram. But it’s much, much faster than switching to an app that was swapped to disk.

Cachyos (arch based distro) does this hy default.

permalink
report
reply
57 points

don’t be silly, of course it’s not infinite ram, the only way to get infinite ram is if you download it.

permalink
report
parent
reply
6 points

CachyOS mentioned! CachyOS btw

permalink
report
parent
reply
1 point
Deleted by creator
permalink
report
parent
reply
1 point
Deleted by creator
permalink
report
parent
reply
19 points

Am I the only one that pronounces it swa-penis and giggles every single time?

permalink
report
reply
14 points

Yeah

permalink
report
parent
reply
7 points

Peter griffin what you are you doing here?

permalink
report
parent
reply
19 points

archwiki tuning has a listing with swappiness set up to 180 (yes apparently the number can go over 100)

permalink
report
reply
8 points
*

Number is priority level, 100 is equal priority as real ram, over 100 is higher priority than real ram, less than 100 is less priority than real ram, and as far as I’m aware, max number is 200 and minimal number is 0

permalink
report
parent
reply
17 points

Yeah, with zram I was able to actually play Cities Skylines on my Steam Deck.

permalink
report
reply
1 point

The Steam Deck has shared RAM for the CPU and GPU, right?

permalink
report
parent
reply
1 point

Yeah. I didn’t dare giving 100 % RAM to zram.

permalink
report
parent
reply
15 points

Now this is gaming

permalink
report
reply
4 points

very gaming indeed

permalink
report
parent
reply

Linux

!linux@lemmy.ml

Create post

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

  • Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
  • No misinformation
  • No NSFW content
  • No hate speech, bigotry, etc

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

Community stats

  • 6.8K

    Monthly active users

  • 4.1K

    Posts

  • 56K

    Comments