Ticket #1564 (closed task: complete)

Opened 16 months ago

Last modified 16 months ago

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:1 Changed 16 months ago by jelte

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

comment:2 Changed 16 months ago by jelte

  • Owner set to UnAssigned
  • Status changed from new to reviewing

comment:3 Changed 16 months ago by vorner

  • Owner changed from UnAssigned to vorner

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-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.

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.

comment:6 Changed 16 months ago by vorner

  • Owner changed from vorner to jelte

Hello

Looks OK, I guess this could be closed.

Thanks

comment:7 Changed 16 months ago by vorner

  • Total Hours changed from 0 to 0.75

comment:8 Changed 16 months ago by jelte

  • Status changed from reviewing to closed
  • Total Hours changed from 0.75 to 3.75
  • Resolution set to complete
Note: See TracTickets for help on using tickets.