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

Reply via email to