]> Cypherpunks repositories - gostls13.git/commit
cmd/pprof: instruction-level granularity in callgrind output
authorMichael Pratt <mpratt@google.com>
Thu, 21 Jul 2016 05:01:33 +0000 (22:01 -0700)
committerRuss Cox <rsc@golang.org>
Wed, 12 Oct 2016 02:09:12 +0000 (02:09 +0000)
commit0aadaf2ad5fa8cc1c00256840e37f422dda9689f
tree0df6fd456edc7619c6692fad2cb7079277c913f7
parentf64c67018103c200c9e150ac5f1199a3175f54a6
cmd/pprof: instruction-level granularity in callgrind output

When generating callgrind format output, produce cost lines at
instruction granularity. This allows visualizers supporting the
callgrind format to display instruction-level profiling information.

We also need to provide the object file (ob=) in order for tools to find
the object file to disassemble when displaying assembly.

We opportunistically group cost lines corressponding to the same
function together, reducing the number of superfluous description lines.
Subposition compression (relative position numbering) is also used to
reduce the output size.

Change-Id: Id8e960b81dc7a47ec1dfbae877521f76972431c4
Reviewed-on: https://go-review.googlesource.com/23781
Run-TryBot: Michael Pratt <mpratt@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Raul Silvera <rsilvera@google.com>
Reviewed-by: Russ Cox <rsc@golang.org>
src/cmd/internal/pprof/driver/driver.go
src/cmd/internal/pprof/report/report.go