Memory profiler


Some time ago, we looked at an app called hotspot that operated as a GUI for a complex debugging application called perf. perf and hotspot let developers look at the internal workings of the applications they're working on to see where they are spending the most time and resources, helping developers improve the performance of that application and track down bugs. Heaptrack performs a similar role, only with a focus on memory allocation rather than CPU resources. If you're a developer, it can help you see when and where your application or utility is allocating and using memory, when and whether that memory is being freed correctly, and which elements within your code are asking for the most memory. Like perf, it's a complex process that requires a thorough understanding of the operating system and the application you're trying to profile, but due to Heaptrack's graphical nature, it's also a fascinating window into your applications, whether you're a developer or not.

Heaptrack operates in two modes. The first mode is used to generate a profile for the running utility or application and runs through gdb. The result will be a file that you pass as an argument to launch Heaptrack in its second mode, which is where you can explore your application's memory allocation through a lovely GUI. There are 10 tabs in this view, all offering a slightly different take on how memory was used during the profiling process. The first tab shows a summary of which calls used the most memory, leaked the most, or required the most temporary storage, but the more interesting tabs use this information to visualize usage over time. With Allocations, for example, you can see how memory use grows during execution. The Flame Graph is our favorite, though. It groups calls into a hierarchy, with calls calling calls stacked upon each other into mountains of memory use – fascinating!

Project Website

This is a profile in Heaptrack of the Dolphin file manager browsing and then opening an image file.

Video downloader

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • LMMS

    Linux has truly started to compete with Windows and MacOS as a platform for professional sound applications. Linux Multimedia Studio (LMMS) is a Linux sound tool that packs a variety of impressive features into a neat bundle.

  • FOSSPicks

    Graham checks out Sigil, Dragonfly Reverb, LabPlot 2.8, Node-RED, batufo, rg3d, and much more.

  • FOSSPicks

    Over the past couple of months, Graham's ever-versatile Steam Deck has synced books to an e-reader, played movies on a television, joined Mumble, recorded two podcast episodes, and even played a few games.

  • Mozilla Labs Launches Gaming Initiative

    Platform based on open Web technologies.

  • gbrainy

    Gbrainy can help you develop your logical thinking skills with a collection of brain teasers.

comments powered by Disqus

Direct Download

Read full article as PDF:

Price $2.95

Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Find SysAdmin Jobs