public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
To: Al Boldi <a1426z@gawab.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [RFC] Limit the size of the pagecache
Date: Thu, 25 Jan 2007 13:54:16 +0530	[thread overview]
Message-ID: <45B86930.2090709@linux.vnet.ibm.com> (raw)
In-Reply-To: <200701250942.47321.a1426z@gawab.com>



Al Boldi wrote:
> Rik van Riel wrote:
>> Christoph Lameter wrote:
>>> This is a patch using some of Aubrey's work plugging it in what is IMHO
>>> the right way. Feel free to improve on it. I have gotten repeatedly
>>> requests to be able to limit the pagecache.
>> IMHO it's a bad hack.
>>
>> It would be better to identify the problem this "feature" is
>> trying to fix, and then fix the root cause.
> 
> Ok, here is the problem:  kswapd.
> 
> Limiting the page-cache memory inhibits invoking kswapd needlessly, aiding 
> performance and easing OOM pressures.

Apart from kswapd, limiting pagecache helps performance of
applications by not eating away their ANON pages or other parts of its
resident data set.  When there is enough free memory, then there is no
performance issue.  However memory is always utilized to the max.
Hence every pagecache page that is allocated should come from some
application's RSS, or from cold pagecache page.  If that page was
stolen from some application, then that application pays the price for
swapping or reading the page back to memory.  This scenario is what we
 want to avoid.  All that we are trying to achieve is that pagecache
eats a (unmapped) pagecache page and not steal memory from other
important application's resident set.

Certainly this should be a configurable option and kernel's behavior
should not be changed in general.

> I tried the patch; it works.

:)

> But it needs a bit of debugging.  Setting pagecache_ratio = 1 either 
> deadlocks or reduces thru-put to < 1mb/s.

Yes, going below 5% on my 1GB RAM machine causes severe performance
problems.  We need to hard wire a reasonable lower limit and not
provide a noose for the end user to tie around!

--Vaidy

> 
> Thanks!
> 
> --
> Al
> 
> -
> 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/
> 

  reply	other threads:[~2007-01-25  8:24 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-01-25  6:42 [RFC] Limit the size of the pagecache Al Boldi
2007-01-25  8:24 ` Vaidyanathan Srinivasan [this message]
2007-01-25 10:29   ` Peter Zijlstra
2007-01-25 11:23     ` Vaidyanathan Srinivasan
2007-01-25 11:57     ` Al Boldi
2007-01-25 11:57   ` Al Boldi
2007-01-25 18:37     ` Vaidyanathan Srinivasan
     [not found] <7GEEK-4lH-39@gated-at.bofh.it>
     [not found] ` <7GLdb-5Uz-13@gated-at.bofh.it>
     [not found]   ` <7GRix-7fU-1@gated-at.bofh.it>
     [not found]     ` <7GRLZ-7Uy-29@gated-at.bofh.it>
2007-01-25 14:51       ` Bodo Eggert
  -- strict thread matches above, loose matches on Subject: below --
2007-01-24  0:49 Christoph Lameter
2007-01-24  2:53 ` KAMEZAWA Hiroyuki
2007-01-24  3:01   ` Christoph Lameter
2007-01-24  5:47   ` Aubrey Li
2007-01-24  3:00 ` Nick Piggin
2007-01-24  3:14   ` Christoph Lameter
2007-01-24  3:51     ` Aubrey Li
2007-01-24  4:03       ` Nick Piggin
2007-01-26 10:27         ` Andrew Morton
2007-01-24  3:13 ` KAMEZAWA Hiroyuki
2007-01-24  4:30   ` Christoph Lameter
2007-01-24  5:15     ` KAMEZAWA Hiroyuki
2007-01-25  0:32       ` KAMEZAWA Hiroyuki
2007-01-25  2:41         ` Christoph Lameter
2007-01-25  3:12           ` KAMEZAWA Hiroyuki
2007-01-25  4:28             ` Rik van Riel
2007-01-25  5:19               ` KAMEZAWA Hiroyuki
2007-01-25  5:40                 ` Rik van Riel
2007-01-25  6:00                   ` KAMEZAWA Hiroyuki
2007-01-26 10:29       ` Andrew Morton
2007-01-26 18:01         ` KAMEZAWA Hiroyuki
2007-01-24  7:04 ` Vaidyanathan Srinivasan
2007-01-24  7:55 ` Peter Zijlstra
2007-01-24 12:50   ` Nick Piggin
2007-01-24 12:58     ` Peter Zijlstra
2007-01-24 14:58     ` Christoph Lameter
2007-01-24 20:06       ` Erik Andersen
2007-01-25  2:40         ` Christoph Lameter
2007-01-25  8:07           ` Vaidyanathan Srinivasan
2007-01-24 14:22   ` Aubrey Li
2007-01-24 14:56     ` Peter Zijlstra
2007-01-25  2:27       ` Aubrey Li
2007-01-24 12:33 ` Vaidyanathan Srinivasan
2007-01-24 14:56   ` Christoph Lameter
2007-01-25  4:17     ` Vaidyanathan Srinivasan
2007-01-25  4:45       ` Rik van Riel
2007-01-25  5:49         ` Vaidyanathan Srinivasan
2007-01-25 16:07           ` Rik van Riel
2007-01-25 17:57             ` Balbir Singh
2007-01-25  6:35       ` Aubrey Li
2007-01-25  6:47         ` Christoph Lameter
2007-01-25  7:49         ` Vaidyanathan Srinivasan
2007-01-25  4:18 ` Rik van Riel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=45B86930.2090709@linux.vnet.ibm.com \
    --to=svaidy@linux.vnet.ibm.com \
    --cc=a1426z@gawab.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox