public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Fengguang Wu <wfg@mail.ustc.edu.cn>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel@vger.kernel.org, Nick Piggin <npiggin@suse.de>
Subject: Re: [PATCH 0/9] mmap read-around and readahead
Date: Wed, 19 Dec 2007 15:37:11 +0800	[thread overview]
Message-ID: <398049842.25517@ustc.edu.cn> (raw)
Message-ID: <E1J4tUN-0002IB-F6@localhost> (raw)
In-Reply-To: <alpine.LFD.0.9999.0712161535090.21557@woody.linux-foundation.org>

On Sun, Dec 16, 2007 at 03:35:58PM -0800, Linus Torvalds wrote:
> 
> 
> On Sun, 16 Dec 2007, Fengguang Wu wrote:
> > 
> > Here are the mmap read-around related patches initiated by Linus.
> > They are for linux-2.6.24-rc4-mm1.  The one major new feature -
> > auto detection and early readahead for mmap sequential reads - runs
> > as expected on my desktop :-)
> 
> Just out of interest - did you check to see if it makes any difference to 
> any IO patterns (or even timings)?

Now I have some numbers on 100,000 sequential mmap reads:

                                    user       system    cpu        total
(1-1)  plain -mm, 128KB readaround: 3.224      2.554     48.40%     11.838
(1-2)  plain -mm, 256KB readaround: 3.170      2.392     46.20%     11.976
(2)  patched -mm, 128KB readahead:  3.117      2.448     47.33%     11.607

The patched (2) has smallest total time. It has no cache hit overheads
and less I/O block time(thanks to async readahead). Here the I/O size
makes no much difference, since there's only one single stream.

Note that (1-1)'s real I/O size is 64KB and (1-2)'s real I/O size is
128KB, since the half of the read-around pages will be cache hits.

Fengguang
---

PS. raw time numbers:

        1) linux-2.6.24-rc5-mm1, 128KB read_ahead_kb:

                3.27s user 2.62s system 50% cpu 11.730 total
                3.25s user 2.65s system 49% cpu 11.816 total
                3.07s user 2.62s system 47% cpu 11.911 total
                3.32s user 2.42s system 48% cpu 11.948 total
                3.21s user 2.46s system 48% cpu 11.787 total

        2) linux-2.6.24-rc5-mm1, 256KB read_ahead_kb:

                3.00s user 2.46s system 45% cpu 12.077 total
                3.41s user 2.51s system 49% cpu 12.038 total
                3.25s user 2.34s system 47% cpu 11.889 total
                3.13s user 2.33s system 45% cpu 11.922 total
                3.06s user 2.32s system 45% cpu 11.952 total

        3) linux-2.6.24-rc5-mm1 + this patchset, 128KB read_ahead_kb:

                2.79s user 2.26s system 43% cpu 11.515 total
                3.19s user 2.21s system 46% cpu 11.563 total
                3.28s user 2.51s system 49% cpu 11.596 total
                3.22s user 2.75s system 51% cpu 11.687 total
                3.08s user 2.58s system 48% cpu 11.643 total
                3.14s user 2.38s system 47% cpu 11.637 total


  parent reply	other threads:[~2007-12-19  7:37 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20071216115927.986126305@mail.ustc.edu.cn>
2007-12-16 11:59 ` [PATCH 0/9] mmap read-around and readahead Fengguang Wu
2007-12-16 23:35   ` Linus Torvalds
     [not found]     ` <E1J4atl-0000UI-4a@localhost>
2007-12-18 11:46       ` Fengguang Wu
     [not found]     ` <20071218114609.GA27778@mail.ustc.edu.cn>
     [not found]       ` <E1J4bK6-0001BG-Mp@localhost>
2007-12-18 12:13         ` Fengguang Wu
     [not found]     ` <E1J4tUN-0002IB-F6@localhost>
2007-12-19  7:37       ` Fengguang Wu [this message]
     [not found] ` <20071216120417.586021813@mail.ustc.edu.cn>
2007-12-16 11:59   ` [PATCH 1/9] readahead: simplify readahead call scheme Fengguang Wu
     [not found] ` <20071216120417.905514988@mail.ustc.edu.cn>
2007-12-16 11:59   ` [PATCH 3/9] readahead: auto detection of sequential mmap reads Fengguang Wu
     [not found] ` <20071216120418.055796608@mail.ustc.edu.cn>
2007-12-16 11:59   ` [PATCH 4/9] readahead: quick startup on sequential mmap readahead Fengguang Wu
     [not found] ` <20071216120418.201213716@mail.ustc.edu.cn>
2007-12-16 11:59   ` [PATCH 5/9] readahead: make ra_submit() non-static Fengguang Wu
     [not found] ` <20071216120418.360445517@mail.ustc.edu.cn>
2007-12-16 11:59   ` [PATCH 6/9] readahead: save mmap read-around states in file_ra_state Fengguang Wu
     [not found] ` <20071216120418.498110756@mail.ustc.edu.cn>
2007-12-16 11:59   ` [PATCH 7/9] readahead: remove unused do_page_cache_readahead() Fengguang Wu
     [not found] ` <20071216120418.639781633@mail.ustc.edu.cn>
2007-12-16 11:59   ` [PATCH 8/9] readahead: move max_sane_readahead() calls into force_page_cache_readahead() Fengguang Wu
     [not found] ` <20071216120418.787765636@mail.ustc.edu.cn>
2007-12-16 11:59   ` [PATCH 9/9] readahead: call max_sane_readahead() in ondemand_readahead() Fengguang Wu
     [not found] ` <20071216120417.748714367@mail.ustc.edu.cn>
2007-12-16 11:59   ` [PATCH 2/9] readahead: clean up and simplify the code for filemap page fault readahead Fengguang Wu
2007-12-18  8:19   ` Nick Piggin
     [not found]     ` <E1J4ay1-0000ak-3e@localhost>
2007-12-18 11:50       ` Fengguang Wu
2007-12-18 23:54       ` Nick Piggin
     [not found]         ` <E1J4spp-0001pR-JQ@localhost>
2007-12-19  6:55           ` Fengguang Wu

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=398049842.25517@ustc.edu.cn \
    --to=wfg@mail.ustc.edu.cn \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=npiggin@suse.de \
    --cc=torvalds@linux-foundation.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