Felix Fietkau <n...@nbd.name> writes: > On 2017-09-03 20:35, Rosen Penev wrote: >> On a TL-WN710N, this patch increases iperf performance from ~92.5 to ~93.5 >> mbps.> Keep in mind the WN710N is a 100mbps device. I expect greater numbers > from gigabit devices. >> >> Signed-off-by: Rosen Penev <ros...@gmail.com> > Hi Rosen, > > Sorry about that, but I will have to revert this change. It causes a > serious regression in LAN->WAN routing performance on various devices. > I did some digging and found out why: > For GRO to work properly, checksums of incoming packets have to be > verified very early in the network stack. The Ethernet MAC does not > support rx checksum offload, so this has to happen in software. > Due to the very small cache size, this causes a significant increase in > memory bus traffic.
Also, for the record, if there is a need to manage the WAN side to lower speeds (say, below 40Mbit/s) via sqm, GRO bulking up a microburst into a superpacket mandates sch_cake (rather than fq_codel) to peel it apart again to hold latencies low there. There are a lot of devices that do GRO that perhaps shouldn't. mvneta has very agressive soft-GRO, in particular. Shipping out one 64k superpacket takes half a second at 1mbit. > It might be possible in the future to avoid this by making use of the > checksum offload engine, but that's a separate component on the chip and > not present on every SoC (only the newer ones). > It also requires a significant rework of the Ethernet driver, which I > don't have any time for. > > - Felix > > _______________________________________________ > Lede-dev mailing list > Lede-dev@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/lede-dev _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev