[Spice-devel] Unfair comparisons with RDP

Alon Levy alevy at redhat.com
Fri Jul 1 19:56:36 PDT 2011


On Fri, Jul 01, 2011 at 09:40:41PM -0400, John A. Sullivan III wrote:
> On Fri, 2011-07-01 at 17:05 +0200, Alon Levy wrote:
> > On Fri, Jul 01, 2011 at 03:00:32PM +0200, Gianluca Cecchi wrote:
> > > On Fri, Jul 1, 2011 at 1:04 PM, John A. Sullivan III  wrote:
> > > > Interesting observation. That is true; we did not create separate VM
> > > > definitions for SPICE and TSPlus thus the TSPlus environment is using
> > > > the QXL driver.  Would we expect that to have any "supercharging" effect
> > > > on RDP?
> > > >
> > > >
> > > 
> > > Probably not, because afaik (that is not so much ;-) Remote Desktop
> > > (and probably tsplus too) works at the GDI call level, so it should
> > > not depend so much on video adapter/video driver...
> > > It was simply a question that arose analysing how to correctly
> > > replicate comparisons...
> > > Coming back to the test case and these operations:
> > > 
> > > rdp
> > > 17:             display desktop, i.e., minimize all open applications
> > > 42:             Paint existing LibreOffice document, i.e., restore from minimize
> > > 
> > > spice
> > > 61:             display desktop, i.e., minimize all open applications
> > > 92:             Paint existing LibreOffice document, i.e., restore from minimize
> > > 
> > > I think they are GDI ones, so that naturally when using rdp they are
> > > executed locally on client desktop (only the gdi directives are sent),
> > > while in spice (raster?) they will be network intensive (from a slow
> > spice implements a driver, which implements a large part of the gdi api. So any
> > operation that it doesn't implement is done via the windows gdi software rendering
> > and the result given to the driver (which is spice) as an image.
> > 
> > So in cases where the specific operations are all implemented by the driver the
> > performance should be identical. In other cases spice will be suboptimal, since
> > it will send the image and not the operation. In both cases the rendering should
> > be correct.
> > 
> > > link point of view).
> > > So probably an optimized rdp could never be beaten on too slow links?
> > > 
> > ><snip>
> Hmm . . . I remember you saying that the Windows product was actually
> more developed than the Linux product.  Could it be that you have
True

> implemented more of the GDI API than the X API (or whatever one uses for
> Linux) and thus my Linux client is more regularly falling back to
> sending images rather than directives?
Client != Guest. A confusion that arises all the time here :) The client
is *using* the graphics api on whatever platform. The linux client uses
pixman mostly. The windows client uses gdi. The gdi canvas (as the graphics
backend for the clients is called) has seen more usage / optimization I think,
so you are not wrong in your conclusion. There are actually two different clients
right now, spicec and any client based on the spice-gtk, such as vinagre or spicy.
Could you try any of the later to see if you get 100% cpu with them as well?

> 
> Unfortunately, I don't have any Windows systems here in the lab to
> compare with Linux. We are rousting up some Windows testers but they are
> all in the UK and not here where I can observe them side by side it the
> lab.  I'll have to see what I can do about that.  Just a thought - John
> 


More information about the Spice-devel mailing list