Using valgrind for profiling bigloo-compiled binaries
Sven Hartrumpf <[email protected]> Mon, 03 Feb 2020 12:39:32 +0100 (CET)
| Newsgroups | gmane.lisp.scheme.bigloo |
|---|---|
| Message-ID | <[email protected]> |
Hi Bigloo users. I just want to share a positive experience with valgrind (version 3.15) for profiling bigloo-compiled binaries. Here is a step-by-step guide: 1 Compile your binary with debug options (-g2); my binary name is foo. 2 Run your binary; you can stop it when you collected enough data: valgrind --tool=callgrind foo <foo-option1> ... 3 Browse the profile results: kcachegrind callgrind.out.* Advantages over bglprof: - The bigloo installation need not be configured for profiling. - No special compilation of your binary needed (except for -g2). - Accurate statistics (With bglprof, I sometimes see attributions to wrong functions - which might be my fault.) - The host where you run your profiled binary needs no matching bigloo installation, if the binary is linked statically. Disadvantages: - Your binary will run 10-100 times slower than normal. - Names of Scheme functions are mangled. Ciao Sven