https://web.archive.org/web/20160718172225/http://gernotklin...
Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)
11–20 of 29 posts
Re: Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)
#12Also worth considering is Oprofile: https://en.m.wikipedia.org/wiki/OProfile
So I use "perf stat" now. :)
Re: Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)
#13Re: Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)
#14Re: Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)
#15No love for VTune?
Re: Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)
#16 gcc -fsanitize=address ...
gcc -fsanitize=thread ...
They perform better than valgrind.Re: Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)
#17Also worth mentioning here is perf[1], which is great for low overhead profiling. Also, perf profiles can be turned into profiles compatible with GCC and LLVM PGO to build optimized binaries based on production runs, using autofdo[2]. In my use case, the instrumentation overhead was too high to use regular profiling on production workloads. [1]: https://en.m.wikipedia.org/wiki/Perf_%28Linux%29 [2]: https://github.com…
Re: Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)
#18A problem with google perftools is the `SIGPROF` signal used in sampling will interrupt polling such as used in ZeroMQ. Otherwise, it is a good tool in the toolbox.
27 SIGPROF terminate process profiling timer alarm (see setitimer(2))
its use is specifically what that signal is for.Additionally, it seems fixed in zeroMQ for some things already in 2016... so i doubt thats still valid issue.
Re: Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)
#19Also worth mentioning here is perf[1], which is great for low overhead profiling. Also, perf profiles can be turned into profiles compatible with GCC and LLVM PGO to build optimized binaries based on production runs, using autofdo[2]. In my use case, the instrumentation overhead was too high to use regular profiling on production workloads. [1]: https://en.m.wikipedia.org/wiki/Perf_%28Linux%29 [2]: https://github.com…
Re: Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)
#20gcc has an address and thread sanitizer built in these days. gcc -fsanitize=address ... gcc -fsanitize=thread ... They perform better than valgrind.
Sanitizers and memcheck are unrelated to the profiling discussion here.