#signal #profiler #profiling #signal-handler #programs #running #ckb-vm

ckb-vm-signal-profiler

Linux signal based profiler for ckb-vm, note this is profiling ckb-vm itself, not the programs running in ckb-vm

4 releases (breaking)

0.115.0-rc2 Mar 21, 2024
0.114.0 Mar 1, 2024
0.113.0 Jan 10, 2024
0.112.1 Nov 22, 2023

#12 in #signal-handler

Download history 7/week @ 2024-01-05 8/week @ 2024-02-16 14/week @ 2024-02-23 181/week @ 2024-03-01 6/week @ 2024-03-08 49/week @ 2024-03-15 35/week @ 2024-03-22 18/week @ 2024-03-29 5/week @ 2024-04-05

107 downloads per month

MIT license

22KB
463 lines

ckb-vm-signal-profiler

Signal based profiler for ckb-vm. Like gperftools, it uses a SIGPROF signal handler to suspend running CKB-VM programs so as to gather profiling data. One advantage of this solution, is that it requires no code injections into CKB-VM. However also due to this design choice, this profiler runs on Linux only for the moment.

See here for an example on using this library.

This library inherits a lot of the signal handler related code from pprof-rs library.

Notes

  • If anything weird happens when loading the generated profiling data, make sure you are using the golang based pprof at here, not the binary from gperftools with the same name.

Dependencies

~10MB
~202K SLoC