You've already forked go-profiler-notes
mirror of
https://github.com/DataDog/go-profiler-notes.git
synced 2025-07-15 23:54:16 +02:00
pprof: Add visualization
This commit is contained in:
6
pprof.md
6
pprof.md
@ -10,7 +10,11 @@ The pprof tool features an interactive command line interface, but also a Web UI
|
||||
|
||||
### Description
|
||||
|
||||
The pprof tool defines a [protocol buffer](https://developers.google.com/protocol-buffers) output format, which is always stored with gzip compression and described in great detail this [README](https://github.com/google/pprof/blob/master/proto/README.md) as well as the [profile.proto](https://github.com/google/pprof/blob/master/proto/profile.proto) definition file itself.
|
||||
The pprof tool defines a [protocol buffer](https://developers.google.com/protocol-buffers) output format, which is always stored with gzip compression and described in great detail this [README](https://github.com/google/pprof/blob/master/proto/README.md).
|
||||
|
||||
A picture is worth a thousand words, so here is a visualization of [profile.proto](https://github.com/google/pprof/blob/master/proto/profile.proto) generated by [protodot](https://github.com/seamia/protodot):
|
||||
|
||||
<img src="./profile.png" alt="profile.proto visualized" style="zoom: 80%;" />
|
||||
|
||||
pprof's data format appears to be designed to for efficency, multiple languages and different profile types (CPU, Heap, etc.), but because of this it's very abstract and full of indirection. If you want all the details, follow the links above. If you want the **tl;dr**, keep reading:
|
||||
|
||||
|
BIN
profile.png
Executable file
BIN
profile.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 112 KiB |
Reference in New Issue
Block a user