Skip to content

Difference between heaptrace and valgrind

Aaron Esau edited this page Dec 1, 2021 · 3 revisions

valgrind is a powerful suite of dynamic analysis tools that includes a heap profiler. You may be wondering what the difference between heaptrace and valgrind is.

The two tools have different purposes.

  • The purpose of the valgrind heap profiler is to detect unfreed memory and heap corruption issues and tell the user the source of the issues.
  • The purpose of heaptrace is to help users understand heap operations by replacing addresses with symbols, and enable users to achieve certain heap states before debugging in gdb (see --break)
    • Detecting heap corruption issues is NOT the primary purpose of the tool—only a feature we implemented because we had access to the information we needed.
Clone this wiki locally