qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 06/22] ehci: Speed up the timer of raising int f


From: Gerd Hoffmann
Subject: Re: [Qemu-devel] [PATCH 06/22] ehci: Speed up the timer of raising int from the async schedule
Date: Wed, 17 Oct 2012 13:01:40 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.8) Gecko/20121012 Thunderbird/10.0.8

On 10/15/12 15:00, Hans de Goede wrote:
> Hi,
> 
> On 10/15/2012 01:17 PM, Gerd Hoffmann wrote:
>> On 10/15/12 12:38, Hans de Goede wrote:
>>> Often the guest will queue up new packets in response to a packet, in
>>> the
>>> async schedule with its IOC flag set, completing. By speeding up the
>>> frame-timer, we notice these new packets earlier. This increases the
>>> speed (MB/s) of a Linux guest reading from a USB mass storage device
>>> by a
>>> factor of 1.15 on top of the "Improve latency of interrupt delivery"
>>> speed-ups, both with and without input pipelining enabled.
>>
>> Why not just set async_stepdown to 0?
> 
> We already do that whenever we run a package completion (it get sets when
> we move to the executing stage). What this patch does is request the
> frame timer to run again in 500 usecs instead of after 1 ms, thus making
> us see and process async transfers faster when they are queued up in
> response to just completed packages (which we've told the guest about with
> the int interrupt). This makes the USB-bus / device idle time between
> any 2 transfers of the 3 transfer involving USB storage BOT time shorter,
> thereby speeding things up.

Don't feel like having two mechanisms for wakeup rate control.  Can't we
integrate this with async_stepdown?  Changing the baseline maybe, so
stepdown=0 doesn't mean 1000 Hz but 2000 Hz?

cheers,
  Gerd




reply via email to

[Prev in Thread] Current Thread [Next in Thread]