All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Snitzer <snitzer@redhat.com>
To: Ming Lei <ming.lei@redhat.com>
Cc: dm-devel@redhat.com, Jens Axboe <axboe@fb.com>,
	linux-block@vger.kernel.org,
	Christoph Hellwig <hch@infradead.org>,
	Bart Van Assche <bart.vanassche@sandisk.com>,
	Laurence Oberman <loberman@redhat.com>
Subject: Re: [PATCH 5/5] dm-mpath: improve I/O schedule
Date: Fri, 15 Sep 2017 16:10:24 -0400	[thread overview]
Message-ID: <20170915201023.GB28136@redhat.com> (raw)
In-Reply-To: <20170915164456.9803-6-ming.lei@redhat.com>

On Fri, Sep 15 2017 at 12:44pm -0400,
Ming Lei <ming.lei@redhat.com> wrote:

> The actual I/O schedule is done in dm-mpath layer, and the
> underlying I/O schedule is simply bypassed.
> 
> This patch sets underlying queue's nr_requests as its queue's
> queue_depth, then  we can get its queue busy feedback by simply
> checking if blk_get_request() returns successfully.
> 
> In this way, dm-mpath can reports its queue busy to block layer
> effectively, so I/O scheduling is improved much.
> 
> Follows the test results on lpfc*:
> 
> - fio(libaio, bs:4k, dio, queue_depth:64, 64 jobs,
>       over dm-mpath disk)
> - system(12 cores, dual sockets, mem: 64G)
> 
> ---------------------------------------
>           |v4.13+         |v4.13+
>           |+scsi_mq_perf  |+scsi_mq_perf+patches
> -----------------------------------------
>  IOPS(K)  |MQ-DEADLINE    |MQ-DEADLINE
> ------------------------------------------
> read      |       30.71   |      343.91
> -----------------------------------------
> randread  |       22.98   |       17.17
> ------------------------------------------
> write     |       16.45   |      390.88
> ------------------------------------------
> randwrite |       16.21   |       16.09
> ---------------------------------------
> 
> *:
> 1) lpfc.lpfc_lun_queue_depth=3, so that it is same with .cmd_per_lun
> 2) scsi_mq_perf means the patchset of 'blk-mq-sched: improve SCSI-MQ performance(V4)'[1]
> 3) v4.13+: top commit is 46c1e79fee41 Merge branch 'perf-urgent-for-linus'
> 4) the patchset 'blk-mq-sched: improve SCSI-MQ performance(V4)' focuses
> on improving on SCSI-MQ, and all the test result in that coverletter was
> against the raw lpfc/ib(run after 'multipath -F'), instead of dm-mpath.
> 5) this patchset itself doesn't depend on the scsi_mq_perf patchset[1]
> 
> [1] https://marc.info/?t=150436555700002&r=1&w=2
> 
> Signed-off-by: Ming Lei <ming.lei@redhat.com>

Very impressive gains Ming!

I'll review in more detail next week but Bart's concerns on patch 1 and
2 definitely need consideration.

Thanks,
Mike

  reply	other threads:[~2017-09-15 20:10 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-15 16:44 [PATCH 0/5] dm-mpath: improve I/O schedule Ming Lei
2017-09-15 16:44 ` Ming Lei
2017-09-15 16:44 ` [PATCH 1/5] block: don't call blk_mq_delay_run_hw_queue() in case of BLK_STS_RESOURCE Ming Lei
2017-09-15 16:44   ` Ming Lei
2017-09-15 17:57   ` Bart Van Assche
2017-09-15 17:57     ` Bart Van Assche
2017-09-15 17:57     ` Bart Van Assche
2017-09-17 12:40     ` Ming Lei
2017-09-17 12:40       ` Ming Lei
2017-09-18 15:18       ` Bart Van Assche
2017-09-18 15:18         ` Bart Van Assche
2017-09-18 15:18         ` Bart Van Assche
2017-09-19  5:43         ` Ming Lei
2017-09-19  5:43           ` Ming Lei
2017-09-19 15:36           ` Bart Van Assche
2017-09-19 15:36             ` Bart Van Assche
2017-09-19 15:36             ` Bart Van Assche
2017-09-19 15:56             ` Mike Snitzer
2017-09-19 15:56               ` Mike Snitzer
2017-09-19 16:04               ` Ming Lei
2017-09-19 16:04                 ` Ming Lei
2017-09-19 16:49                 ` Bart Van Assche
2017-09-19 16:49                   ` Bart Van Assche
2017-09-19 16:49                   ` Bart Van Assche
2017-09-19 16:55                   ` Ming Lei
2017-09-19 16:55                     ` Ming Lei
2017-09-19 18:42                     ` Bart Van Assche
2017-09-19 18:42                       ` Bart Van Assche
2017-09-19 18:42                       ` Bart Van Assche
2017-09-19 22:44                       ` Ming Lei
2017-09-19 22:44                         ` Ming Lei
2017-09-19 23:25                         ` Bart Van Assche
2017-09-19 23:25                           ` Bart Van Assche
2017-09-19 23:25                           ` Bart Van Assche
2017-09-19 23:50                           ` Mike Snitzer
2017-09-19 23:50                             ` Mike Snitzer
2017-09-20  1:13                             ` Ming Lei
2017-09-20  1:13                               ` Ming Lei
2017-09-20  1:19                   ` Ming Lei
2017-09-20  1:19                     ` Ming Lei
2017-09-19 15:48           ` Mike Snitzer
2017-09-19 15:48             ` Mike Snitzer
2017-09-19 15:52             ` Bart Van Assche
2017-09-19 15:52               ` Bart Van Assche
2017-09-19 15:52               ` Bart Van Assche
2017-09-19 16:03               ` Mike Snitzer
2017-09-19 16:03                 ` Mike Snitzer
2017-09-19 16:07             ` Ming Lei
2017-09-19 16:07               ` Ming Lei
2017-09-15 16:44 ` [PATCH 2/5] dm-mpath: return DM_MAPIO_REQUEUE in case of rq allocation failure Ming Lei
2017-09-15 17:29   ` Bart Van Assche
2017-09-15 17:29     ` Bart Van Assche
2017-09-15 20:06     ` Mike Snitzer
2017-09-15 20:48       ` Bart Van Assche
2017-09-15 20:48         ` Bart Van Assche
2017-09-17 13:23       ` Ming Lei
2017-09-19 14:41         ` Mike Snitzer
2017-09-19 15:56           ` Ming Lei
2017-09-17 12:51     ` Ming Lei
2017-09-15 16:44 ` [PATCH 3/5] dm-mpath: remove annoying message of 'blk_get_request() returned -11' Ming Lei
2017-09-15 16:44 ` [PATCH 4/5] block: export blk_update_nr_requests Ming Lei
2017-09-15 16:44 ` [PATCH 5/5] dm-mpath: improve I/O schedule Ming Lei
2017-09-15 20:10   ` Mike Snitzer [this message]
2017-09-15 20:56   ` Bart Van Assche
2017-09-15 20:56     ` Bart Van Assche
2017-09-15 21:06   ` Bart Van Assche
2017-09-15 21:06     ` Bart Van Assche
2017-09-15 21:42   ` Bart Van Assche
2017-09-15 21:42     ` Bart Van Assche

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170915201023.GB28136@redhat.com \
    --to=snitzer@redhat.com \
    --cc=axboe@fb.com \
    --cc=bart.vanassche@sandisk.com \
    --cc=dm-devel@redhat.com \
    --cc=hch@infradead.org \
    --cc=linux-block@vger.kernel.org \
    --cc=loberman@redhat.com \
    --cc=ming.lei@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.