r-prof / jointprof

Joint profiling of native and R code
https://r-prof.github.io/jointprof/
Other
55 stars 6 forks source link

Review other sampling profilers #2

Open krlmlr opened 7 years ago

krlmlr commented 7 years ago
krlmlr commented 6 years ago

gprof: needs compiler switches, can't profile shared libraries (?)

http://gernotklingler.com/blog/gprof-valgrind-gperftools-evaluation-tools-application-level-cpu-profiling-linux/

krlmlr commented 6 years ago

valgrind/callgrind instruments, slows down code by factor ~50

http://gernotklingler.com/blog/gprof-valgrind-gperftools-evaluation-tools-application-level-cpu-profiling-linux/

krlmlr commented 6 years ago

IgProf: Linux only, otherwise similar to gperftools

http://igprof.org/

krlmlr commented 6 years ago

RotateRight: Looks unmaintained, needs suid bit

https://en.wikipedia.org/wiki/RotateRight_Zoom

Download site without any documentation: http://www.rotateright.com/

krlmlr commented 6 years ago

OProfile: needs root

http://oprofile.sourceforge.net/about/

krlmlr commented 6 years ago

dicej/profile: looks like a much simpler version of gperftools

https://github.com/dicej/profile

krlmlr commented 6 years ago

ptrace-sampler: Unmaintained pre-alpha

https://github.com/oliver/ptrace-sampler

krlmlr commented 6 years ago

rsvp: OS X only, requires root

https://github.com/blitzcode/rsvp

krlmlr commented 6 years ago

CodeXL: Windows and Linux (but no OS X), worth a try.

https://github.com/gpuopen-tools/codexl

Ubuntu installation didn't work: Error running dpkg --configure.

krlmlr commented 6 years ago

Many other proprietary options, or tools that don't quite fit the scope: https://en.wikipedia.org/wiki/List_of_performance_analysis_tools

krlmlr commented 6 years ago

traceR: An entire framework, instrumenting profiler focusing on R. Worth a try too.

https://github.com/allr/tracer

krlmlr commented 6 years ago

verysleepy: free, worked very well last time I checked, but may require additional work to turn into a library. Windows only, but perhaps useful in combination with gperftools.

https://github.com/VerySleepy/verysleepy