Re: [PATCH 4/6] blk-mq: use EWMA to estimate congestion threshold
From: Bart Van Assche <hidden>
Date: 2017-07-13 17:35:29
On Thu, 2017-07-13 at 23:32 +0800, Ming Lei wrote:
On Thu, Jul 13, 2017 at 02:56:38PM +0000, Bart Van Assche wrote:quoted
hctx_may_queue() severely limits the queue depth if many LUNs are assoc=
iated
quoted
with the same SCSI host. I think that this is a performance regression compared to scsi-sq and that this performance regression should be fixe=
d.
=20 IMO, it is hard to evaluate/compare perf between scsi-mq vs scsi-sq: =20 - how many LUNs do you run IO on concurrently? - evaluate the perf on single LUN or multi LUN? =20 BTW, active_queues is a runtime variable which accounts the actual active queues in use.
Hello Ming, What I described can be verified easily by running fio against a single LUN of a SCSI host with which a large number of LUNs are associated. BTW, something I overlooked in my analysis of the active_queues variable is that it is not only decremented if a queue is destroyed but also if a queue is idle during (block layer request timeout) seconds. So the problem I described will only occur if some software submits I/O requests periodicall= y to all SCSI LUNs with a shorter interval than the I/O timeout. I'm not sure any Linux software does this today. As an example, the time between path checks by the multipathd TUR checker typically exceeds the timeout of a single TUR check. Bart.=