Here's a legitimate use for swap space -- even in 2016. There's a Java program that runs as a daemon. It requires a medium amount of memory. For example, let's say the system has 8GB of RAM and the daemon requires 6GB of it. That's fine. The base system and maybe a small database will require some additional memory, so the total memory usage is about 7GB or something like that. 1GB is left for I/O cache. Let's say the system runs smoothly now. Problem is, you need to be able to cleanly shut down the system. Said Java daemon is an unfriendly one: In order to *shut down*, it needs to launch a new Java VM that tells the first VM, "please shut down", and it *insists* on using the same memory configuration for this task. This means it will try to allocate *another* 6GB of memory, even though it never uses it. Just for shutting down. Now, Linux does memory overcommit by default, which means that the kernel will happily tell the application, "here's your memory, I allocated it", even though it is not necessarily backed up by actual memory pages. This means that we *should* be able to shut down our daemon! It should work. But there are limits to memory overcommit: When above a certain threshold of memory usage, Linux will refuse to do more overcommit. In our scenario, we do have passed that threshold. As a result, our shutdown process will get an out of memory error and we can't shut down the daemon. Dang. One way to solve this is to add the proper amount of swap space to the system. This keeps us *below* the threshold and the shutdown process can now run. We will never actually use the swap space, it just has to be there. This daemon exists in real life and so does its shutdown procedure. It's a product sold by a big company. Next on the TODO list: Which kernel parameters to tweak? How to actually set that threshold? Maybe we can get away without swap.