[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 0/8] Improve buffer_is_zero
From: |
Daniel P. Berrange |
Subject: |
Re: [Qemu-devel] [PATCH v2 0/8] Improve buffer_is_zero |
Date: |
Thu, 25 Aug 2016 08:49:50 -0400 |
User-agent: |
Mutt/1.6.2 (2016-07-01) |
On Wed, Aug 24, 2016 at 10:48:27AM -0700, Richard Henderson wrote:
> Patches 1-4 remove the use of ifunc from the implementation.
>
> Patch 6 adjusts the x86 implementation a bit more to take
> advantage of ptest (in sse4.1) and unaligned accesses (in avx1).
>
> Patches 3 and 7 are the result of my conversation with Vijaya
> Kumar with respect to ThunderX.
>
> Patch 8 is the result of seeing some really really horrible code
> produced for ppc64le (gcc 4.9 and mainline).
>
> This has had limited testing. What I don't know is the best way
> to benchmark this -- the only way I know to trigger this is via
> the console, by hand, which doesn't make for reasonable timing.
>
> Changes v1-v2:
> * Add patch 1, moving everything to a new file.
> * Fix a typo or two, which had the wrong sense of zero test.
> These had mostly beed fixed in the intermediate patches,
> but it wouldn't have helped bisection.
>
>
> r~
>
>
> Richard Henderson (8):
> cutils: Move buffer_is_zero and subroutines to a new file
> cutils: Remove SPLAT macro
> cutils: Export only buffer_is_zero
> cutils: Rearrange buffer_is_zero acceleration
> cutils: Add generic prefetch
> cutils: Rewrite x86 buffer zero checking
> cutils: Rewrite aarch64 buffer zero checking
> cutils: Rewrite ppc buffer zero checking
>
> configure | 21 +--
> include/qemu/cutils.h | 2 -
> migration/ram.c | 2 +-
> migration/rdma.c | 5 +-
> util/Makefile.objs | 1 +
> util/bufferiszero.c | 432
> ++++++++++++++++++++++++++++++++++++++++++++++++++
> util/cutils.c | 244 ----------------------------
> 7 files changed, 441 insertions(+), 266 deletions(-)
> create mode 100644 util/bufferiszero.c
Since your v1 series has a report of breaking arm64, I thnk this is a good
candidate for adding unit tests eg a tests/test-bufferiszero.c file which
exercises & validates the various codepaths.
Regards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
- [Qemu-devel] [PATCH v2 0/8] Improve buffer_is_zero, Richard Henderson, 2016/08/24
- [Qemu-devel] [PATCH v2 3/8] cutils: Export only buffer_is_zero, Richard Henderson, 2016/08/24
- [Qemu-devel] [PATCH v2 5/8] cutils: Add generic prefetch, Richard Henderson, 2016/08/24
- [Qemu-devel] [PATCH v2 1/8] cutils: Move buffer_is_zero and subroutines to a new file, Richard Henderson, 2016/08/24
- [Qemu-devel] [PATCH v2 4/8] cutils: Rearrange buffer_is_zero acceleration, Richard Henderson, 2016/08/24
- [Qemu-devel] [PATCH v2 6/8] cutils: Rewrite x86 buffer zero checking, Richard Henderson, 2016/08/24
- [Qemu-devel] [PATCH v2 8/8] cutils: Rewrite ppc buffer zero checking, Richard Henderson, 2016/08/24
- [Qemu-devel] [PATCH v2 7/8] cutils: Rewrite aarch64 buffer zero checking, Richard Henderson, 2016/08/24
- Re: [Qemu-devel] [PATCH v2 0/8] Improve buffer_is_zero, Eric Blake, 2016/08/24
- Re: [Qemu-devel] [PATCH v2 0/8] Improve buffer_is_zero,
Daniel P. Berrange <=