1 |
On Thu, Feb 8, 2018 at 2:17 PM, Dale <rdalek1967@×××××.com> wrote: |
2 |
> As someone else pointed out, if you |
3 |
> start using swap, that generally defeats the purpose of tmpfs. |
4 |
> |
5 |
|
6 |
I'll just add one thing to this, which I've probably already said ages ago: |
7 |
|
8 |
In an ideal world swap would STILL be better than building on disk, |
9 |
because it gives the kernel fewer constraints around what gets written |
10 |
to disk. |
11 |
|
12 |
Anything written to disk MUST end up on the disk within the dirty |
13 |
writeback time limit. Anything written to tmpfs doesn't ever have to |
14 |
end up on disk, and if it is swapped the kernel need not do it in any |
15 |
particular timeframe. Also, the swapfile doesn't need the same kinds |
16 |
of integrity features as a filesystem, which probably lowers the cost |
17 |
of writes somewhat (if nothing else after a reboot there is no need to |
18 |
run tmpreaper on it). |
19 |
|
20 |
So, swapping SHOULD still be better than building on disk, because any |
21 |
object file that doesn't end up being swapped is a saved disk IO, and |
22 |
the stuff that does get swapped will hopefully get written at a more |
23 |
opportune time vs forcing the kernel to stop what is doing after 30s |
24 |
(by default) to make sure that something gets written no matter what |
25 |
(if it wasn't deleted before then). |
26 |
|
27 |
That's all in an ideal world. In practice I've never found the kernel |
28 |
swapping algorithms to be the best in the world, and I've seen a lot |
29 |
of situations where it hurts. I run without a swapfile for this |
30 |
reason. It pains me to do it because I can think of a bunch of |
31 |
reasons why this shouldn't help, and yet for whatever reason it does. |
32 |
|
33 |
-- |
34 |
Rich |