Is there a way I can visualize all the function calls made while running the project(C++) in a graphical way?

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/cpp

Our great sponsors
  • Scout APM - Truly a developer’s best friend
  • InfluxDB - Build time-series-based applications quickly and at scale.
  • talent.io - Download talent.io’s Tech Salary Report
  • SonarQube - Static code analysis for 29 languages.
  • pprof

    pprof is a tool for visualization and analysis of profiling data

    gprftools (https://github.com/gperftools/gperftools) can be easily plugged in using LD_PRELOAD and signal, and has nice go implemented visualization tool https://github.com/google/pprof.

  • gprof2dot

    Converts profiling output to a dot graph.

  • Scout APM

    Truly a developer’s best friend. Scout APM is great for developers who want to find and fix performance issues in their applications. With Scout, we'll take care of the bugs so you can focus on building great things 🚀.

  • minitrace

    Simple C/C++ library for producing JSON traces suitable for Chrome's built-in trace viewer (about:tracing).

    I propose you to use something like Google Chrome traces. But you need to annotate the source code. Here is a lib that can be helpful https://github.com/hrydgard/minitrace

  • massif-visualizer

    Visualizer for Valgrind Massif data files

    As already mentioned, use valgrind setting massif as your tool and generate the massif.out file. Open this file with massif visualizer: https://github.com/KDE/massif-visualizer

  • tracy

    C++ frame profiler

    I personally very like Tracy for that: https://github.com/wolfpld/tracy Its easy to integrate, has a powerful UI, and most importantly, doesn't slow down your application too much.

  • Sourcetrail

    Sourcetrail - free and open-source interactive source explorer

    Sourcetrail used to cost money but now it’s free I think.

  • gperftools

    Main gperftools repository

    gprftools (https://github.com/gperftools/gperftools) can be easily plugged in using LD_PRELOAD and signal, and has nice go implemented visualization tool https://github.com/google/pprof.

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Data Platform where developers build real-time applications for analytics, IoT and cloud-native services in less time with less code.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts