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

Re: [Xen-devel] Scheduling of I/O domains



> It seems to me that this problem doesn't have anything to do with the 
> choice of scheduling policy or parameters; It is about when the 
> scheduler is called. It appears as though the xen cpu scheduler 
> currently only runs when the hardware timer ticks. It does not run when 
> an external interrupt happens. So there is a large latency introduced to 
> I/O interrupts, and this limits I/O performance. Changing the scheduler 
> algorithm won't help this.
> 
> The only way to avoid this is to immediately dispatch the I/O domain 
> responsible for a given I/O interrupt as soon as that interrupt occurs. 
> This means giving I/O domains with pending interrupts scheduling 
> priority over any "regular" domains. Just as in a "normal" operating 
> system, interrupt service routines must complete before any user 
> processes are executed. Otherwise, latencies are introduced that kill 
> I/O performance.

When an event is queued for a domain we call a generic wakeup
function. A good deal more of that function ought to be
scheduler-specific, and should do something smarter than our current
default (which is to force a reschedule only if the CPU is idling).
However, fixing this shouldn't be that hard -- we should have saner
scheduling in the next few weeks.

 -- Keir


-------------------------------------------------------
This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.