[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/2] Send all the SVQ control commands in parallel
From: |
Hawkins Jiawei |
Subject: |
[PATCH 0/2] Send all the SVQ control commands in parallel |
Date: |
Wed, 19 Apr 2023 19:49:51 +0800 |
This patchset allows QEMU to poll and check the device used buffer
after sending all SVQ control commands, instead of polling and checking
immediately after sending each SVQ control command, so that QEMU can
send all the SVQ control commands in parallel, which have better
performance improvement.
I use vdpa_sim_net to simulate vdpa device, refactor
vhost_vdpa_net_load() to call vhost_vdpa_net_load_mac() 30 times,
refactor `net_vhost_vdpa_cvq_info.load` to call vhost_vdpa_net_load()
1000 times, to build a test environment for sending
multiple SVQ control commands. Time in monotonic to
finish `net_vhost_vdpa_cvq_info.load`:
QEMU monotonic time
--------------------------------------------------
not patched 89202
--------------------------------------------------
patched 80455
This patchset resolves the GitLab issue at
https://gitlab.com/qemu-project/qemu/-/issues/1578.
Hawkins Jiawei (2):
vdpa: rename vhost_vdpa_net_cvq_add()
vdpa: send CVQ state load commands in parallel
net/vhost-vdpa.c | 150 +++++++++++++++++++++++++++++++++++------------
1 file changed, 112 insertions(+), 38 deletions(-)
--
2.25.1