On 5 May 2015 at 21:52, Gerd Hoffmann <kraxel@xxxxxxxxxx> wrote: > Completely different approach: Instead of encoding each and every > framebuffer update as spice operation simply update the shadow > framebuffer and maintain a dirty rectangle. Also schedule a worker > to push an update for the dirty rectangle as spice operation. Usually > a bunch of dirty rectangle updates are collected before the worker > actually runs. > > What changes: Updates get batched now. Instead of sending tons of > small updates a few large ones are sent. When the same region is > updated multiple times within a short timeframe (scrolling multiple > lines for example) we send a single update only. Spice server has an > easier job now: The dependency tree for display operations which spice > server maintains for lazy rendering is alot smaller now. Spice server's > image compression probably works better too with the larger image blits. > > Net effect: framebuffer console @ qxldrmfb is an order of magnitude > faster now. > > Signed-off-by: Gerd Hoffmann <kraxel@xxxxxxxxxx> Looks good, I often wondered if we should have done this, spice protocol overhead seemed quite high. I'll merge this into drm-next. Dave. _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel