xfs
[Top] [All Lists]

Re: partially uptodate page reads

To: Hisashi Hifumi <hifumi.hisashi@xxxxxxxxxxxxx>
Subject: Re: partially uptodate page reads
From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Date: Sun, 27 Jul 2008 23:51:24 -0700
Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>, Nick Piggin <nickpiggin@xxxxxxxxxxxx>, jack@xxxxxx, linux-ext4@xxxxxxxxxxxxxxx, linux-fsdevel@xxxxxxxxxxxxxxx, xfs@xxxxxxxxxxx
In-reply-to: <6.0.0.20.2.20080728115511.045088a8@xxxxxxxxxx>
References: <200807250117.11331.nickpiggin@xxxxxxxxxxxx> <20080724175913.GA32117@xxxxxxxxxxxxx> <20080724120841.81c72be9.akpm@xxxxxxxxxxxxxxxxxxxx> <6.0.0.20.2.20080728115511.045088a8@xxxxxxxxxx>
Sender: xfs-bounce@xxxxxxxxxxx
On Mon, 28 Jul 2008 13:34:12 +0900 Hisashi Hifumi 
<hifumi.hisashi@xxxxxxxxxxxxx> wrote:

> Hi
> 
> >> > 
> >> > Are there significant numbers of people using block size < page size in
> >> > situations where performance is important and significantly improved by
> >> > this patch? Can you give any performance numbers to illustrate perhaps?
> >> 
> >> With XFS lots of people use 4k blocksize filesystems on ia64 systems
> >> with 16k pages, so an optimization like this would be useful.
> >
> >As Nick says, we really should have some measurement results which
> >confirm this theory.  Maybe we did do some but they didn't find theor
> >way into the changelog.
> >
> >I've put the patch on hold until this confirmation data is available.
> >
> 
> I've got some performance number.
> I wrote a benchmark program and got result number with this program.
> This benchmark do:
>       1, mount and open a test file.
>       2, create a 512MB file.
>       3, close a file and umount.
>       4, mount and again open a test file.
>       5, pwrite randomly 300000 times on a test file. offset is aligned by IO 
> size(1024bytes).
>       6, measure time of preading randomly 100000 times on a test file.
> 
> The result was:
>       2.6.26
>         330 sec
> 
>       2.6.26-patched
>         226 sec
> 
> Arch:i386 
> Filesystem:ext3
> Blocksize:1024 bytes
> Memory: 1GB
> 
> On ext3/4, a file is written through buffer/block. So random read/write mixed 
> workloads
> or random read after random write workloads are optimized with this patch 
> under 
> pagesize != blocksize environment. This test result showed this.

OK, thanks.  Those are pretty nice numbers for what is probably a
fairly common workload.


<Prev in Thread] Current Thread [Next in Thread>