On 5 May 2015 at 21:52, Gerd Hoffmann <kra...@redhat.com> 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 <kra...@redhat.com>
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. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/