|
Author: Stephan Bergmann. Last changed: $Date: 2005/01/12 16:00:37 $. Callgrind How-ToCallgrind (also known under the names Calltree and
KCachegrind) is a profiling tool that runs on Linux x86. It
builds on the Valgrind framework and
comes with a graphical frontend, This document concentrates on using callgrind on SuSE 9.2 to profile OpenOffice.org. Installing CallgrindOn SuSE 9.2, just install the Doing so installs Callgrind version 0.9.8, Valgrind version 2.2.0, and KCachegrind version 0.4.5kde on your machine. Useful documentation is locally installed at
Profiling OpenOffice.orgNo modification or instrumentation is necessary for profiling a sufficiently
recent callgrind ./soffice.bin (When executing Java or some legacy dynamic libraries within
When kcachegrind callgrind.out.pidto view it. I experienced the problem that the generated file is very small (around 500 byte) and does not contain the necessary information when profiling soffice.bin. In that case, it worked for me to
execute
callgrind --separate-threads=yes ./soffice.bininstead, which writes out individual files callgrind.out.pid.thread together with an
empty callgrind.out.pid. Opening that empty
callgrind.out.pid in kcachegrind
automatically reads in all the individual thread files.
Detailed information at the source/assembler instruction level can be gathered by specifying the additional LimitationsIt worked fine for me to profile One solution to this problem might be to only gather data for parts of an
callgrind_control -i on use echo +Instrumentation > callgrind.cmd and instead of callgrind_control -d use echo Dump > callgrind.cmd Using instrumentation only during operations that should be profiled also
speeds up the startup of Rather than using |


