All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hannes Reinecke <hare@suse.de>
To: Mike Snitzer <snitzer@redhat.com>, dm-devel@redhat.com
Cc: jmoyer@redhat.com, linux-block@vger.kernel.org,
	linux-scsi@vger.kernel.org, j-nomura@ce.jp.nec.com,
	sagig@dev.mellanox.co.il
Subject: Re: [RFC PATCH 0/4] dm mpath: vastly improve blk-mq IO performance
Date: Thu, 7 Apr 2016 16:58:31 +0200	[thread overview]
Message-ID: <57067597.4080103@suse.de> (raw)
In-Reply-To: <1459454666-76428-1-git-send-email-snitzer@redhat.com>

On 03/31/2016 10:04 PM, Mike Snitzer wrote:
> I developed these changes some weeks ago but have since focused on
> regression and performance testing on larger NUMA systems.
> 
> For regression testing I've been using mptest:
> https://github.com/snitm/mptest
> 
> For performance testing I've been using a null_blk device (with
> various configuration permutations, e.g. pinning memory to a
> particular NUMA node, and varied number of submit_queues).
> 
> By eliminating multipath's heavy use of the m->lock spinlock in the
> fast IO paths serious performance improvements are realized.
> 
[ .. ]
> Jeff Moyer has been helping review these changes (and has graciously
> labored over _really_ understanding all the concurrency at play in DM
> mpath) -- his review isn't yet complete but I wanted to get this
> patchset out now to raise awareness about how I think DM multipath
> will be changing (for inclussion during the Linux 4.7 merge window).
> 
> Mike Snitzer (4):
>   dm mpath: switch to using bitops for state flags
>   dm mpath: use atomic_t for counting members of 'struct multipath'
>   dm mpath: move trigger_event member to the end of 'struct multipath'
>   dm mpath: eliminate use of spinlock in IO fast-paths
> 
>  drivers/md/dm-mpath.c | 351 ++++++++++++++++++++++++++++----------------------
>  1 file changed, 195 insertions(+), 156 deletions(-)
> 
Finally got around to test this.
The performance is comparable to the previous (RCU-ified) patchset,
however, this one is the far superious approach.
In fact, the first two are pretty much identical to what I've
already had, but I've shirked at modifying the path selectors.
So well done here.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		   Teamlead Storage & Networking
hare@suse.de			               +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 N�rnberg
GF: F. Imend�rffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG N�rnberg)

WARNING: multiple messages have this Message-ID (diff)
From: Hannes Reinecke <hare@suse.de>
To: Mike Snitzer <snitzer@redhat.com>, dm-devel@redhat.com
Cc: jmoyer@redhat.com, linux-block@vger.kernel.org,
	linux-scsi@vger.kernel.org, j-nomura@ce.jp.nec.com,
	sagig@dev.mellanox.co.il
Subject: Re: [RFC PATCH 0/4] dm mpath: vastly improve blk-mq IO performance
Date: Thu, 7 Apr 2016 16:58:31 +0200	[thread overview]
Message-ID: <57067597.4080103@suse.de> (raw)
In-Reply-To: <1459454666-76428-1-git-send-email-snitzer@redhat.com>

On 03/31/2016 10:04 PM, Mike Snitzer wrote:
> I developed these changes some weeks ago but have since focused on
> regression and performance testing on larger NUMA systems.
> 
> For regression testing I've been using mptest:
> https://github.com/snitm/mptest
> 
> For performance testing I've been using a null_blk device (with
> various configuration permutations, e.g. pinning memory to a
> particular NUMA node, and varied number of submit_queues).
> 
> By eliminating multipath's heavy use of the m->lock spinlock in the
> fast IO paths serious performance improvements are realized.
> 
[ .. ]
> Jeff Moyer has been helping review these changes (and has graciously
> labored over _really_ understanding all the concurrency at play in DM
> mpath) -- his review isn't yet complete but I wanted to get this
> patchset out now to raise awareness about how I think DM multipath
> will be changing (for inclussion during the Linux 4.7 merge window).
> 
> Mike Snitzer (4):
>   dm mpath: switch to using bitops for state flags
>   dm mpath: use atomic_t for counting members of 'struct multipath'
>   dm mpath: move trigger_event member to the end of 'struct multipath'
>   dm mpath: eliminate use of spinlock in IO fast-paths
> 
>  drivers/md/dm-mpath.c | 351 ++++++++++++++++++++++++++++----------------------
>  1 file changed, 195 insertions(+), 156 deletions(-)
> 
Finally got around to test this.
The performance is comparable to the previous (RCU-ified) patchset,
however, this one is the far superious approach.
In fact, the first two are pretty much identical to what I've
already had, but I've shirked at modifying the path selectors.
So well done here.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		   Teamlead Storage & Networking
hare@suse.de			               +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2016-04-07 14:58 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-31 20:04 [RFC PATCH 0/4] dm mpath: vastly improve blk-mq IO performance Mike Snitzer
2016-03-31 20:04 ` [RFC PATCH 1/4] dm mpath: switch to using bitops for state flags Mike Snitzer
2016-04-01  8:46   ` [dm-devel] " Johannes Thumshirn
2016-04-07 14:59   ` Hannes Reinecke
2016-03-31 20:04 ` [RFC PATCH 2/4] dm mpath: use atomic_t for counting members of 'struct multipath' Mike Snitzer
2016-04-01  8:48   ` [dm-devel] " Johannes Thumshirn
2016-04-07 15:02   ` Hannes Reinecke
2016-03-31 20:04 ` [RFC PATCH 3/4] dm mpath: move trigger_event member to the end " Mike Snitzer
2016-04-01  8:50   ` [dm-devel] " Johannes Thumshirn
2016-04-07 15:03   ` Hannes Reinecke
2016-03-31 20:04 ` [RFC PATCH 4/4] dm mpath: eliminate use of spinlock in IO fast-paths Mike Snitzer
2016-04-01  9:02   ` [dm-devel] " Johannes Thumshirn
2016-04-07 15:03   ` Hannes Reinecke
2016-04-01  8:12 ` [dm-devel] [RFC PATCH 0/4] dm mpath: vastly improve blk-mq IO performance Johannes Thumshirn
2016-04-01 13:22   ` Mike Snitzer
2016-04-01 13:37     ` Johannes Thumshirn
2016-04-01 14:14       ` Mike Snitzer
2016-04-07 14:58 ` Hannes Reinecke [this message]
2016-04-07 14:58   ` Hannes Reinecke
2016-04-07 15:34   ` Mike Snitzer
2016-04-08 11:42     ` [dm-devel] " Johannes Thumshirn
2016-04-08 11:42       ` Johannes Thumshirn
2016-04-08 19:29       ` Mike Snitzer
2016-04-13  7:03         ` [dm-devel] " Johannes Thumshirn
2016-04-13  7:03           ` Johannes Thumshirn
2016-05-09 15:48 ` 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=57067597.4080103@suse.de \
    --to=hare@suse.de \
    --cc=dm-devel@redhat.com \
    --cc=j-nomura@ce.jp.nec.com \
    --cc=jmoyer@redhat.com \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=sagig@dev.mellanox.co.il \
    --cc=snitzer@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.