From: Chris Mason <mason@suse.com>
To: Jens Axboe <axboe@suse.de>
Cc: Andrea Arcangeli <andrea@suse.de>, Andrew Morton <akpm@osdl.org>,
marcelo@conectiva.com.br, linux-kernel@vger.kernel.org
Subject: Re: RFC on io-stalls patch
Date: 15 Jul 2003 10:18:09 -0400 [thread overview]
Message-ID: <1058278688.4012.57.camel@tiny.suse.com> (raw)
In-Reply-To: <20030715091730.GI833@suse.de>
[-- Attachment #1: Type: text/plain, Size: 3712 bytes --]
On Tue, 2003-07-15 at 05:17, Jens Axboe wrote:
> > BTW, the contest run times vary pretty wildy. My 3 compiles with
> > io_load running on 2.4.21 were 603s, 443s and 515s. This doesn't make
> > the average of the 3 numbers invalid, but we need a more stable metric.
>
> Mine are pretty consistent [1], I'd suspect that it isn't contest but your
> drive tcq skewing things. But it would be nice to test with other things
> as well, I just used contest because it was at hand.
I hacked up my random io generator a bit, combined with tiobench it gets
pretty consistent numbers. rio is attached, it does lots of different
things but the basic idea is to create a sparse file and then do io of
random sizes into random places in the file.
So, random writes with a large max record size can starve readers pretty
well. I've been running it like so:
#!/bin/sh
#
# rio sparse file size of 2G, writes only, max record size 1MB
#
rio -s 2G -W -m 1m &
kid=$!
sleep 1
tiobench.pl --threads 8
kill $kid
wait
tiobench is nice because it also gives latency numbers, I'm playing a
bit to see how the number of tiobench threads changes things, but the
contest output is much easier to compare. After a little formatting:
Sequential Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
------------ ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.22-pre5 1792 4096 8 6.92 2.998% 4.363 9666.86 0.02245 0.00000 231
2.4.21 1792 4096 8 8.40 3.275% 3.052 3249.79 0.00131 0.00000 256
Random Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
------------ ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.22-pre5 1792 4096 8 1.41 0.540% 20.932 604.13 0.00000 0.00000 260
2.4.21 1792 4096 8 0.65 0.540% 41.458 2689.96 0.05000 0.00000 120
Sequential Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
------------ ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.22-pre5 1792 4096 8 13.77 8.793% 1.550 3416.72 0.00567 0.00000 157
2.4.21 1792 4096 8 15.38 8.847% 1.169 47134.93 0.00719 0.00305 174
Random Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
------------ ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.22-pre5 1792 4096 8 0.68 1.470% 0.027 12.91 0.00000 0.00000 46
2.4.21 1792 4096 8 0.67 0.598% 0.043 67.21 0.00000 0.00000 112
rio output:
2.4.22-pre5 total io 2683.087 MB, 428.000 seconds 6.269 MB/s
2.4.21 total io 3231.576 MB, 381.000 seconds 8.482 MB/s
2.4.22-pre5 writes: 2683.087 MB, 6.269 MB/s
2.4.21 writes: 3231.576 MB, 8.482 MB/s
Without breaking tiobench apart to skip the write phase it is hard to
tell where the rio throughput loss is. My guess is that most of it was
lost during the sequential write tiobench phase.
Since jens is getting consistent contest numbers, this isn't meant to
replace it. Just another data point worth looking at. Jens if you want
to send me your current patch I can give it a quick spin here.
-chris
[-- Attachment #2: rio.c.gz --]
[-- Type: application/x-gzip, Size: 3177 bytes --]
next prev parent reply other threads:[~2003-07-15 14:04 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-07-08 20:06 RFC on io-stalls patch Marcelo Tosatti
2003-07-10 13:57 ` Jens Axboe
2003-07-11 14:13 ` Chris Mason
2003-07-12 0:20 ` Nick Piggin
2003-07-12 18:37 ` Chris Mason
2003-07-12 7:37 ` Jens Axboe
2003-07-12 7:48 ` Jens Axboe
2003-07-12 18:32 ` Chris Mason
2003-07-13 0:33 ` Andrea Arcangeli
2003-07-13 9:01 ` Jens Axboe
2003-07-13 16:20 ` Chris Mason
2003-07-13 16:45 ` Jeff Garzik
2003-07-13 19:33 ` Andrea Arcangeli
2003-07-13 17:47 ` Jens Axboe
2003-07-13 19:35 ` Andrea Arcangeli
2003-07-14 0:36 ` Chris Mason
2003-07-13 19:19 ` Andrea Arcangeli
2003-07-14 5:49 ` Jens Axboe
2003-07-14 12:23 ` Marcelo Tosatti
2003-07-14 13:12 ` Jens Axboe
2003-07-14 19:51 ` Jens Axboe
2003-07-14 20:09 ` Chris Mason
2003-07-14 20:19 ` Andrea Arcangeli
2003-07-14 21:24 ` Chris Mason
2003-07-15 5:46 ` Jens Axboe
2003-07-14 20:09 ` Marcelo Tosatti
2003-07-14 20:24 ` Andrea Arcangeli
2003-07-14 20:34 ` Chris Mason
2003-07-15 5:35 ` Jens Axboe
[not found] ` <20030714224528.GU16313@dualathlon.random>
2003-07-15 5:40 ` Jens Axboe
[not found] ` <1058229360.13317.364.camel@tiny.suse.com>
2003-07-15 5:43 ` Jens Axboe
[not found] ` <20030714175238.3eaddd9a.akpm@osdl.org>
[not found] ` <20030715020706.GC16313@dualathlon.random>
2003-07-15 5:45 ` Jens Axboe
2003-07-15 6:01 ` Andrea Arcangeli
2003-07-15 6:08 ` Jens Axboe
2003-07-15 7:03 ` Andrea Arcangeli
2003-07-15 8:28 ` Jens Axboe
2003-07-15 9:12 ` Chris Mason
2003-07-15 9:17 ` Jens Axboe
2003-07-15 9:18 ` Jens Axboe
2003-07-15 9:30 ` Chris Mason
2003-07-15 10:03 ` Andrea Arcangeli
2003-07-15 10:11 ` Jens Axboe
2003-07-15 14:18 ` Chris Mason [this message]
2003-07-15 14:29 ` Jens Axboe
2003-07-16 17:06 ` Chris Mason
2003-07-15 9:22 ` Chris Mason
2003-07-15 9:59 ` Andrea Arcangeli
2003-07-15 9:48 ` Andrea Arcangeli
2003-07-14 20:16 ` Andrea Arcangeli
2003-07-14 20:17 ` Marcelo Tosatti
2003-07-14 20:27 ` Andrea Arcangeli
2003-07-15 5:26 ` Jens Axboe
2003-07-15 5:48 ` Andrea Arcangeli
2003-07-15 6:01 ` Jens Axboe
2003-07-15 6:33 ` Andrea Arcangeli
2003-07-15 11:22 ` Alan Cox
2003-07-15 11:27 ` Jens Axboe
2003-07-16 12:43 ` Andrea Arcangeli
2003-07-16 12:46 ` Jens Axboe
2003-07-16 12:59 ` Andrea Arcangeli
2003-07-16 13:04 ` Jens Axboe
2003-07-16 13:11 ` Andrea Arcangeli
2003-07-16 13:21 ` Jens Axboe
2003-07-16 13:44 ` Andrea Arcangeli
2003-07-16 14:00 ` Jens Axboe
2003-07-16 14:24 ` Andrea Arcangeli
2003-07-16 16:49 ` Andrew Morton
-- strict thread matches above, loose matches on Subject: below --
2003-07-15 18:47 Shane Shrybman
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=1058278688.4012.57.camel@tiny.suse.com \
--to=mason@suse.com \
--cc=akpm@osdl.org \
--cc=andrea@suse.de \
--cc=axboe@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo@conectiva.com.br \
/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