gperftools VS tracy

Compare gperftools vs tracy and see what are their differences.

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
gperftools tracy
4 66
8,537 10,578
0.6% 3.1%
9.4 9.8
about 2 months ago 5 days ago
C++ C++
BSD 3-clause "New" or "Revised" License GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

gperftools

Posts with mentions or reviews of gperftools. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-05-20.

tracy

Posts with mentions or reviews of tracy. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-12-19.
  • Clay – UI Layout Library
    7 projects | news.ycombinator.com | 19 Dec 2024
    > First, this isn't really true. You might typically have a window, a container, a layout object and then your gui components.

    Any non-trivial UI will include many complicated workflows and layouts. "GUI components" themselves will often be combinations of other, more primitive, GUI components.

    > Second you don't need nested calls, you just add one component to another.

    You're just describing currying here (function application or nesting hierarchies are the same thing), and both are equally annoying when building interfaces.

    > Why would that be true?

    Because you will want certain things to be reusable, it's a pretty common pattern.

    > This is a bizarre way to make a GUI let alone thinking it's necessary. Where is this idea coming from?

    It's a pretty common pattern for building GUIs. Take a look at tracy[1], built using ImGUI. All the different components are split up in their own file, I'm not sure what the alternative would be, like a 100,000-line "master UI" file? Seems like a much worse idea. Looking at the tracy code, it's very well-written, but also super weird to follow. For example, color defaults seem to be located in header files[2]. I mean, yuck.

    [1] https://github.com/wolfpld/tracy/tree/master/profiler/src/pr...

    [2] https://github.com/wolfpld/tracy/blob/master/profiler/src/pr...

  • Intentrace: Strace for Everyone
    4 projects | news.ycombinator.com | 7 Nov 2024
    While it doesn't capture every syscall, you can get pretty far with the (seemingly little known) Endpoint Security Framework: https://developer.apple.com/documentation/endpointsecurity

    I cobbled together a little tool at my previous job that would capture a full trace of all process fork+exec and file opens, which would then present all of these events in the usual tracing UI (like you'd get when view a trace of a single program with Tracy[1] or Perfetto[2]).

    We had a massive monorepo built with bazel and a heap of shell, and it wasn't clear which part of our code base was responsible for generating some mis-generated file. This tool gave me the whole inter-process call stack, complete with arguments and environment variables, letting me quickly find where and how to fix the problem.

    It's such a nice tool to have that it kinda blows my mind that no one has openly published anything like it. By leveraging eBPF on Linux, the same UI could be used on both macOS and Linux. If I had more time and energy, I'd do it myself.

    [1]: https://github.com/wolfpld/tracy

    [2]: https://perfetto.dev/

  • Tracy: A real time, nanosecond resolution frame profiler
    4 projects | news.ycombinator.com | 23 Sep 2024
    https://github.com/wolfpld/tracy/issues/887

    MSVC changed the mutex constructor to constexpr, breaking binary backward compatibility. They say WONTFIX, you must use the latest MSVCRT with the latest MSVC. But I have the latest MSVCRT installed? Whatever - a workaround was pushed to master yesterday.

  • Logging all C++ destructors, poor mans run-time tracing
    3 projects | news.ycombinator.com | 21 Sep 2024
    I consider Tracy the state of the art for profiling C++ applications. It’s straightforward to integrate, toggle, gather data, analyze, and respond. It’s also open source, but rivals any product you’d have to pay for:

    https://github.com/wolfpld/tracy

  • Trace Profiler 0.11.1
    1 project | news.ycombinator.com | 28 Aug 2024
  • Flame Graphs: Making the Opaque Obvious (2017)
    3 projects | news.ycombinator.com | 27 Jun 2024
    For C++ applications, nothing beats Tracy’s flame graphs in value per dollar. We are using it at Adobe with great effect. It can handle mutex lock contention, runtime values and notes, arbitrary value graphs, and more. Highly recommended: https://github.com/wolfpld/tracy
  • Tracy: A real time frame and sampling profiler for games and other applications
    1 project | news.ycombinator.com | 12 May 2024
  • Tracy: Real-time nanosecond resolution frame profiler
    1 project | news.ycombinator.com | 22 Mar 2024
  • Google/orbit – C/C++ Performance Profiler
    3 projects | news.ycombinator.com | 11 Feb 2024
    i don't really think there is _anything_ that comes even close to tracy https://github.com/wolfpld/tracy.

    on top of this, given google's penchant for dumping projects aka abandonware, this would be an easy pass.

  • Immediate Mode GUI Programming
    15 projects | news.ycombinator.com | 15 Jan 2024
    The RemedyBG debugger (https://remedybg.handmade.network/) and the Tracy profiler (https://github.com/wolfpld/tracy) both use Dear ImGui and so far I've only read high praise from people who used those tools compared to the 'established' alternatives.

    For tools like this, programmers are also just "normal users", and from the developer side, I'm sure they evaluated various alternatives with all their pros and cons before settling for Dear ImGui.

What are some alternatives?

When comparing gperftools and tracy you can also consider the following projects:

pprof - pprof is a tool for visualization and analysis of profiling data

optick - C++ Profiler For Games

jemalloc

orbit - C/C++ Performance Profiler

massif-visualizer - Visualizer for Valgrind Massif data files

palanteer - Visual Python and C++ nanosecond profiler, logger, tests enabler

mimalloc - mimalloc is a compact general purpose allocator with excellent performance.

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

parallel-hashmap - A family of header-only, very fast and memory-friendly hashmap and btree containers.

gprof2dot - Converts profiling output to a dot graph.

STL - MSVC's implementation of the C++ Standard Library.

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured

Did you know that C++ is
the 7th most popular programming language
based on number of references?