Re: OOM killer gripe (was Re: What still uses the block layer?)

From: david
Date: Tue Oct 16 2007 - 00:06:32 EST


On Mon, 15 Oct 2007, Eric W. Biederman wrote:

Nick Piggin <nickpiggin@xxxxxxxxxxxx> writes:

How much swap do you have configured? You really shouldn't configure
so much unless you do want the kernel to actually use it all, right?

No.

There are three basic swapping scenarios.
- Pushing unused data out of ram
- Swapping
- Thrashing

To effectively swap you need SWAP > RAM because after a little while of
swapping all of your pages in RAM should be assigned a location in the
page cache.

on some kernel versions you are correct about needing swap > ram, but on current versions you are not. the swap space gets allocated as needed, and re-used as needed (I don't know the mechanism of this, but I remember the last time this changed from vm=max(ram,swap) to vm=ram+swap)

I have not heard of many people swapping and not thrashing lately.
I think part of the problem is that we do random access to the swap
partition which makes us seek limited. And since the number of
seeks per unit time has been increasing at a linear or slower rate
that if we are doing random disk I/O then the amount we can use
the disk for is very limited. I wonder if we could figure out
how to push and pull 1M or bigger chunks into and out of swap?

it has been noted by many people that linux is very slow to pull things back into ram from swap, significantly slower then simple seed limiting would seem to account for.

Davdi Lang
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/