All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wu Fengguang <wfg@mail.ustc.edu.cn>
To: Andrew Morton <akpm@osdl.org>
Cc: linux-kernel@vger.kernel.org, joern@wohnheim.fh-wedel.de,
	ioe-lkml@rameria.de, Martin Peschke <mp3@de.ibm.com>
Subject: Re: [PATCH 09/33] readahead: events accounting
Date: Sat, 27 May 2006 21:20:02 +0800	[thread overview]
Message-ID: <348735988.17875@ustc.edu.cn> (raw)
Message-ID: <20060527132002.GA4814@mail.ustc.edu.cn> (raw)
In-Reply-To: <20060525093627.4d37e789.akpm@osdl.org>

On Thu, May 25, 2006 at 09:36:27AM -0700, Andrew Morton wrote:
> Wu Fengguang <wfg@mail.ustc.edu.cn> wrote:
> >
> > A debugfs file named `readahead/events' is created according to advises from
> >  J?rn Engel, Andrew Morton and Ingo Oeser.
> 
> If everyone's patches all get merged up we'd expect that this facility be
> migrated over to use Martin Peschke's statistics infrastructure.
> 
> That's not a thing you should do now, but it would be a useful test of
> Martin's work if you could find time to look at it and let us know whether
> the infrastructure which he has provided would suit this application,
> thanks.

Hi, Martin is doing a great job, thanks.

I have read about its doc.  It should be suitable for various
readahead numbers. And it seems a trivial work to port to it :)

However it might also make sense to keep the current _table_ interface.
It shows us the whole picture at a glance:

% cat /debug/readahead/events
[table requests]     total   newfile     state   context  contexta [...]
cache_miss          136302       538      3860     11317       490
read_random          62176       160       424      1633        60
io_congestion            0         0         0         0         0
io_cache_hit         34521       663     10071     15611      1423
io_block            204302     42174     10408     68277      2226
readahead           251478     70746     96846     73636      2561
lookahead           136315     14805     86267     32738      2505
lookahead_hit       103384      8038     74605      9097       598
lookahead_ignore         0         0         0         0         0
readahead_mmap        6911         0         0         0         0
readahead_eof        70793     55935      8500       648       581
readahead_shrink       473         0       473         0         0
readahead_thrash         0         0         0         0         0
readahead_mutilt      2526        24      1079      1403        20
readahead_rescue      1209         0         0         0         0

[table pages]        total   newfile     state   context  contexta
cache_miss      1292350444    282817  35557285  86087568   5592690
read_random       10299237       177       426      1903        63
io_congestion            0         0         0         0         0
io_cache_hit       2194663      9289   1507054    414311    184715
io_block            204302     42174     10408     68277      2226
readahead         26122947    770681  21815335   3097682    259587
readahead_hit     23101714    588811  19906233   2209547    191269
lookahead         21397630    173502  19872014    936474    415640
lookahead_hit     18663196     98004  17879848    596562     88782
lookahead_ignore         0         0         0         0         0
readahead_mmap      170509         0         0         0         0
readahead_eof      1950484    432763   1342148     47368     34742
readahead_shrink     19900         0     19900         0         0
readahead_thrash         0         0         0         0         0
readahead_mutilt    220331       485    186922     29900      3024
readahead_rescue    119592         0         0         0         0

[table summary]      total   newfile     state   context  contexta
random_rate            19%        0%        0%        2%        2%
ra_hit_rate            88%       76%       91%       71%       73%
la_hit_rate            75%       54%       86%       27%       23%
var_ra_size          13850       130      5802      6709     10563
avg_ra_size            104        11       225        42       101
avg_la_size            157        12       230        29       166


When Martin's work is included into -mm, I would like to reduce
several col/rows from the table to Martin's infrastructure, and
perhaps add some more items. One obvious candidate collection is the
ra_account(NULL, ...) calls, which do not quite fit the table
interface and deserves individual files.

Wu

  parent reply	other threads:[~2006-05-27 13:19 UTC|newest]

Thread overview: 107+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-05-24 11:12 [PATCH 00/33] Adaptive read-ahead V12 Wu Fengguang
2006-05-24 11:12 ` Wu Fengguang
2006-05-25 15:44   ` Andrew Morton
2006-05-25 19:26     ` Michael Stone
2006-05-25 19:40     ` David Lang
2006-05-25 22:01       ` Andrew Morton
2006-05-25 20:28         ` David Lang
2006-05-26  0:48         ` Michael Stone
2006-05-26  1:19     ` Wu Fengguang
2006-05-26  1:19       ` Wu Fengguang
2006-05-26  2:10     ` Jon Smirl
2006-05-26  3:14       ` Nick Piggin
2006-05-26 14:00     ` Andi Kleen
2006-05-26 16:25       ` Andrew Morton
2006-05-26 23:54       ` Folkert van Heusden
2006-05-27  0:00         ` Con Kolivas
2006-05-27  0:08           ` Con Kolivas
2006-05-28 22:20             ` Diego Calleja
2006-05-28 22:31               ` kernel
2006-05-29  3:04                 ` Wu Fengguang
2006-05-29  3:04                   ` Wu Fengguang
2006-05-24 11:12 ` [PATCH 02/33] radixtree: look-aside cache Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-24 11:12 ` [PATCH 03/33] radixtree: hole scanning functions Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-25 16:19     ` Andrew Morton
2006-05-26  7:04       ` Wu Fengguang
2006-05-26  7:04         ` Wu Fengguang
2006-05-26 11:05       ` Wu Fengguang
2006-05-26 11:05         ` Wu Fengguang
2006-05-26 16:19           ` Andrew Morton
2006-05-24 11:12 ` [PATCH 04/33] readahead: page flag PG_readahead Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-25 16:23     ` Andrew Morton
2006-05-26  7:06       ` Wu Fengguang
2006-05-26  7:06         ` Wu Fengguang
2006-05-24 12:27   ` Peter Zijlstra
2006-05-24 12:37     ` Wu Fengguang
2006-05-24 12:37       ` Wu Fengguang
2006-05-24 12:48       ` Peter Zijlstra
2006-05-24 11:12 ` [PATCH 05/33] readahead: refactor do_generic_mapping_read() Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-24 11:12 ` [PATCH 06/33] readahead: refactor __do_page_cache_readahead() Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-25 16:30     ` Andrew Morton
2006-05-25 22:33       ` Paul Mackerras
2006-05-25 22:40         ` Andrew Morton
2006-05-26  7:13       ` Wu Fengguang
2006-05-26  7:13         ` Wu Fengguang
2006-05-24 11:12 ` [PATCH 07/33] readahead: insert cond_resched() calls Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-24 11:12 ` [PATCH 08/33] readahead: common macros Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-25  5:56     ` Nick Piggin
2006-05-25 10:41       ` Wu Fengguang
2006-05-25 10:41         ` Wu Fengguang
2006-05-26  3:33           ` Nick Piggin
2006-05-26  6:59             ` Wu Fengguang
2006-05-26  6:59               ` Wu Fengguang
2006-05-25 13:42       ` Wu Fengguang
2006-05-25 13:42         ` Wu Fengguang
2006-05-25 14:38           ` Andrew Morton
2006-05-25 16:33     ` Andrew Morton
2006-05-24 11:12 ` [PATCH 09/33] readahead: events accounting Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-25 16:36     ` Andrew Morton
2006-05-26  7:09       ` Wu Fengguang
2006-05-26  7:09         ` Wu Fengguang
2006-05-27 13:20       ` Wu Fengguang [this message]
2006-05-27 13:20         ` Wu Fengguang
2006-05-29  8:19           ` Martin Peschke
2006-05-24 11:12 ` [PATCH 10/33] readahead: support functions Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-25  5:13     ` Nick Piggin
2006-05-25 11:13       ` Wu Fengguang
2006-05-25 11:13         ` Wu Fengguang
2006-05-25 16:48     ` Andrew Morton
2006-05-26  7:31       ` Wu Fengguang
2006-05-26  7:31         ` Wu Fengguang
2006-05-24 11:12 ` [PATCH 11/33] readahead: sysctl parameters Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-25  4:50     ` [PATCH 12/33] readahead: min/max sizes Nick Piggin
2006-05-25 12:12       ` Wu Fengguang
2006-05-25 12:12         ` Wu Fengguang
2006-05-24 11:12 ` [PATCH 13/33] readahead: state based method - aging accounting Wu Fengguang
2006-05-24 11:12   ` Wu Fengguang
2006-05-26 17:04     ` Andrew Morton
2006-05-27  6:22       ` Wu Fengguang
2006-05-27  6:22         ` Wu Fengguang
2006-05-27  7:00           ` Andrew Morton
2006-05-27  7:22             ` Wu Fengguang
2006-05-27  7:22               ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 14/33] readahead: state based method - data structure Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-25  6:03     ` Nick Piggin
2006-05-25 10:43       ` Wu Fengguang
2006-05-25 10:43         ` Wu Fengguang
2006-05-26 17:05     ` Andrew Morton
2006-05-27  7:02       ` Wu Fengguang
2006-05-27  7:02         ` Wu Fengguang
2006-05-27  8:27       ` Wu Fengguang
2006-05-27  8:27         ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 15/33] readahead: state based method - routines Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-26 17:15     ` Andrew Morton
2006-05-27  2:06       ` Wu Fengguang
2006-05-27  2:06         ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 17/33] readahead: context based method Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-25  5:26     ` Nick Piggin
2006-05-25  8:03       ` Wu Fengguang
2006-05-25  8:03         ` Wu Fengguang
2006-05-26 17:23     ` Andrew Morton
2006-05-27  2:12       ` Wu Fengguang
2006-05-27  2:12         ` Wu Fengguang
2006-05-26 17:27     ` Andrew Morton
2006-05-27  8:04       ` Wu Fengguang
2006-05-27  8:04         ` Wu Fengguang
2006-05-24 12:37   ` Peter Zijlstra
2006-05-24 13:33     ` Wu Fengguang
2006-05-24 13:33       ` Wu Fengguang
2006-05-24 15:53       ` Peter Zijlstra
2006-05-25  1:25         ` Wu Fengguang
2006-05-25  1:25           ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 18/33] readahead: initial method - guiding sizes Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 19/33] readahead: initial method - thrashing guard size Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 20/33] readahead: initial method - expected read size Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-25  5:34     ` [PATCH 22/33] readahead: initial method Nick Piggin
2006-05-25  8:59       ` Wu Fengguang
2006-05-25  8:59         ` Wu Fengguang
2006-05-26 17:29     ` [PATCH 20/33] readahead: initial method - expected read size Andrew Morton
2006-05-27  6:38       ` Wu Fengguang
2006-05-27  6:38         ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 23/33] readahead: backward prefetching method Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-26 17:37     ` Nate Diller
2006-05-26 19:22       ` Nathan Scott
2006-05-28 12:30         ` Wu Fengguang
2006-05-28 12:30           ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 24/33] readahead: seeking reads method Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 25/33] readahead: thrashing recovery method Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 26/33] readahead: call scheme Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 27/33] readahead: laptop mode Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-26 17:38     ` Andrew Morton
2006-05-24 11:13 ` [PATCH 28/33] readahead: loop case Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-24 14:01   ` Limin Wang
2006-05-25 15:48     ` wfg
2006-05-25 15:48       ` wfg
2006-05-24 11:13 ` [PATCH 29/33] readahead: nfsd case Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 30/33] readahead: turn on by default Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 31/33] readahead: debug radix tree new functions Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 32/33] readahead: debug traces showing accessed file names Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang
2006-05-24 11:13 ` [PATCH 33/33] readahead: debug traces showing read patterns Wu Fengguang
2006-05-24 11:13   ` Wu Fengguang

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=348735988.17875@ustc.edu.cn \
    --to=wfg@mail.ustc.edu.cn \
    --cc=akpm@osdl.org \
    --cc=ioe-lkml@rameria.de \
    --cc=joern@wohnheim.fh-wedel.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mp3@de.ibm.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.