Profiling Viewer 4+

Callgrind file visualizer

Attila Soki

    • 4.8 • 4 Ratings
    • $24.99

Screenshots

Description

Treemap, Callgraph, Flamegraph, Heatmap, PDF with vectorgraphics, Sourcefile viewer. Combine multiple metrics into one chart. Runs natively on Apple silicon and on Intel.

Profiling Viewer opens and visualizes callgrind files. You can use Flamegraph, Treemap, Callgraph, flat or hierarchic lists to identify functions where your application spends more time than expected.

Highlights:
- Runs natively on both Apple silicon and Intel-based Mac computers
- Mix & Match: combine multiple cost types to construct a Callgraph, a Treemap or a Flamegraph
- Handles multiple costs and position types
- Supports reading gzip compressed profiling files
- Elegant reports for printing or as PDF with vectorgraphics
- Treemap with heatmap
- Callgraph with heatmap
- Flame-graph classic or with heatmap
- System functions can be hidden based on customizable presets
- Compatible with Xdebug
- Beautiful Dark Mode
- Source lines annotated with costs

You can generate the required callgrind profiling data with various external tools available for many platforms and programming languages.
For example, you can open callgrind files generated by the Xdebug extension for PHP, Valgrind, Ruby ruby-prof, Python cProfile with pyprof2calltree, gperftools-pprof, golang pprof, node.js nodegrind and many other profiling tools with callgrind file output.

Features:
- Function costs visualized as Treemap, Callgraph, Flame graph and Lists
- Combine Treemap, Callgraph, Flamegraph with Heatmap
- Supports reading gzip compressed profiling files
- Elegant reports for printing or as PDF with vectorgraphics
- System functions can be hidden based on customizable presets
- Drill down through double-click, mouse over for details
- Source file Viewer annotated with costs and color marks
- Configurable source locations
- Displays costs as raw data or as percent
- Handles multiple costs and position types
- Shows cycles and recursions
- Sort data by costs, function name or filename
- Navigation history
- Parses compressed callgrind files
- Small memory footprint (for example, approximately 280 MB memory used to open and display a 4.6 GB callgrind file generated by xdebug)

The Callgraph view:
- is Zoomable
- Supports trackpad gestures like zoom in, zoom out, smart zoom
- Represents call costs by the thickness of connections
- Its complexity can be reduced by hiding functions with cost below a customizable preset

The Flamegraph view:
- is generated from a callgrind file
- has a virtual gray node with the cumulative cost of functions that are too small for the current screen resolution.


Profiling Viewer uses graphviz to layout and render callgraphs. Graphviz is licensed under the Eclipse Public License v1.0. You can download graphviz at http://www.graphviz.org

What’s New

Version 1.15

fixed an occasional crash in Flamegraph

Ratings and Reviews

4.8 out of 5
4 Ratings

4 Ratings

JaviSolis ,

Works well as expected for PHP

Xdebug cachegraph.out can be read here even though it errors out in PHPStorm due to a bug that has not been fixed by them. I wished it had an option though to see diffrent units such as mega bytes and kilobytes or minutes/secods. Its kind of a drag to convert those everytime. But its use of graphviz is great so the visualizations are spot on. If you use it for memory profiling of PHP files with xdebug use the callgraph view and search for the methods you are looking for

Developer Response ,

Hi,
Thanks for your review.
By clicking the "N" button twice, a dropdown appears and you can select the desired unit.

App Privacy

The developer, Attila Soki, indicated that the app’s privacy practices may include handling of data as described below. For more information, see the developer’s privacy policy.

Data Not Collected

The developer does not collect any data from this app.

Privacy practices may vary, for example, based on the features you use or your age. Learn More

Supports

  • Family Sharing

    Up to six family members can use this app with Family Sharing enabled.