[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <49D5C972.8000903@garzik.org>
Date: Fri, 03 Apr 2009 04:31:46 -0400
From: Jeff Garzik <jeff@...zik.org>
To: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
CC: Linus Torvalds <torvalds@...ux-foundation.org>,
Andrew Morton <akpm@...ux-foundation.org>,
David Rees <drees76@...il.com>
Subject: Re: Linux 2.6.29
Linus Torvalds wrote:
>
> On Thu, 2 Apr 2009, Jeff Garzik wrote:
>> The most interesting thing I found: the SSD does 80 MB/s for the first ~1 GB
>> or so, then slows down dramatically. After ~2GB, it is down to 32 MB/s.
>> After ~4GB, it reaches a steady speed around 23 MB/s.
>
> Are you sure that isn't an effect of double and triple indirect blocks
> etc? The metadata updates get more complex for the deeper indirect blocks.
>
> Or just our page cache lookup? Maybe our radix tree thing hits something
> stupid. Although it sure shouldn't be _that_ noticeable.
>
>> There is a similar performance fall-off for the Seagate, but much less
>> pronounced:
>> After 1GB: 52 MB/s
>> After 2GB: 44 MB/s
>> After 3GB: steady state
>
> That would seem to indicate that it's something else than the disk speed.
Attached are some additional tests using sync_file_range, dd, an SSD and
a normal SATA disk. The test program -- overwrite.c -- is unchanged
from my last posting, basically the same as Linus's except with
posix_fadvise()
Observations:
* the no-name SSD does seem to burst the first ~1GB of writes rapidly,
but degrades to a much lower sustained level, as observed before.
Repeated tests do not produce ~80 MB/s, only the first test, which lends
credence to the theory about background activity.
* For the SSD, overwrite is noticeably faster than dd.
* For the Seagate NCQ hard drive, dd is noticeably faster than overwrite.
* fadvise() appears to help, but mostly the results are either
inconclusive or lost in the noise: A slight increase in throughput, and
a slight increase in system time.
The test sequence for both SATA devices was the following:
3 x dd
3 x overwrite
3 x overwrite w/ fadvise(don't need)
System setup: Intel Nahalem(sp?) x86-64, ICH10, Fedora 10, ext3
filesystem (mounted defaults + noatime), 2.6.29 vanilla kernel.
Regards,
Jeff
View attachment "test-output.txt" of type "text/plain" (2804 bytes)
Download attachment "run-test.sh" of type "application/x-sh" (482 bytes)
Powered by blists - more mailing lists