[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCHv2 3/6] ui/vnc: optimize dirty bitmap tracking

From: Eric Blake
Subject: Re: [Qemu-devel] [PATCHv2 3/6] ui/vnc: optimize dirty bitmap tracking
Date: Thu, 21 Nov 2013 08:16:29 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0

On 11/21/2013 01:51 AM, Peter Lieven wrote:
> vnc_update_client currently scans the dirty bitmap of each client
> bitwise which is a very costly operation if only few bits are dirty.
> vnc_refresh_server_surface does almost the same.
> this patch optimizes both by utilizing the heavily optimized
> function find_next_bit to find the offset of the next dirty
> bit in the dirty bitmaps.
> The following artifical test (just the bitmap operation part) running


> vnc_update_client 65536 times on a 2560x2048 surface illustrates the
> performance difference:
> All bits clean - vnc_update_client_new: 0.07 secs
>                  vnc_update_client_old: 10.98 secs
> All bits dirty - vnc_update_client_new: 11.26 secs
>                  vnc_update_client_old: 20.19 secs
> Few bits dirty - vnc_update_client_new: 0.08 secs
>                  vnc_update_client_old: 10.98 secs
> The case for all bits dirty is still rather slow, this
> is due to the implementation of find_and_clear_dirty_height.
> This will be addresses in a separate patch.


Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]