Re: [pull request][for-next 0/9] Generic DIM lib for netdev and RDMA

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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.

Thanks



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux