All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/8] Improve buffer_is_zero
@ 2016-08-24 17:48 Richard Henderson
  2016-08-24 17:48 ` [Qemu-devel] [PATCH v2 1/8] cutils: Move buffer_is_zero and subroutines to a new file Richard Henderson
                   ` (8 more replies)
  0 siblings, 9 replies; 11+ messages in thread
From: Richard Henderson @ 2016-08-24 17:48 UTC (permalink / raw)
  To: qemu-devel; +Cc: pbonzini, peter.maydell

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

-- 
2.7.4

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2016-08-25 12:50 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-24 17:48 [Qemu-devel] [PATCH v2 0/8] Improve buffer_is_zero Richard Henderson
2016-08-24 17:48 ` [Qemu-devel] [PATCH v2 1/8] cutils: Move buffer_is_zero and subroutines to a new file Richard Henderson
2016-08-24 17:48 ` [Qemu-devel] [PATCH v2 3/8] cutils: Export only buffer_is_zero Richard Henderson
2016-08-24 17:48 ` [Qemu-devel] [PATCH v2 4/8] cutils: Rearrange buffer_is_zero acceleration Richard Henderson
2016-08-24 17:48 ` [Qemu-devel] [PATCH v2 5/8] cutils: Add generic prefetch Richard Henderson
2016-08-24 17:48 ` [Qemu-devel] [PATCH v2 6/8] cutils: Rewrite x86 buffer zero checking Richard Henderson
2016-08-24 17:48 ` [Qemu-devel] [PATCH v2 7/8] cutils: Rewrite aarch64 " Richard Henderson
2016-08-24 17:48 ` [Qemu-devel] [PATCH v2 8/8] cutils: Rewrite ppc " Richard Henderson
2016-08-24 19:18 ` [Qemu-devel] [PATCH v2 0/8] Improve buffer_is_zero Eric Blake
2016-08-24 20:31   ` Richard Henderson
2016-08-25 12:49 ` Daniel P. Berrange

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.