Linux Networking Performance To Improve Thanks To Retpoline Overhead Reduction

Written by Michael Larabel in Linux Networking on 7 December 2018 at 01:21 AM EST. 20 Comments
One of the areas where Linux performance has been lower this year since Spectre came to light has been for networking performance, but with the upcoming Linux 4.21 cycle that will be partially addressed.

Linux networking performance took a hit from the introduction of Retpolines "Return Trampolines" at the start of the year for addressing Spectre Variant Two.

Developer Paolo Abeni has been working to offset the Retpoline overhead with a new patch series now destined for Linux 4.21. From the patch series, "We can partially address that when the function pointer refers to a builtin symbol resorting to a list of tests vs well-known builtin function and direct calls. Experimental results show that replacing a single indirect call via retpoline with several branches and a direct call gives performance gains even when multiple branches are added - 5 or more...This may lead to some uglification around the indirect calls...Overall this gives [greater than] 10% performance improvement for UDP GRO benchmark and smaller but measurable for TCP syn flood."

Linux networking subsystem maintainer David Miller has already expressed his plans to pull this into net-next, making it material for the Linux 4.21 cycle.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week