WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH] Std VGA Performance

To: "Keir Fraser" <Keir.Fraser@xxxxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH] Std VGA Performance
From: "Robert Phillips" <rsp.vi.xen@xxxxxxxxx>
Date: Thu, 25 Oct 2007 13:31:34 -0400
Cc: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Thu, 25 Oct 2007 10:32:15 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:references; bh=o5d4X0vygU8iF3mCzOuVgO4p90dDWrWvY8jG7ZmjCd8=; b=nfVmUyhRtGfgaUwEOEYrBkzlbHPsbV80yAi+XNcEjKO80uWKT9zFpLxNpZgoxInFI2P2WD7Iz11atUEcmnyMpaN5FV+uuzf+O5tFzQ0BuTp11ILTQ1BHTCTeoWtsSZZmw9GmmQ25GO69frWOBWK/V1T4NI+ApxNNeM93hMgX9Cg=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:references; b=ozdgFFpy2Kv2lTG76ir4UbKEtkzg8mwK/LUGB4a4a6DKi05Wc49HojE9JScFihXMN3BH1NBc6MNQWlnsbGg6Cm07CkMtDiKSZXCOyNcg+WcDc2S+ez4CWRcJXcri3GXBAaUBACJBU9UXfJIHvGeN+JoFsOcmU4aVHwUGPpmvnpk=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <C346775E.17710%Keir.Fraser@xxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <fc060d960710250828s8c05097p163b8fb7f3eaa79f@xxxxxxxxxxxxxx> <C346775E.17710%Keir.Fraser@xxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
The performance is poor with increased slots and without emulation.

As presented the emulation code treats the buffered-io slots as an asynchronous queue.  The stdvga emulator pushes ioreqs into the queue but need not wait for any response because it can satisfy read requests locally.  (The only time it must wait is when the queue becomes full.)

Without the emulation, the code must block on each read (of which there are many) waiting for QEMU to provide an answer.  This really slows things down and renders the buffer largely useless.  I don't believe it ever gets full;  there are never enough consecutive writes to fill it.

With both increased slots and emulation, the performance feels so very much better.  Like taking a stone out of your shoe.  :-)

-- rsp

On 10/25/07, Keir Fraser <Keir.Fraser@xxxxxxxxxxxx> wrote:
On 25/10/07 16:28, "Robert Phillips" < rsp.vi.xen@xxxxxxxxx> wrote:

How much benefit comes from immediate servicing of PIO input ops versus the
massive increase in buffered-io slots? Removing the former optimisation
would certainly make the patch a lot smaller!

Subjectively, the performance improvement appears substantial.  We have tested the code with the stdvga emulation and with and without the increased number of slots. With more slots the screen painting goes from being fast to very fast.

As you've noticed, the increase in number of slots is compensated by the decrease in slot size (so there is no increase in memory use) at the cost of packing (and unpacking) ioreqs as they are written to (and read from) the buffer.

I guess what I'm really interested in is the performance /with/ the increased number of slots and with versus without the stdvga emulation. Since it's the stdvga emulation that really adds the complexity.

 -- Keir



--
--------------------------------------------------------------------
Robert S. Phillips                          Virtual Iron Software
rphillips@xxxxxxxxxxxxxxx                Tower 1, Floor 2
978-849-1220                                 900 Chelmsford Street
                                                    Lowell, MA 01851
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel