FOSSPicks

Memory profiler

Heaptrack

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

https://github.com/KDE/heaptrack

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

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
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.

  • Mozilla Labs Launches Gaming Initiative

    Platform based on open Web technologies.

  • FOSSPicks

    This month Graham fires up MuseScore 3.0, hexyl, weborf, Chrono, and several other useful Linux tools.

  • FOSSPicks

    After building a 3D printer last month, Graham's home is now filled with cup holders, phone holders, cable holders, and tiny PLA boats. This month, Graham explores Zrythm, Mumble 1.3, NoteKit, Kirogi, monolith, pastel, Nu Shell, PacVim, Stunt Car Racer Remake, and more!

comments powered by Disqus

Direct Download

Read full article as PDF:

Price $2.95

News