[LEDE-DEV] [PATCH] kernel: Backport net struct reduction from 4.16.
Mathias Kresin
dev at kresin.me
Fri Mar 23 14:53:35 PDT 2018
23.03.2018 19:19, Rosen Penev:
> This patch series shrinks the networking structs in order to reduce cache misses. This has performance benefits in routing.
>
> Full details here: https://www.netdevconf.org/2.2/slides/miller-datastructurebloat-keynote.pdf
>
> I'm keeping this for kernel 4.14 as it's easier to port.
>
> I have tested this on mvebu for several days with no issues to report. mvebu is powerful enough for gigabit routing though.
I gave it a try on lantiq, as I benchmarked the flow offloading impact
anyway.
Doing my usual iperf3 test, I wasn't able to notice any improvement with
the patches applied. The differences are rather within the measuring
tolerance:
=HEAD=
net to client 95.2 Mbits/sec routing
client to net 109 Mbits/sec routing
net to client 85.6 Mbits/sec NAT
client to net 96.2 Mbits/sec NAT
=k4.16 net struct reduction=
net to client 92.4 Mbits/sec routing
client to net 107 Mbits/sec routing
net to client 83.7 Mbits/sec NAT
client to net 93.4 Mbits/sec NAT
=FLOW_OFFLOADING=
net to client 129 Mbits/sec routing
client to net 144 Mbits/sec routing
net to client 124 Mbits/sec NAT
client to net 144 Mbits/sec NAT
=FLOW_OFFLOADING + k4.16 net struct reduction=
net to client 130 Mbits/sec routing
client to net 140 Mbits/sec routing
net to client 126 Mbits/sec NAT
client to net 140 Mbits/sec NAT
As long as nobody proves that there is a real performance gain, I don't
see a reason to backport the datastruct debloat.
Mathias
More information about the Lede-dev
mailing list