I’ve ported my additional DTrace probes to blead perl, adding the following probes
- new-sv and del-sv to track Perl allocations,
- main-enter and main-exit to show what part of Perl’s execution phase we’re in
- load-module-entry and load-module-return to instrument use, require, do.
I’ve also started to document the probes at http://wikis.sun.com/display/DTrace/perl+Provider
To use the patch,
- get bleadperl:
- rsync -avz –exclude .svn/ –delete rsync://ftp.linux.activestate.com/perl-current/ bleadperl
- apply the patch:
- cd bleadperl ; patch ../bleadperl.diff
- run configure with dtrace enabled:
- ./Configure -de -Dusedevel -Dinc_version_list=none -Dprefix=/usr/local/bleadperl/ -Dldflags=-Dman3ext=3pm -Duseithreads -Duseshrplib -Uversiononly -Dusedtrace -Doptimize=-g
- make
- make test
- make install
- run./perl.d (also found at http://distributedinformation.com/DTrace/ ) and then run whatever Perl code you want to instrument.