No swap, swap or swap with hibernate? And do you change the swappiness setting?
On the fastest drive I have, longevity be dammed. I buy fast hardware because I want my computer to be fast - having my RAM (likely the fastest thing in the system) swap to a slow drive completely undermines that and defeats the purpose.
Hibernation I don’t normally mess with, and same with swappiness.
Whatever you want, but setup swap. Linux benefits generally from the existence of swap, used or not.
Noob question: what is bad about having a swap drive on an SSD?
When installing OpenSuse, I followed the recommended setup, of creating a swap drive equally sized to my 32 GB RAM. And because I only have SSDs this also sits on an SSD. Seems to be working fine so far with quick hibernation and wakeup. What am I missing?
It will work fine, the issue is drive degradation. Especially if you don’t have a lot of ram, swap will be used a lot. SSDs degrade with writes, so swapping on them reduces their life. This is especially noticeable on old or cheap SSDs, which tend to degrade faster. One example is those 8GB RAM macs with soldered 256GB SSDs, which due to cheap and small SSDs and low RAM were breaking really quickly.
If your SSDs have a lot if space, they are relatively new and you have a lot of RAM (32 GB is perfectly fine), you won’t have much issue. If you’re worried about it, you can always check drive health with
smartctl
For desktops, zram with no swapping to disk. Hasn’t given me any trouble yet, except for the rare news website (it’s always news websites) with a horrific memory leak.
For laptops, zram plus a low-priority swap file for suspend-then-hibernate. My old laptop drains a fair bit in sleep mode and my new one doesn’t have proper S3 suspend because microslop is pushing manufacturers to only support S0 idle.
Always a file, never a swap partition. Everything that can be encrypted lives inside the encrypted root partition.
I use zram only with no swap on the SSD for my laptop/desktop.
For my server it has zram too but with extra low priority swap on the SSD just in case zram gets full up.
Depends on how much RAM you intend to use, and how much you need. For normal web browsing, I think probably enough swap space to make your total RAM + Swap amount up to 24GiB should do. If you have more than that and don’t run anything memory intensive, you can probably get away without any swap at all.
If you want the ability to hibernate though, you need at least the same amount of swap as physical RAM (since Linux will use the swap space as the location to “hibernate to”.
I think for an SSD it makes sense to use a swap file rather than a swap partition, since random access is basically free and you can resize it easily. That’s a minor thing though.
How much memory do you have? How much storage do you have? What will this computer be used for? Do you want to be able to hibernate?
I have learned about the existence of zram and zswap today, and added a higher priority RAM swap on my workstation to reduce swapping to SSD. Should speed things up even more.
cat /proc/sys/vm/swappiness
Open /etc/sysctl.conf for editing:
sudo gedit /etc/sysctl.conf
Add vm.swappiness=10 at the end and save the file.
Reboot your system and check the swappiness value:
cat /proc/sys/vm/swappiness # 10
And why do I want this? And if I want this, why is it not the default already? SSDs have been mainstream for ten years I guess, so shouldn’t any current Linux installer do the right thing by now?
Because the default is set for healthy performance. But users in actual reality don’t care for raw performance but want responsive systems. If you are opening a browser to pass time while some longer process runs in the background, you are less interested in that background process being done 10% faster than in your browser not being sluggish.
PS: Sidenote… Many recommendations are based on older kernels. Since 5.8 swappiness is not measured from 0 to 100, but 0 to 200. So the 60 default is already half of what it was many years ago.






