public inbox for linux-rdma@vger.kernel.org
 help / color / mirror / Atom feed
From: Leon Romanovsky <leon@kernel.org>
To: Max Gurtovoy <maxg@mellanox.com>
Cc: Saeed Mahameed <saeedm@mellanox.com>,
	"David S. Miller" <davem@davemloft.net>,
	Jason Gunthorpe <jgg@mellanox.com>,
	Doug Ledford <dledford@redhat.com>,
	Michael Chan <michael.chan@broadcom.com>,
	Andy Gospodarek <andy@greyhouse.net>,
	Tal Gilboa <talgi@mellanox.com>,
	"linux-rdma@vger.kernel.org" <linux-rdma@vger.kernel.org>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>
Subject: Re: [pull request][for-next 0/9] Generic DIM lib for netdev and RDMA
Date: Thu, 6 Jun 2019 10:53:31 +0300	[thread overview]
Message-ID: <20190606075331.GW5261@mtr-leonro.mtl.com> (raw)
In-Reply-To: <898e0df0-b73c-c6d7-9cbe-084163643236@mellanox.com>

On Thu, Jun 06, 2019 at 10:19:41AM +0300, Max Gurtovoy wrote:
>
> On 6/6/2019 10:14 AM, Leon Romanovsky wrote:
> > On Wed, Jun 05, 2019 at 11:24:31PM +0000, Saeed Mahameed wrote:
> > > Hi Dave, Doug & Jason
> > >
> > > This series improves DIM - Dynamically-tuned Interrupt
> > > Moderation- to be generic for netdev and RDMA use-cases.
> > >
> > >  From Tal and Yamin:
> > > The first 7 patches provide the necessary refactoring to current net_dim
> > > library which affect some net drivers who are using the API.
> > >
> > > The last 2 patches provide the RDMA implementation for DIM.
> > >
> > > For more information please see tag log below.
> > >
> > > Once we are all happy with the series, please pull to net-next and
> > > rdma-next trees.
> > >
> > > Thanks,
> > > Saeed.
> > >
> > > ---
> > > The following changes since commit cd6c84d8f0cdc911df435bb075ba22ce3c605b07:
> > >
> > >    Linux 5.2-rc2 (2019-05-26 16:49:19 -0700)
> > >
> > > are available in the Git repository at:
> > >
> > >    git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux.git tags/dim-updates-2019-06-05
> > >
> > > for you to fetch changes up to 1ec9974e75e7a58bff1ab17c4fcda17b180ed3bb:
> > >
> > >    RDMA/core: Provide RDMA DIM support for ULPs (2019-06-05 16:09:02 -0700)
> > >
> > > ----------------------------------------------------------------
> > > dim-updates-2019-06-05
> > >
> > > From: Tal Gilboa
> > >
> > > Implement net DIM over a generic DIM library
> > >
> > > net_dim.h lib exposes an implementation of the DIM algorithm for
> > > dynamically-tuned interrupt moderation for networking interfaces.
> > >
> > > We want a similar functionality for other protocols, which might need to
> > > optimize interrupts differently. Main motivation here is DIM for NVMf
> > > storage protocol.
> > >
> > > Current DIM implementation prioritizes reducing interrupt overhead over
> > > latency. Also, in order to reduce DIM's own overhead, the algorithm might
> > > take some time to identify it needs to change profiles. While this is
> > > acceptable for networking, it might not work well on other scenarios.
> > >
> > > Here I propose a new structure to DIM. The idea is to allow a slightly
> > > modified functionality without the risk of breaking Net DIM behavior for
> > > netdev. I verified there are no degradations in current DIM behavior with
> > > the modified solution.
> > >
> > > Solution:
> > > - Common logic is declared in include/linux/dim.h and implemented in
> > >    lib/dim/dim.c
> > > - Net DIM (existing) logic is declared in include/linux/net_dim.h and
> > >    implemented in lib/dim/net_dim.c, which uses the common logic from dim.h
> > > - Any new DIM logic will be declared in "/include/linux/new_dim.h" and
> > >     implemented in "lib/dim/new_dim.c".
> > > - This new implementation will expose modified versions of profiles,
> > >    dim_step() and dim_decision().
> > >
> > > Pros for this solution are:
> > > - Zero impact on existing net_dim implementation and usage
> > > - Relatively more code reuse (compared to two separate solutions)
> > > - Increased extensibility
> > >
> > > ----------------------------------------------------------------
> > > Tal Gilboa (6):
> > >        linux/dim: Move logic to dim.h
> > >        linux/dim: Remove "net" prefix from internal DIM members
> > >        linux/dim: Rename externally exposed macros
> > >        linux/dim: Rename net_dim_sample() to net_dim_update_sample()
> > >        linux/dim: Rename externally used net_dim members
> > >        linux/dim: Move implementation to .c files
> > >
> > > Yamin Friedman (3):
> > >        linux/dim: Add completions count to dim_sample
> > >        linux/dim: Implement rdma_dim
> > >        RDMA/core: Provide RDMA DIM support for ULPs
> > Saeed,
> >
> > No, for the RDMA patches.
> > We need to see usage of those APIs before merging.
>
> I've asked Yamin to prepare patches for NVMeoF initiator and target for
> review, so I guess he has it on his plate (this is how he tested it..).
>
> It might cause conflict with NVMe/blk branch maintained by Sagi, Christoph
> and Jens.
>
> So we need a plan here.

