python-build-standalone icon indicating copy to clipboard operation
python-build-standalone copied to clipboard

eBPF tracing support

Open hariom-qure opened this issue 1 year ago • 0 comments

Linking the original issue here (we use rules_python, where I raised it first): https://github.com/bazelbuild/rules_python/issues/1737

I want to use eBPF to do arbitrary performance profiling of our code, but its not very useful if the python interpreter is not compiled with dtrace and frame pointer support. Without these two, all the information about function names are lost in the stack trace.
The important flags:

  1. --with-dtrace: This flag enables static markers inside python which we can hook into using eBPF (details: https://docs.python.org/3/howto/instrumentation.html)
  2. Enable Frame pointer: -fno-omit-frame-pointer in gcc. This makes sure the information of function names in stack trace is not lost. References: https://www.brendangregg.com/blog/2024-03-17/the-return-of-the-frame-pointers.html

hariom-qure avatar Mar 26 '24 04:03 hariom-qure