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

Video downloader
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Direct Download
Read full article as PDF:
Price $2.95
News
-
Mageia 8 is Now Available with Linux 5.10 LTS
The latest release of Mageia includes improved graphics support for both AMD and NVIDIA GPUs.
-
GNOME 40 Beta has been Released
Anyone looking to test the beta for the upcoming GNOME 40 release can now do so.
-
OpenMandriva Lx 4.2 has Arrived
The latest stable version of OpenMandriva has been released and offers the newest KDE desktop and ARM support.
-
Thunderbird 78 is being ported to Ubuntu 20.04
The Ubuntu developers have made the decision to port the latest release of Thunderbird to the LTS version of the platform.
-
Elementary OS is Bringing Multi-Touch Gestures to the OS
User-friendly Linux distribution, elementary OS, is working to make using the fan-favorite platform even better for laptops.
-
Decade-Old Sudo Flaw Discovered
A vulnerability has been discovered in the Linux sudo command that’s been hiding in plain sight.
-
Another New Linux Laptop has Arrived
Slimbook has released a monster of a Linux gaming laptop.
-
Mozilla VPN Now Available for Linux
The promised subscription-based VPN service from Mozilla is now available for the Linux platform.
-
Wayland and New App Menu Coming to KDE
The 2021 roadmap for the KDE desktop environment includes some exciting features and improvements.
-
Deepin 20.1 has Arrived
Debian-based Deepin 20.1 has been released with some interesting new features.