[PATCH 3/3] nvme-multipath: add "use_nonoptimized" module option

Ewan Milne emilne at redhat.com
Wed Sep 27 06:45:01 PDT 2023


Yes, you are probably right.

I added this patch because what I found was that, for arrays I was using,
the nonoptimized paths had almost the same characteristics as the optimized
paths for some workloads.  They had a small amount of additional latency.

And, it is helpful to have paths available with slightly different performance
in order to experiment with the behavior of different path selectors.

I'm OK with omitting this patch but I wanted people to see how it could be done.

-Ewan

On Wed, Sep 27, 2023 at 3:41 AM Hannes Reinecke <hare at suse.de> wrote:
>
> On 9/25/23 18:31, Ewan D. Milne wrote:
> > Setting nvme_core.use_nonoptimized=true will cause the path
> > selector to treat optimized and nonoptimized paths equally.
> >
> > This is because although an NVMe fabrics target device may report
> > an unoptimized ANA state, it is possible that other factors such
> > as fabric latency are a large factor in the I/O service time.  And,
> > throughput may improve overall if nonoptimized ports are also used.
> >
> > Signed-off-by: Ewan D. Milne <emilne at redhat.com>
> > ---
> >   drivers/nvme/host/multipath.c | 22 +++++++++++++++++++---
> >   1 file changed, 19 insertions(+), 3 deletions(-)
> >
> No. Please don't.
>
> There's a reason why controllers specify paths as 'active/optimized' or
> 'active/non-optimized'. If they had wanted us to use all paths they
> would have put them into the same group.
> They tend to get very unhappy if you start using them at the same time.
> (Triggering failover etc.)
>
> Cheers,
>
> Hannes
> --
> Dr. Hannes Reinecke                Kernel Storage Architect
> hare at suse.de                              +49 911 74053 688
> SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg
> HRB 36809 (AG Nürnberg), Geschäftsführer: Ivo Totev, Andrew
> Myers, Andrew McDonald, Martje Boudien Moerman
>




More information about the Linux-nvme mailing list