Brussels / 3 & 4 February 2024


Profiling Python with eBPF: A New Frontier in Performance Analysis

In the rapidly evolving landscape of software development, performance analysis remains a critical aspect of building efficient and robust applications. This talk introduces a groundbreaking approach to profiling Python applications using eBPF (Extended Berkeley Packet Filter), a technology traditionally associated with systems-level monitoring.

Python, known for its simplicity and versatility, is widely used in various domains, including web development, data analysis, artificial intelligence, and more. However, profiling Python applications, especially in production environments, poses unique challenges due to its interpreted nature and dynamic runtime behavior.

In this session, I will share insights from my recent work on integrating Python profiling support into Parca, an open-source project for continuous profiling. I will delve into the complexities of profiling interpreted languages like Python and how eBPF can be leveraged to overcome these challenges. The talk will cover:

  1. The basics of eBPF and its applicability beyond systems monitoring.
  2. Challenges in profiling interpreted languages and how eBPF addresses them.
  3. Integrating eBPF-based profiling into open-source Parca for Python applications.
  4. Real-world examples and demonstrations of profiling Python applications using this novel approach.
  5. Insights into the future of performance analysis with eBPF in the Python ecosystem.

Attendees will leave with a deeper understanding of eBPF's potential in application-level profiling and practical knowledge to apply these techniques to their Python projects.


Photo of Kemal Akkoyun Kemal Akkoyun