tree 38b959188d648ddd15fc6438906cc5c428023a22
parent a41b82acbcb1f6a6d0998b0fddeb1f1adb7d8fc1
author Sanjay Ghemawat <sanjay@google.com> 1660662359 -0700
committer GitHub <noreply@github.com> 1660662359 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJi+7JXCRBK7hj4Ov3rIwAAmtEIAEZKY5Kbba79Z1myO2A2w+fI
 xnn6gwKFIiB0KKEGmW4/tAW/XZbBPB2WZBj26FJ4dofpb3e6/QL8qsLUkHESy2oD
 r/1by8GHvvSG/BE9N1etw4++8/WjIQZ5bqGzdGrnbIAH2zRg9ckC8vJR5JWKbQQy
 xqKzE+5gpb2lSn+m6k0DirITl7sV9U5Q7EUgyf2hTXExqcivFvG1KDbFY9DgLzC1
 8mT3RmVH+XOLu3S/Y7NElr6Fx7xLbSQU7UskMKqpk+8mRINbwdolx01Ds+PvCrf5
 0I3g+2jOc+e6JtCWKM7YOJNY5xAN+awLhoSnVwTVdSzoiuMtTCwaI6si0ZQvbg0=
 =NNhM
 -----END PGP SIGNATURE-----
 

Added alternative flamegraph implementation that can show callers. (#716)

Add an experimental flame-graph implementation. It can be selected in
pprof's web interface using the new "Flame (experimental)" menu entry.
At some point this new implementation may become the default.

The new view is similar to flame-graph view. But it can show caller
information as well. This should allow it to satisfy many users of
Graph and Peek views as well.

Let's illustrate with an example. Suppose we have profile data that
consists of the following stacks:

```
1000	main -> foo -> malloc
2000	main -> bar -> malloc
```

When main is selected, both the old and new views show:

```
[-------------------3000 main---------------------]
[---1000 foo-----] [----------2000 bar------------]
[---1000 malloc--] [----------2000 malloc---------]
```

But suppose now the user selects the right-most malloc slot.
The old view will show just the path leading to that malloc:

```
[----------2000 main-----------]
[----------2000 bar------------]
[----------2000 malloc---------]
```

The new view will however show a flame-graph view that grows
upwards that displays the call stacks leading to malloc:

```
[---1000 main----] [----------2000 main-----------]
[---1000 foo-----] [----------2000 bar------------]
[-------------------3000 malloc-------------------]
```

This caller display is useful when trying to determine expensive
callers of function.

A list of important differences between the new view and flame graphs:

New view pros:

1.  Callers are shown, e.g., all paths leading to malloc.
2.  Shows self-cost clearly with a different saturation.
3.  Font size is adjusted to fit more text into boxes.
4.  Highlighting on hover shows other occurrences of a function.
5.  Search works more like other views.
6.  Pivot changes are reflected in browser history (so back and forward
    buttons can be used to navigate between different selections).
7.  Allows eventual removal of the D3 dependency, which may make
    integrations into various environments easier.
8.  Colors provide higher contrast between foreground and background.

New view cons:

1.  There are small differences in how things look and feel.
2.  Color-scheme is very different.
3.  Change triggered by selecting a new entry is not animated.