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

_______________________________________________
Lede-dev mailing list
Lede-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/lede-dev

Reply via email to