From: "Török Edwin" <edwintorok@gmail.com>
To: linux-btrace@vger.kernel.org
Subject: Re: [Patch] blkiomon: repost with some fixes and improvements
Date: Fri, 18 Jul 2008 15:18:24 +0000 [thread overview]
Message-ID: <4880B440.4040902@gmail.com> (raw)
In-Reply-To: <1216377086.8497.4.camel@kitka.ibm.com>
On 2008-07-18 18:15, Alan D. Brunelle wrote:
> Török Edwin wrote:
>
>> On 2008-07-18 13:31, Martin Peschke wrote:
>>
>>> recent changes:
>>> - added man page
>>> - beautified human-readable output
>>> - fixed an x86 compile error caused by incomplete endianess handling
>>> - fixed some x86 __u64 vs. unsigned long compiler warnings
>>> - fixed checking of a command line argument
>>>
>>>
>>> blkiomon periodicaly generates per devive request size and request latency
>>> statistics from blktrace data. It provides histograms as well as data that
>>>
>>>
>> Does it also measure latency caused by the request queues being full?
>> (which happens around here):
>> blk-core.c:get_request:
>> /*
>> * The queue is full and the allocating
>> * process is not a "batcher", and not
>> * exempted by the IO scheduler
>> */
>> goto out;
>>
>> That would be very useful to trace some high latencies I am seeing, see
>> discussion here:
>> http://lkml.org/lkml/2008/7/12/104
>>
>> Best regards,
>> --Edwin
>>
>
> Hi Edwin -
>
> If you could try this, it might provide some more data. This is very
> hastily thrown together, so it may need some work. Basically: I wrote a
> Python script which chains together blktrace | blkparse and takes the
> output looking for sleep requests, and then a successful get request on
> that same device. It then outputs min/avg/max as in:
>
> 1 sleepers 0.142157151
> 1 sleepers 0.174224178
> 3 sleepers min= 0.027375521 avg= 0.048117339 max= 0.075909947
> 1 sleepers 0.132267452
> 1 sleepers 0.030572955
> 2 sleepers min= 0.060603135 avg= 0.071087077 max= 0.081571020
> 1 sleepers 0.002082554
> 1 sleepers 0.033337675
> 1 sleepers 0.010796369
>
> (with 1 sleeper, I leave off the min/max stuff). The values are in
> seconds (so above I'm seeing 0.01 to 0.17+ seconds of sleeping...)
>
> To run it (as root):
>
> # ./qsg.py <device> [<device> ...]
>
> So, for me:
>
> # ./qsg.py /dev/sda
>
> This will produce output only when sleeps-for-requests occur. (I think
> other logic in the block I/O layer will put off other potential
> requesters - I'm looking into how to measure that next.)
>
> For now the script just assumes that the debugfs stuff is mounted at
> /sys/kernel/debug...
>
> Let me know if this needs some tweaking...
>
> BTW: I can't seem to reproduce your problem (I do see the sleeps from my
> script, but the system seems responsive otherwise). I have a 4-core
> (dual-socket) Xeon box w/ 8GB RAM plus 5 SAS drives. I'm using Ubuntu
> 8.04 w/ an Ext3 FS for root (where I was running the test). I tried
> bumping the dd' counts (large amount of RAM), but that didn't make a
> difference.
>
> I will try some more dd's just in case...
>
> Alan
>
Thanks for the patch, I'll give it a try today.
The most reliable way to reproduce is to run a dd that copies about
10-20Gb, and rm the file immediately.
Then try that find / ^C stuff, it usually occurs right at the end of the
dd (when the file is probably removed).
Best regards,
--Edwin
next prev parent reply other threads:[~2008-07-18 15:18 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-18 10:31 [Patch] blkiomon: repost with some fixes and improvements Martin Peschke
2008-07-18 10:45 ` Török Edwin
2008-07-18 13:24 ` Alan D. Brunelle
2008-07-18 15:15 ` Alan D. Brunelle
2008-07-18 15:18 ` Török Edwin [this message]
2008-07-18 15:28 ` Alan D. Brunelle
2008-07-18 20:44 ` Török Edwin
2008-07-18 22:59 ` Alan D. Brunelle
2008-07-21 18:45 ` Alan D. Brunelle
2008-07-21 18:56 ` Török Edwin
2008-07-21 19:03 ` Török Edwin
2008-07-21 19:34 ` Alan D. Brunelle
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=4880B440.4040902@gmail.com \
--to=edwintorok@gmail.com \
--cc=linux-btrace@vger.kernel.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;
as well as URLs for NNTP newsgroup(s).