Re: efficacy of Linux w/o swap

From: Robert Nichols (SEE_SIGNATURE_at_localhost.localdomain.invalid)
Date: 05/17/05


Date: Tue, 17 May 2005 15:21:42 +0000 (UTC)

In article <d6bdpo02fjq@news2.newsguy.com>, <phil-news-nospam@ipal.net> wrote:
:
:Apparently even if there is no swap space, the kernel looks around for
:dirty pages to write. And in at least 2.4 it gets rather bad when
:memory is full and slows down. Others have said 2.6 has an inverse
:lookup that should help, but I don't think a single pass of all pages
:can account for such an extreme amount of time. Something must be
:causing more than that.

The other thing the kernel will do in an out-of-memory situation is to
start throwing away text pages since those can always be reloaded from
the disk. That causes a huge performance hit if those pages are
actually needed since the process will be forced to wait until they are
paged back in from a disk that, in your case, is already saturated with
I/O. That certainly shouldn't be happening if there are buffer cache
pages that could simply be discarded.

All I can guess is that your disk I/O isn't quite keeping up with the
data rate, eventually memory becomes filled with dirty (unwritten)
buffers, and then the kernel is forced to discard text pages to satisfy
memory requests. Unfortunately I have no idea what you might be able to
tune to avoid that situation.

-- 
Bob Nichols         AT comcast.net I am "rnichols42"


Relevant Pages

  • Re: [opensuse] [OT] unstable system - still trying to identify the culprit.
    ... Have you monitored memory, swap, cpu and disk load while the system is ... I had a problem on a 32-bit system where I was using 4K kernel stacks. ... Does your CPU use any frequency scaling? ...
    (SuSE)
  • Re: Page Cache writeback too slow, SSD/noop scheduler/ext2
    ... When memory gets low this will result in very irregular performance ... The wk_update function does not write enough dirty pages, ... This forced write fills the disk queue and starves read calls that MySQL ... the real problem is in the writeback algorithm ...
    (Linux-Kernel)
  • Re: [ext3][kernels >= 2.6.20.7 at least] KDE going comatose when FS is under heavy write load (massi
    ... Especially with lots of memory, allowing 40% of that memory to be dirty is ... queueing, if you fill up the disk queue with a few dozen (depends on the ...
    (Linux-Kernel)
  • RE: Page Cache writeback too slow, SSD/noop scheduler/ext2
    ... When memory gets low this will result in very irregular performance drops. ... The wk_update function does not write enough dirty pages, ... This forced write fills the disk queue and starves read calls that MySQL is ... the real problem is in the writeback algorithm ...
    (Linux-Kernel)
  • Re: sharing memory with non-children
    ... See the man pages for mmap, munmap, and msync; the kernel decides when to flush dirty pages to disk. ... Flushing them to disk isn't necessary in order to keep them in sync -- you just map each process's page in its virtual address space to the same physical memory, and they stay in sync regardless of whether it's all instantly flushed to disk or is never flushed to disk. ...
    (comp.unix.programmer)