On 2/3/26 12:56 PM, Pierrick Bouvier wrote:
This series eliminates target specifics in hw/virtio and replace them with
runtime functions where needed.

Performance has been measured with this automated fio benchmark, with
original instructions from Stefan [1].

$ git clone https://github.com/pbo-linaro/qemu-linux-stack -b 
x86_64_io_benchmark
$ cd qemu-linux-stack
$ ./build.sh
$ ./run.sh /path/to/qemu-system-x86_64

[1] https://lore.kernel.org/qemu-devel/20260202185233.GC405548@fedora/

Results are on 20 runs and expressed in kIOPS:
reference: mean=239.2 std_dev=3.48
with_series: mean=238.5 std_dev=3.46

Performance is on par, and within standard deviation.

v4
--

- Include Philippe patches computing once device endianness to skip runtime
   checks on every access.

Philippe Mathieu-Daudé (3):
   hw/virtio: Constify virtio_is_big_endian() argument
   hw/virtio: Introduce VirtIODevice::access_is_big_endian boolean field
   hw/virtio: Use VirtIODevice::access_is_big_endian field

Pierrick Bouvier (6):
   target-info: add target_base_ppc, target_ppc and target_ppc64
   include/hw/virtio/virtio-access.h: remove target specifics define
   include/hw/ppc/spapr: extract SPAPR_MAX_RAM_SLOTS in a new header
   hw/virtio/vhost-user: make compilation unit common
   hw/virtio/virtio-qmp: make compilation unit common
   hw/virtio/: make all compilation units common

  include/hw/ppc/spapr.h            |  8 +---
  include/hw/ppc/spapr_common.h     | 16 +++++++
  include/hw/virtio/virtio-access.h | 50 +++++++++++-----------
  include/hw/virtio/virtio.h        |  7 +++-
  include/qemu/target-info.h        | 21 ++++++++++
  hw/virtio/vhost-user.c            | 11 ++---
  hw/virtio/virtio-qmp.c            | 70 -------------------------------
  hw/virtio/virtio.c                |  5 ++-
  target-info.c                     | 21 ++++++++++
  hw/virtio/meson.build             | 17 ++++----
  10 files changed, 104 insertions(+), 122 deletions(-)
  create mode 100644 include/hw/ppc/spapr_common.h


Sent v5 fixing the issue found:
https://lore.kernel.org/qemu-devel/[email protected]/T/#t

Regards,
Pierrick

Reply via email to