Messages in this thread | ![/](/images/icornerl.gif) | | Subject | Re: Slab allocator . . . cache? WTF is it? | From | Doug McNaught <> | Date | Tue, 30 Dec 2003 18:04:54 -0500 |
| |
john moser <bluefoxicy@linux.net> writes:
> I'm wondering, what IS cache? It seems to increase even when swap > is not used, and sometimes when there's no swap partition enabled. > It also seems to cause me to run into swap when I have ample ram > available, assuming that cache is just some sort of cache that is > copied from and mirrors another portion of ram for some sort of > speed increase. It's wasteful to me, and I want to more understand > its implimentation and its purpose, and in all honesty limit its > impact if possible.
Short answer: cache is the use of memory to store what would otherwise have to be read from disk, like parts of frequently used files etc. Linux will trade off cache against other RAM needs like program memory on an ongoing basis, and (almost always) does a really good job of it.
Don't be alarmed about going into swap somewhat in normal operation--Linux is storing less important data on the disk to make more room in RAM for "hot" data. Obviously, if you have hundreds of megs in swap or it grows quickly, you may need to look at it.
> I got this RAM upgrade because I was using about 676M of RAM total, > including swap, at peak; and now I find myself using 820M RAM at > peak and about 750-800 continually.
That means the kernel is doing exactly what it's supposed to do. If memory isn't needed by programs and isn't used for cache, it just goes to waste, so Linux tries to use it for one or the other. :)
-Doug - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| ![\](/images/icornerr.gif) |