Performance Insights into eBPF Step by Step
summary
Quick, practical checklist of concrete tools and limits: use bpftool global runtime and run counts for a sanity baseline; avoid scattershot bpftrace prints on loaded systems because of high user‑kernel overhead; prefer fentry/fexit probes require BTF for exact BPF-only latencies and use kfuncs to dodge kprobe max_active loss; sample with perf needs whole-kernel sampling (and BTF) to get instruction hotspots; consider instruction-set version, BPF-to-BPF calls, batch map ops, packed allocators, bloom_filter maps and task local storage for real wins.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 0:42Background information
- 4:29What are we doing
- 10:42Adding extra instrumentation probes
- 16:41Improving performance
- 18:00BPF instruction sets
- 21:37How to pin instruction sets
- 23:18BBF to BPF calls
- 26:26BPF to tail calls
- 27:46Batch Operations
- 29:22Park Allocators
- 30:44Bloom Filter Map
- 31:52Task Log Storage
- 34:21Conclusion
related talks
21mPerformance Wins with BPF: Getting Started
46mbpftrace internals
38meBPF for Observability: Hard Truths and Practical Wins
32mBPF: Introduction, Programming Tips and Tricks
36mObservability and performance analysis with BPF
25mKernel tracing with BPF
20mClosing Perspectives
27mLow-Overhead Tracing Using eBPF for Observability into Kubernetes Apps and Services
