WOwoadwarrior01·Nov 11, 2019
Also 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/google/autofdo
In Evaluation of CPU profiling tools: gperftools, Valgrind and gprof (2015)