Re: fio posixaio performance problem
From: Gui Jianfeng
Date: Thu Aug 04 2011 - 21:37:48 EST
On 2011-8-5 8:56, Gui Jianfeng wrote:
> On 2011-8-4 22:12, Vivek Goyal wrote:
>> On Thu, Aug 04, 2011 at 03:44:55PM +0800, Gui Jianfeng wrote:
>>
>> [..]
>>>> oh, not related per your blktrace. so we have two problems here:
>>>> 1. fio doesn't dispatch request in 8ms.
>>>> 2. no close request preempt.
>>>
>>> Yes, these're actual factors why performance is so bad.
>>>
>>>> both looks quite wield. can you post a longer blktrace output, like
>>>> for one second? the piece is too short.
>>>
>>> Attached.
>>
>> Gui, few observations from you log file.
>>
>> - preemption happened 1631 times and did not happen 527 times and idle
>> timer fired.
>>
>> - In some cases where preemption did not happen, next request seems to
>> be too far away (more than CFQQ_CLOSE_THR=8K sectors).
>>
>> - I noticed couple of cases where next request was with-in 8K distanace
>> still preemption did not happen. This makes me curious. Can you please
>
> Yes, I also noticed such case...
>
>> put some trace messages in should_preempt() and rq_close() call and see
>> what's going on?
>
> Will dig into it.
>
>>
>> For example, following trace shows that next request is 5176 sector behind
>> the previous one completed. I am wondering why did preemption not take
>> place.
>>
>> 8,0 0 606 2.751892651 16420 D W 512146800 + 8 [fio]
>> 8,0 2 579 2.752127950 0 C W 512146800 + 8 [0]
>>
>> 8,0 0 609 2.752235995 16421 Q WS 512141624 + 8 [fio]
>> 8,0 0 610 2.752238859 16421 G WS 512141624 + 8 [fio]
>> 8,0 0 612 2.752243818 16421 I W 512141624 + 8 [fio]
>> 8,0 0 0 2.752246262 0 m N cfq16421S / insert_request
>> 8,0 0 0 2.752247729 0 m N cfq16421S / add_to_rr
>> 8,0 2 0 2.759710295 0 m N cfq idle timer fired
>>
>> Putting some extra trace messages in CFQ might help here. BTW, which
>> kernel version are you using? 3.0?
>
> Yes, latest upstream kernel.
Vivek,
BTW, do you have any idea why fio doesn't issue any io in 8ms?
Thanks,
Gui
>
> Thanks,
> Gui
>
>>
>> Thanks
>> Vivek
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at http://www.tux.org/lkml/
>>
>>
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/