From: James Pearson <james-p@moving-picture.com>
To: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Reducing inode cache usage on 2.4?
Date: Sat, 18 Dec 2004 00:32:54 +0000 [thread overview]
Message-ID: <41C37AB6.10906@moving-picture.com> (raw)
In-Reply-To: <20041217151228.GA17650@logos.cnet>
Marcelo Tosatti wrote:
>
>>Or am I looking in completely the wrong place i.e. the inode cache is
>>not the problem?
>
>
> No, in your case the extreme inode/dcache sizes indeed seem to be a problem.
>
> The default kernel shrinking ratio can be tuned for enhanced reclaim efficiency.
>
>
>>xfs_inode 931428 931428 408 103492 103492 1 : 124 62
>>dentry_cache 499222 518850 128 17295 17295 1 : 252 126
>
>
> vm_vfs_scan_ratio:
> ------------------
> is what proportion of the VFS queues we will scan in one go.
> A value of 6 for vm_vfs_scan_ratio implies that 1/6th of the
> unused-inode, dentry and dquot caches will be freed during a
> normal aging round.
> Big fileservers (NFS, SMB etc.) probably want to set this
> value to 3 or 2.
>
> The default value is 6.
> =============================================================
>
> Tune /proc/sys/vm/vm_vfs_scan_ratio increasing the value to 10 and so on and
> examine the results.
Thanks for the info - but doesn't increasing the value of
vm_vfs_scan_ratio mean that less of the caches will be freed?
Doing a few tests (on another test file system with 2 million or so
files and 1Gb of memory) running 'find $disk -type f', with
vm_vfs_scan_ratio set to 6 (or 10), the first two column values for
xfs_inode, linvfs_icache and dentry_cache in /proc/slabinfo reach about
900000 and stay around that value, but setting vm_vfs_scan_ratio to 1,
then each value still reaches 900000, but then falls to a few thousand
and increases up to 900000 and then drop away again and repeats.
This still happens when I cat many large files (100Mb) to /dev/null at
the same time as running the find i.e. the inode caches can still reach
90% of the memory before being reclaimed (with vm_vfs_scan_ratio set to 1).
If I stop the find process when the inode caches reach about 90% of the
memory, and then start cat'ing the large files, it appears the inode
caches are never reclaimed (or longer than it takes to cat 100Gb of data
to /dev/null) - is this expected behaviour?
It seems the inode cache has priority over cached file data.
What triggers the 'normal ageing round'? Is it possible to trigger this
earlier (at a lower memory usage), or give a higher priority to cached data?
Thanks
James Pearson
next prev parent reply other threads:[~2004-12-18 0:33 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-12-17 17:26 Reducing inode cache usage on 2.4? James Pearson
2004-12-17 15:12 ` Marcelo Tosatti
2004-12-17 21:52 ` Willy Tarreau
2004-12-18 0:32 ` James Pearson [this message]
2004-12-18 1:21 ` Andrew Morton
2004-12-18 11:02 ` Marcelo Tosatti
2004-12-20 13:47 ` James Pearson
2004-12-20 12:46 ` Marcelo Tosatti
2004-12-20 15:10 ` Andrea Arcangeli
2004-12-20 15:06 ` Marcelo Tosatti
2004-12-20 17:54 ` Andrea Arcangeli
2004-12-20 15:43 ` Marcelo Tosatti
2004-12-20 19:20 ` Andrea Arcangeli
2004-12-21 11:33 ` James Pearson
2004-12-21 13:22 ` Andrea Arcangeli
2004-12-21 13:59 ` James Pearson
2004-12-21 14:39 ` Andrea Arcangeli
2004-12-18 15:02 ` Marcelo Tosatti
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=41C37AB6.10906@moving-picture.com \
--to=james-p@moving-picture.com \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo.tosatti@cyclades.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.