We are on top of it and will handle.

Thanks

>
>
> >
> > Thanks

  reply	other threads:[~2019-06-06  7:53 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-05 23:24 [pull request][for-next 0/9] Generic DIM lib for netdev and RDMA Saeed Mahameed
2019-06-05 23:24 ` [for-next 1/9] linux/dim: Move logic to dim.h Saeed Mahameed
2019-06-05 23:24 ` [for-next 2/9] linux/dim: Remove "net" prefix from internal DIM members Saeed Mahameed
2019-06-05 23:24 ` [for-next 3/9] linux/dim: Rename externally exposed macros Saeed Mahameed
2019-06-05 23:24 ` [for-next 4/9] linux/dim: Rename net_dim_sample() to net_dim_update_sample() Saeed Mahameed
2019-06-05 23:24 ` [for-next 5/9] linux/dim: Rename externally used net_dim members Saeed Mahameed
2019-06-05 23:24 ` [for-next 6/9] linux/dim: Move implementation to .c files Saeed Mahameed
2019-06-05 23:24 ` [for-next 7/9] linux/dim: Add completions count to dim_sample Saeed Mahameed
2019-06-05 23:24 ` [for-next 8/9] linux/dim: Implement rdma_dim Saeed Mahameed
2019-06-05 23:24 ` [for-next 9/9] RDMA/core: Provide RDMA DIM support for ULPs Saeed Mahameed
2019-06-06  7:14 ` [pull request][for-next 0/9] Generic DIM lib for netdev and RDMA Leon Romanovsky
2019-06-06  7:19   ` Max Gurtovoy
2019-06-06  7:53     ` Leon Romanovsky [this message]
2019-06-06 13:07     ` Jason Gunthorpe
2019-06-07 18:14       ` Saeed Mahameed
2019-06-07 18:57         ` Jason Gunthorpe

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=20190606075331.GW5261@mtr-leonro.mtl.com \
    --to=leon@kernel.org \
    --cc=andy@greyhouse.net \
    --cc=davem@davemloft.net \
    --cc=dledford@redhat.com \
    --cc=jgg@mellanox.com \
    --cc=linux-rdma@vger.kernel.org \
    --cc=maxg@mellanox.com \
    --cc=michael.chan@broadcom.com \
    --cc=netdev@vger.kernel.org \
    --cc=saeedm@mellanox.com \
    --cc=talgi@mellanox.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox