[Python-Dev] DTRACE support (original) (raw)
Charles-François Natali cf.natali at gmail.com
Fri Sep 6 17:29:12 CEST 2013
- Previous message: [Python-Dev] DTRACE support
- Next message: [Python-Dev] DTRACE support
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
As far as I know, Erlang, Ruby, PHP, Perl, etc., support Dtrace. Python is embarrasingly missing from this list.
Some examples: <http://crypt.codemancers.com/posts/2013-04-16-profile-ruby-apps-dtrace-part1/> <http://www.phpdeveloper.org/news/18859> <http://www.erlang.org/doc/apps/runtimetools/DTRACE.html> I have spend a very long time on a patch for Dtrace support in most platforms with dtrace available. Currently working under Solaris and derivatives, and MacOS X. Last time I checked, it would crash FreeBSD because bugs in the dtrace port, but that was a long time ago. I would like to push this to Python 3.4, and the window is going to be closed soon, so I think this is the time to ask for opinions and support here. Does Python-Dev have any opinion or interest in this project?. Should I push for it?
IMO, that's a large, intrusive patch, which distracts the reader from the main code and logic.
Here's an extract from Modules/gcmodule.c:
static void dtrace_gc_done(Py_ssize_t value) { PYTHON_GC_DONE((long) value); /*
- Currently a USDT tail-call will not receive the correct arguments.
- Disable the tail call here. */
#if defined(__sparc) asm("nop"); #endif }
Also have a look at cevalc.c: http://bugs.python.org/review/13405/diff/6152/Python/ceval.c
IMO it's not worth it (personally strace/gdb/valgrind are more than enough for me, and we''re about to gain memory tracing with Victor's tracemalloc).
cf
- Previous message: [Python-Dev] DTRACE support
- Next message: [Python-Dev] DTRACE support
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]