[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20200623.151145.1336624346097080182.davem@davemloft.net>
Date: Tue, 23 Jun 2020 15:11:45 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: brianvv@...gle.com
Cc: brianvv.kernel@...il.com, edumazet@...gle.com,
linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
lrizzo@...gle.com, pabeni@...hat.com
Subject: Re: [PATCH v2 net-next 2/2] ipv6: fib6: avoid indirect calls from
fib6_rule_lookup
From: Brian Vazquez <brianvv@...gle.com>
Date: Tue, 23 Jun 2020 09:42:32 -0700
> It was reported that a considerable amount of cycles were spent on the
> expensive indirect calls on fib6_rule_lookup. This patch introduces an
> inline helper called pol_route_func that uses the indirect_call_wrappers
> to avoid the indirect calls.
>
> This patch saves around 50ns per call.
>
> Performance was measured on the receiver by checking the amount of
> syncookies that server was able to generate under a synflood load.
>
> Traffic was generated using trafgen[1] which was pushing around 1Mpps on
> a single queue. Receiver was using only one rx queue which help to
> create a bottle neck and make the experiment rx-bounded.
>
> These are the syncookies generated over 10s from the different runs:
>
> Whithout the patch:
...
> With the patch:
...
> Without the patch the average is 354263 pkt/s or 2822 ns/pkt and with
> the patch the average is 360738 pkt/s or 2772 ns/pkt which gives an
> estimate of 50 ns per packet.
>
> [1] http://netsniff-ng.org/
>
> Changelog since v1:
> - Change ordering in the ICW (Paolo Abeni)
>
> Cc: Luigi Rizzo <lrizzo@...gle.com>
> Cc: Paolo Abeni <pabeni@...hat.com>
> Reported-by: Eric Dumazet <edumazet@...gle.com>
> Signed-off-by: Brian Vazquez <brianvv@...gle.com>
Applied.
Powered by blists - more mailing lists