VOOZH about

URL: https://thenewstack.io/research-ebpf-not-always-a-silver-bullet-for-network-apps/

⇱ Research: eBPF Can Actually Slow Your Applications - The New Stack


TNS
SUBSCRIBE
Join our community of software engineering leaders and aspirational developers. Always stay in-the-know by getting the most important news and exclusive content delivered fresh to your inbox to learn more about at-scale software development.
REQUIRED
It seems that you've previously unsubscribed from our newsletter in the past. Click the button below to open the re-subscribe form in a new tab. When you're done, simply close that tab and continue with this form to complete your subscription.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.
Welcome and thank you for joining The New Stack community!
Please answer a few simple questions to help us deliver the news and resources you are interested in.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Great to meet you!
Tell us a bit about your job so we can cover the topics you find most relevant.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Welcome!

We’re so glad you’re here. You can expect all the best TNS content to arrive Monday through Friday to keep you on top of the news and at the top of your game.

What’s next?

Check your inbox for a confirmation email where you can adjust your preferences and even join additional groups.

Follow TNS on your favorite social media networks.

Become a TNS follower on LinkedIn.

Check out the latest featured and trending stories while you wait for your first TNS newsletter.

PREV
1 of 2
NEXT
VOXPOP
As a JavaScript developer, what non-React tools do you use most often?
Angular
0%
Astro
0%
Svelte
0%
Vue.js
0%
Other
0%
I only use React
0%
I don't use JavaScript
0%
Thanks for your opinion! Subscribe below to get the final results, published exclusively in our TNS Update newsletter:
NEW! Try Stackie AI
From clobbered drafts to real-time sync
Apr 14th 2026 10:00am, by David Moore
TypeScript 6.0 RC arrives as a bridge to a faster future
Mar 14th 2026 9:00am, by Darryl K. Taft
Mastra empowers web devs to build AI agents in TypeScript
Jan 28th 2026 11:00am, by Loraine Lawson
2025-09-12 09:30:11
Research: eBPF Can Actually Slow Your Applications
eBPF / Operations

Research: eBPF Can Actually Slow Your Applications

Contrary to popular belief, eBPF does not always hasten performance. Sometimes it can actually slow an application -- and slow its neighbors too.
Sep 12th, 2025 9:30am by Joab Jackson
👁 Featued image for: Research: eBPF Can Actually Slow Your Applications
Feature image via Unsplash.

A research paper in the latest issue of the Proceedings of the ACM on Networking cast doubt on the performance superiority of eBPF, at least in terms of accelerating network-based workloads.

In many cases, eBPF brings no considerable performance benefit, and sometimes can even slow an application, pointed out four researchers in the paper, “Demystifying Performance of eBPF Network Applications,”

“In reality many networked applications cannot benefit from eBPF, and worse the use of eBPF can limit how applications are deployed,” wrote the authors of the paper, Farbod Shahinfar and Sebastiano Miano, both from the  Politecnico di Milano, Milan, Italy; New York University’s Aurojit Panda; and Gianni Antichi Politecnico di Milano, Milan & Queen Mary University of London.

eBPF is a technology to embed programming code directly into an operating system kernel itself, via sandbox and pre-compilation, with the idea that it could run code faster than that code could run in a user-space program that communicates back and forth with the kernel. Code to run on eBPF is compiled to a platform-independent bytecode and compiled at load time.

👁 chart

Lifecycle of an eBPF program (PACMNET)

eBPF has found an early home in many networking functions, such as load-balancing, packet-switching, and network acceleration protocols, where it is used to filter and route packets and telemetry data.

Questioning eBPF’s Performance Claims

The researchers established a series of benchmarks to test whether eBPF’s much-touted performance gains were indeed realized.

In other words, the researchers wanted to know, if you embedded eBPF into your network application, would it go faster?

They found that in fact, offloading code does not always lead to performance gains.

“We found that whether or not application performance improves depends on how much of the logic can be offloaded,” they wrote.

In some cases, they found improvement, but in others, using eBPF made scant difference. And in some cases, eBPF actually made performance even more sluggish, not only for its application, but other applications around it.

Benchmarking Different eBPF Offload Types

The researchers set up and instrumented three different types of eBPF-based application. One ran entirely within eBPF (“full offload“). Another offloaded just the most time-sensitive part of the code (“fast-path offload“) — think of database caches. And the third used eBPF to pre-process data (“pre-processing offload“).

The tests were run on two interconnected 24-core Intel Xeon servers interconnected with 100 Gbps links, and outfitted with 1.1MB of L1 cache, 30MB of
L2 cache, and 36MB of L3 cache, as well as 128GB of DDR4 memory. They both ran Linux kernel version 6.8.0-rc7. Clang, v 14, compiled the bytecode, targeting eBPF Instruction Set Architecture v. 3.

With full offload, the results were mixed. Apps that operate on individual packets benefited, though apps that operate on streams or messages don’t appear to be improved by routing through eBPF.

It turns out the eBPF ISA does not support a lot of the processor features, such as Single-Instruction-Multiple-Data (SIMD), cryptography offloads, or floating point operations. As a result, some of the complex messaging operations actually run faster in user space.

Researchers tested the fast-path offload with BMC, an eBPF program for accelerating a Memcached key-value store.

Here, they found that benefits depend greatly on the type of workload BMC is managing. A lot of the traffic is being offloaded to BMC will indeed see faster performance times. But if most of that traffic needs to be handled by user-space code, any benefits are minimal at best.

For the pre-processing offload, the researchers found that an eBPF program could potentially reduce data movement by pre-processing requests. But it would not necessarily significantly improve the performance of the application itself.

👁 Chart

Reducing packet size does not significantly increase throughput. (PACMNET)

The ‘Noisy Neighbor’ Effect of eBPF Applications

The researchers found other troubling news, namely that eBPF-based applications can make for unfriendly neighbors on the server. By dominating the OS kernel, they hamper the performance of other applications running on that same server. eBPF was designed for Linux, and mostly used there, but a Windows version is afoot as well.

“Applications using eBPF might violate performance isolation,” the research team wrote.

Recommendations for Improving eBPF Technology

There are several things that the keepers of eBPF could do to alleviate the ills of their technology, the researchers advise.

One is to refine the just-in-time compilation, which, due to the limits of the OS kernel, often produces sub-optimal code. Even common  actions such as copying to and from memory (e.g., memcpy) are done in an inefficient manner, slowing any potential optimization.

To a certain extent, the keepers of eBPF are stuck, in that this problem would not be easily fixed, “since doing so would add significant complexity into the kernel,” the researchers observed.

Still, they could refine their process for generating machine code. The eBPF ISA could be expanded, including a much-called-for increase in the number of registers supported.

Also suggested was adding schedulers and buffers, and implementing prefetching of data.

With these enhancements, eBPF can truly address a broad array of use cases that would benefit from better performance, the researchers concluded.

The Association for Computing Machinery (ACM) is a volunteer-led scientific computing society, aiming to advance computing as a science and a profession.

The eBPF Foundation did not return a request for comment.

TRENDING STORIES
Joab Jackson is a senior editor for The New Stack, covering cloud native computing and system operations. He has reported on IT infrastructure and development for over 30 years, including stints at IDG and Government Computer News. Before that, he...
Read more from Joab Jackson
SHARE THIS STORY
TRENDING STORIES
SHARE THIS STORY
TRENDING STORIES
TNS DAILY NEWSLETTER Receive a free roundup of the most recent TNS articles in your inbox each day.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.