This is a rebase of patches that Rich Jones first posted in 2023:
https://lists.gnu.org/archive/html/qemu-devel/2023-03/msg03320.html

I'm still leaving the series in an RFC state while I'm trying to
improve the code to better play with all of the multi-queue changes in
the block layer in the meantime.  In my own testing, the patches as
presented here are not making any noticeable difference in qemu-img
convert to a local destination file (multi-conn=1 was not much
different than multi-conn=4, although I did validate that multiple
sockets were in use and the round robin code was working).  Other
benchmarks did show improvements, such as qemu convert targeting an
nbdkit server on a curl backend getting a 20% boost when I ramped
multi-conn from 1 to 4.

I have more patches on top of these to post to the list once I can get
benchmark numbers that make more sense.

Richard W.M. Jones (4):
  nbd: Add multi-conn option
  nbd: Split out block device state from underlying NBD connections
  nbd: Open multiple NBD connections if multi-conn is set
  nbd: Enable multi-conn using round-robin

 qapi/block-core.json |   8 +-
 block/coroutines.h   |   5 +-
 block/nbd.c          | 796 +++++++++++++++++++++++++------------------
 3 files changed, 479 insertions(+), 330 deletions(-)

-- 
2.49.0


Reply via email to