From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: [PATCH][HVM] remove qemu shadow_vram patch for performance Date: Wed, 21 Mar 2007 16:09:11 -0500 Message-ID: <46019EF7.2010607@codemonkey.ws> References: <20070315033005.GD12238@edwin-srv.sh.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org Keir Fraser wrote: > > > On 15/3/07 03:30, "Zhai, Edwin" wrote: > >> remove qemu shadow_vram patch and force a whole screen update each time for >> performance. >> >> W/O this patch, there is huge performance drop in HVM domain when adding other >> guest(windows or linux with xwindow). >> >> shadow_vram_revert.patch - revert the shadow_vram patch >> shadow_vram_force_update.patch - explictly redraw screen each time > > How can updating the whole screen 30 times a second be faster than the > memcmp() that we do currently? It really depends. The VNC display already has a minimization mechanism so doign the memcmp() in the vga driver doesn't help at all. For SDL, when using X, it's going to be doing an XShmImage so the difference is only in the size of update (no data is transferred to the X server). If the X server is double buffering the framebuffer (which I have to assume it's doing), then you're just paying the cost of a memcpy() in the X server that you would normally pay in qemu-dm. However, if you're forwarding SDL over X, or for some reason your X server isn't using XShmImage, this patch will slow things down considerably. Perhaps this should be made a configuration option? Regards, Anthony Liguori > -- Keir