On 6/9/26 14:18, Sumit Saxena wrote:
From: Bart Van Assche <[email protected]>

Original patch [1] by Bart Van Assche; this version is rebased onto the
current tree.  In testing it improves IOPS by roughly 16-18% by removing
the fair-sharing throttle on shared tag queues.

This patch removes the following code and structure members:
- The function hctx_may_queue().
- blk_mq_hw_ctx.nr_active and request_queue.nr_active_requests_shared_tags
   and also all the code that modifies these two member variables.

[1]: 
https://lore.kernel.org/linux-block/[email protected]/

Signed-off-by: Bart Van Assche <[email protected]>
Signed-off-by: Sumit Saxena <[email protected]>
---
  block/blk-core.c       |   2 -
  block/blk-mq-debugfs.c |  22 ++++++++-
  block/blk-mq-tag.c     |   4 --
  block/blk-mq.c         |  17 +------
  block/blk-mq.h         | 100 -----------------------------------------
  include/linux/blk-mq.h |   6 ---
  include/linux/blkdev.h |   2 -
  7 files changed, 22 insertions(+), 131 deletions(-)

What tests did you perform?
I'm pretty sure you see an improvement when having just a few drives,
but what about having a lot of them (ie tens of drives)?
The whole point of this was to increase fairness between drives, so
of course removing it will make an individual drive going faster ...

Maybe it's an idea to move the fairness algorithm into an I/O scheduler;
that way we can keep the original behaviour yet get the performance
increase if people want it.

Cheers,

Hannes
--
Dr. Hannes Reinecke                  Kernel Storage Architect
[email protected]                                +49 911 74053 688
SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg
HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich

Reply via email to