mbox series

[net-next,v4,0/2] net: renesas: rswitch: Improve perfromance of TX/RX

Message ID 20230608022007.1866372-1-yoshihiro.shimoda.uh@renesas.com (mailing list archive)
Headers show
Series net: renesas: rswitch: Improve perfromance of TX/RX | expand

Message

Yoshihiro Shimoda June 8, 2023, 2:20 a.m. UTC
This patch series is based on net-next.git / main branch [1]. This patch
series can improve perfromance of TX in a specific condition. The previous code
used "global rate limiter" feature so that this is possible to cause
performance down if we use multiple ports at the same time. To resolve this
issue, use "hardware pause" features of GWCA and COMA. Note that this is not
related to the ethernet PAUSE frames.

< UDP TX by iperf3 >
 before: about 450Mbps on both tsn0 and tsn1
 after:  about 950Mbps on both tsn0 and tsn1

Also, this patch series can improve performance of RX by using
napi_gro_receive().

< TCP RX by iperf >
 before: about 670Mbps on tsn0
 after:  about 840Mbps on tsn0

[1]
The commit e06bd5e3adae ("Merge branch 'followup-fixes-for-the-dwmac-and-altera-lynx-conversion'")

Changes from v3:
https://lore.kernel.org/all/20230607015641.1724057-1-yoshihiro.shimoda.uh@renesas.com/
 - Rebased on the latest net-next.git / main branch.
 - Added Reviewed-by in the patch 2/2. (Maciej, thanks!)
 - Fix typos in the commit description in the patch 2/2.

Changes from v2:
https://lore.kernel.org/all/20230606085558.1708766-1-yoshihiro.shimoda.uh@renesas.com/
 - Rebased on the latest net-next.git / main branch.
 - Added Reviewed-by in the patch 1/2. (Maciej, thanks!)
 - Revise the commit description in the patch 2/2.
 - Add definition to remove magic hardcoded numbers in the patch 2/2.

Changes from v1:
https://lore.kernel.org/all/20230529080840.1156458-1-yoshihiro.shimoda.uh@renesas.com/
 - Rebased on the latest net-next.git / main branch.
 - Use "hardware pause" feature instead of "per-queue limiter" feature.
 - Drop refactaring for "per-queue limiter".
 - Drop dt-bindings update because "hardware pause" doesn't need additional
   clock information.
 - Use napi_gro_receive() to improve RX performance.

Yoshihiro Shimoda (2):
  net: renesas: rswitch: Use napi_gro_receive() in RX
  net: renesas: rswitch: Use hardware pause features

 drivers/net/ethernet/renesas/rswitch.c | 38 ++++++++++----------------
 drivers/net/ethernet/renesas/rswitch.h |  7 +++++
 2 files changed, 22 insertions(+), 23 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org June 10, 2023, 6:53 p.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (main)
by David S. Miller <davem@davemloft.net>:

On Thu,  8 Jun 2023 11:20:05 +0900 you wrote:
> This patch series is based on net-next.git / main branch [1]. This patch
> series can improve perfromance of TX in a specific condition. The previous code
> used "global rate limiter" feature so that this is possible to cause
> performance down if we use multiple ports at the same time. To resolve this
> issue, use "hardware pause" features of GWCA and COMA. Note that this is not
> related to the ethernet PAUSE frames.
> 
> [...]

Here is the summary with links:
  - [net-next,v4,1/2] net: renesas: rswitch: Use napi_gro_receive() in RX
    https://git.kernel.org/netdev/net-next/c/dc510c6d2ecf
  - [net-next,v4,2/2] net: renesas: rswitch: Use hardware pause features
    https://git.kernel.org/netdev/net-next/c/c87bd91e34e1

You are awesome, thank you!