diff options
| author | Peter Lieven | 2013-03-26 10:58:35 +0100 |
|---|---|---|
| committer | Juan Quintela | 2013-03-26 13:32:32 +0100 |
| commit | 3edcd7e6ebae3ef0ac178eed5f4225803159562d (patch) | |
| tree | f8fd21342f83280a00e1515bf98e6633505a56e5 /include | |
| parent | bitops: unroll while loop in find_next_bit() (diff) | |
| download | qemu-3edcd7e6ebae3ef0ac178eed5f4225803159562d.tar.gz qemu-3edcd7e6ebae3ef0ac178eed5f4225803159562d.tar.xz qemu-3edcd7e6ebae3ef0ac178eed5f4225803159562d.zip | |
migration: search for zero instead of dup pages
virtually all dup pages are zero pages. remove
the special is_dup_page() function and use the
optimized buffer_find_nonzero_offset() function
instead.
here buffer_find_nonzero_offset() is used directly
to avoid the unnecssary additional checks in
buffer_is_zero().
raw performace gain checking 1 GByte zeroed memory
over is_dup_page() is approx. 10-12% with SSE2
and 8-10% with unsigned long arithmedtic.
Signed-off-by: Peter Lieven <pl@kamp.de>
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions
