Performance Analysis Superpowers with Enhanced BPF

Refereed Presentation
Scheduled: Wednesday, September 13, 2017 from 2:00 – 2:45pm in Diamond 3

One Line Summary

This talk will discuss new performance analysis capabilities and tools using enhanced BPF, including scheduler, FS, and TCP analysis, beginning a new generation of advanced tools and visualizations.


Advanced performance analysis superpowers have arrived in the Linux 4.x series, thanks to enhancements to Berkeley Packet Filter (BPF, or eBPF) and the use of its sandboxed virtual machine to provide programmatic capabilities to system tracing. Netflix has been investigating its use for new observability tools, monitoring, security uses, and more. This talk will dive into advanced tracing uses, and the new observability that it provides.

This talk will also demonstrate the new open source tools that have been developed, which make use of kernel- and user-level dynamic tracing (kprobes and uprobes), and kernel- and user-level static tracing (tracepoints). These tools provide new insights for file system and storage performance, CPU scheduler performance, TCP performance, and a whole lot more. Some long standing problems in performance analysis can now be solved, such as deeper off-CPU analysis: associating waker stacks to blocked stacks in kernel context, and creating chains of wakeup stacks. This explains not just why a task blocked, but who it was waiting for, and who they were waiting for, and so on. This is the beginning of a new generation of tools and visualizations.

Next steps in enhanced BPF development for tracing will be discussed, both kernel features and user tooling.


performance, bpf

Presentation Materials



  • Brendan_face2017_500d

    Brendan Gregg



    Brendan Gregg is an industry expert in computing performance and cloud computing. He is a senior performance architect at Netflix, where he does performance design, evaluation, analysis, and tuning. He is the author of multiple technical books including Systems Performance published by Prentice Hall, and received the USENIX LISA Award for Outstanding Achievement in System Administration. He has also worked as a kernel engineer, and as a performance lead on storage and cloud products. Brendan has created performance analysis tools included in multiple operating systems, and visualizations and methodologies for performance analysis, including flame graphs.