<div dir="ltr"><div dir="ltr">On Wed, Mar 16, 2022 at 12:27 PM Brian Cully <<a href="mailto:bcully@gmail.com">bcully@gmail.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 3/16/22 11:03, George Rosamond wrote:<br>
<br>
Today, when those 64G or more of RAM are the norm for bare-metal<br>
boxes, and it's overkill in many contexts, is swap still necessary?<br>
<br>
Do certain applications/OS functions still use swap as opposed to RAM<br>
for some reason? I mean, swap is normally encrypted by default, so<br>
there is a justifiable reason to use swap over RAM.<br>
<br>
    I don't use it on servers because I'd rather have things die than<br>
incur a swap penalty if things start to get bogged down. To be fair, I<br>
was also turning off swap in the 90s, when RAM was much tighter, for<br>
the same reason. When things started to get hammered swap *always*<br>
made the problem worse because now your disks are thrashing.<br></blockquote><div><br></div><div><div>Seconding what Brian said. In search of greater reliability, it is preferable for a service to die completely rather than get slow (or, start exhibiting high tail latency). <a href="https://brooker.co.za/blog/2021/04/19/latency.html" target="_blank">https://brooker.co.za/blog/2021/04/19/latency.html</a></div><div><br></div><div>Some modern services flat out fail to run if swap is enabled. <a href="https://github.com/kubernetes/kubernetes/issues/53533" target="_blank">https://github.com/kubernetes/kubernetes/issues/53533</a> (To be fair, last year Kubernetes 1.22 did gain the ability to run with swap enabled).</div></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
    I don't use it at home, either, because I have more than adequate<br>
RAM on my home systems and don't see a need for it, and I value<br>
consistent interactive performance. If I had substantially less RAM<br>
I'd turn on swap to cover for bloated applications like web browsers,<br>
or VMS I'm not actively using.<br>
<br>
    Theoretically, swap can make your system faster because it allows<br>
you to page out RAM that's been allocated and almost never used for<br>
buffers. I don't know if there are systems that actually do this in<br>
practice, though, and it opens you up to severe performance<br>
degradation. Swap's always seemed to me like this thing that, in<br>
theory, allows for more flexibility, but in practice is almost never<br>
worth the trade offs.<br>
<br>
    As far as swap being encrypted, I don't see that as much of a<br>
reason to use over RAM. The keys to decrypt it still have to be in RAM<br>
somewhere, and if you can arbitrarily read RAM, it doesn't seem like<br>
it's much of a stretch to find the key and read whatever you want off<br>
of swap. The value in on-disk encryption is when the system is off,<br>
right? If it's on, and someone has the access to read your block<br>
devices raw, then they can also read your key out of the kernel too,<br>
right? Or has this changed in the advent of TPM and its ilk?<br>
<br>
-bjc<br></blockquote><div><br></div><div>Anthony </div></div></div>