[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[win-pv-devel] [PATCH 0/9] Implement VBD multi-queue



This series adds support for VBD multi-queue as defined by the updated
blkif.h

Multi-queue will split the incomming SRB requests into seperate shared
rings, attempting to keep processing on a single vCPU. Ths backend should
use this per-processor shared ring to direct requests into the multi-queue
block layer (blk-mq) to improve scalability. Part of the changes involves
reducing the usage of spinlocks on the hot-path.

The implementation changes to the ring's processing algorithm has shown 
some improvements, but this does not scale with number of queues (i.e. using
this patch series with a single queue shows an improvment, but adding more
queues does not show any differences outside of sampling noise).

Owen Smith (9):
  Update blkif.h to upstream
  Query "multi-queue-max-queues"
  Remove RingTrigger
  Dont close ring during FrontendReset
  Force single queue in crash/hibernate path
  Implement multi-queues
  Remove queue.h/.c
  Move query of "multi-queue-max-queues" to driver.c
  Set StorPortInitializePerfOpts

 include/xen/io/blkif.h       | 1100 ++++++++-------
 src/xencrsh/frontend.c       |    2 +
 src/xenvbd/adapter.c         |   56 +
 src/xenvbd/driver.c          |   25 +-
 src/xenvbd/driver.h          |    6 +
 src/xenvbd/frontend.c        |  261 ++--
 src/xenvbd/frontend.h        |    2 +
 src/xenvbd/queue.c           |  139 --
 src/xenvbd/queue.h           |   86 --
 src/xenvbd/ring.c            | 3106 +++++++++++++++++++++++++-----------------
 src/xenvbd/ring.h            |    5 -
 src/xenvbd/target.c          |    1 -
 vs2015/xenvbd/xenvbd.vcxproj |    1 -
 vs2017/xenvbd/xenvbd.vcxproj |    1 -
 14 files changed, 2686 insertions(+), 2105 deletions(-)
 delete mode 100644 src/xenvbd/queue.c
 delete mode 100644 src/xenvbd/queue.h

-- 
2.16.2.windows.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/win-pv-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.