Ticket #1564 (closed task: complete)
document how to profile - valgrind/callgrind/kcachegrind
| Reported by: | jelte | Owned by: | jelte |
|---|---|---|---|
| Priority: | medium | Milestone: | Sprint-20120124 |
| Component: | Unclassified | Keywords: | |
| Cc: | CVSS Scoring: | ||
| Sensitive: | no | Defect Severity: | N/A |
| Sub-Project: | DNS | Feature Depending on Ticket: | |
| Estimated Difficulty: | 0 | Add Hours to Ticket: | 0 |
| Total Hours: | 3.75 | Internal?: | no |
Description
For now, a wiki page is with the needed steps is enough I think; so it would at the very least need to contain:
- how to set up system and/or environment
- how to compile for it
- how to run it
- how to check results
Change History
comment:2 Changed 16 months ago by jelte
- Owner set to UnAssigned
- Status changed from new to reviewing
comment:4 follow-up: ↓ 5 Changed 16 months ago by vorner
- Owner changed from vorner to jelte
Hello
I guess the setup_intree_bind10.sh is mostly for the B10_FROM_SOURCE variables (we really should be OK with just one to signal the whole in-source situation at once).
For building, maybe mentioning that a optimised build might be necessary?
Does the thing count time or instructions?
Wouldn't running the thing be easier by:
libtool --mode=execute valgrind --tool=callgrind ./src/bin/auth/b10-auth
One doesn't have to guess what is the exact binary in the .libs directory, as it differs between OSes. Also, it would work even when the B10_FROM_SOURCE & friends are set by hand, without the whole set of library environment variables.
Would you know of a tool other than kcachegrind? Than one has an unfortunate set of (mostly indirect) dependencies. I discovered only the commandline cachegrind_annotate.
comment:5 in reply to: ↑ 4 Changed 16 months ago by jelte
- Owner changed from jelte to vorner
Replying to vorner:
Hello
I guess the setup_intree_bind10.sh is mostly for the B10_FROM_SOURCE variables (we really should be OK with just one to signal the whole in-source situation at once).
that is the goal, but right now it is easiest to just source this script (currently there are 3 vars needed i think, SOURCE, BUILD and MSGQ_SOCKET), though it also sets paths, making you have to type less :)
For building, maybe mentioning that a optimised build might be necessary?
Does the thing count time or instructions?
instructions
Wouldn't running the thing be easier by:
libtool --mode=execute valgrind --tool=callgrind ./src/bin/auth/b10-authOne doesn't have to guess what is the exact binary in the .libs directory, as it differs between OSes. Also, it would work even when the B10_FROM_SOURCE & friends are set by hand, without the whole set of library environment variables.
yes, but also more typing :) added.
Would you know of a tool other than kcachegrind? Than one has an unfortunate set of (mostly indirect) dependencies. I discovered only the commandline cachegrind_annotate.
those two are the only ones I know of too. Added a section on annotate as well, but kcachegrind is the most informative one.

When you have created a wiki page for this, please add or update the link on http://bind10.isc.org/wiki/ProfilingHowto