lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Sat, 25 Mar 2017 09:54:59 -0700
From:   Tom Herbert <tom@...bertland.com>
To:     Saeed Mahameed <saeedm@...lanox.com>
Cc:     "David S. Miller" <davem@...emloft.net>,
        Linux Kernel Network Developers <netdev@...r.kernel.org>,
        Kernel Team <kernel-team@...com>
Subject: Re: [PATCH net-next 00/12] Mellanox mlx5e XDP performance optimization

On Fri, Mar 24, 2017 at 2:52 PM, Saeed Mahameed <saeedm@...lanox.com> wrote:
> Hi Dave,
>
> This series provides some preformancee optimizations for mlx5e
> driver, especially for XDP TX flows.
>
> 1st patch is a simple change of rmb to dma_rmb in CQE fetch routine
> which shows a huge gain for both RX and TX packet rates.
>
> 2nd patch removes write combining logic from the driver TX handler
> and simplifies the TX logic while improving TX CPU utilization.
>
> All other patches combined provide some refactoring to the driver TX
> flows to allow some significant XDP TX improvements.
>
> More details and performance numbers per patch can be found in each patch
> commit message compared to the preceding patch.
>
> Overall performance improvemnets
>   System: Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz
>
> Test case                   Baseline      Now      improvement
> ---------------------------------------------------------------
> TX packets (24 threads)     45Mpps        54Mpps      20%
> TC stack Drop (1 core)      3.45Mpps      3.6Mpps     5%
> XDP Drop      (1 core)      14Mpps        16.9Mpps    20%
> XDP TX        (1 core)      10.4Mpps      13.7Mpps    31%
>
Awesome, and good timing. I'll be presenting XDP at IETF next and
would like to include these numbers in the presentation if you don't
mind...

Tom

> Thanks,
> Saeed.
>
> Saeed Mahameed (12):
>   net/mlx5e: Use dma_rmb rather than rmb in CQE fetch routine
>   net/mlx5e: Xmit, no write combining
>   net/mlx5e: Single bfreg (UAR) for all mlx5e SQs and netdevs
>   net/mlx5e: Move XDP completion functions to rx file
>   net/mlx5e: Move mlx5e_rq struct declaration
>   net/mlx5e: Move XDP SQ instance into RQ
>   net/mlx5e: Poll XDP TX CQ before RX CQ
>   net/mlx5e: Optimize XDP frame xmit
>   net/mlx5e: Generalize tx helper functions for different SQ types
>   net/mlx5e: Proper names for SQ/RQ/CQ functions
>   net/mlx5e: Generalize SQ create/modify/destroy functions
>   net/mlx5e: Different SQ types
>
>  drivers/net/ethernet/mellanox/mlx5/core/en.h       | 319 +++++-----
>  .../net/ethernet/mellanox/mlx5/core/en_common.c    |   9 +
>  drivers/net/ethernet/mellanox/mlx5/core/en_main.c  | 644 +++++++++++++--------
>  drivers/net/ethernet/mellanox/mlx5/core/en_rx.c    | 124 +++-
>  drivers/net/ethernet/mellanox/mlx5/core/en_tx.c    | 147 +----
>  drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c  |  70 +--
>  include/linux/mlx5/driver.h                        |   1 +
>  7 files changed, 716 insertions(+), 598 deletions(-)
>
> --
> 2.11.0
>

Powered by blists - more mailing lists