Profiling memory usage

By Tim Bunce
Date: Saturday, 30 November 2013 12:00
Duration: 50 minutes
Target audience: Advanced
Language: English
Tags: memory

There are several ways to profile the memory usage of perl applications. None of them are both good and easy. All have subtle and not-so-subtle limitations.

In this talk I’ll explain why memory profiling is hard, survey the available techniques and modules, and demonstrate Devel::SizeMe.

Devel::SizeMe is my new perl memory profiler. It builds on the detailed memory pointer chasing done by Devel::Size by adding the creation of a data file that captures details of every item of memory within a perl interpreter (and beyond) and includes tools to visualize the items and their relationships.

I've been told it has to be seen to be believed. There are pretty visualizations, but it's early days yet and there's much that needs doing.

Attended by: Gianni Ceccarelli (‎dakkar‎), Barbie, Leo Lapworth (‎Ranguard‎), Tom Hukins, David Dorward, Søren Lund (‎slu‎), Andrew Ford, Tim Bunce, Wolfgang Schemmel (‎Perleone‎), David Moreno (‎damog‎), Paul Mooney (‎moonfish‎), steve mynott (‎itz‎), Dermot Paikkos, Paul Evans (‎LeoNerd‎), Andy Smith, Alex Burzyński (‎AJGB‎), James Aitken (‎LoonyPandora‎), Jerome Eteve (‎jeteve‎), David Morrison, Andrew Jones, Julien Fiegehenn (‎simbabque‎), Mohammad Anwar (‎manwar‎), Hugh Barnard, Pete Barlow, Helen Schuilenburg, Venkatesh R (‎Venki‎), Jayesh Joshi (‎Josh‎), João Bolila, Mauro Gilardi, fabio p,



Active Securities


Bytemark Hosting

CV Library




magnum Solutions


Net-A-Porter Group


Petamem logo

Science Photo Library

      Systems Limited


Enlightened Perl Organisation

Perl6 Community

The Perl Foundation