http://www.perlmonks.org?node_id=581006


in reply to Profiling a large program

You can try PadWalker and Devel::Cycle for finding variables that are not getting freed. However, growth in memory doesn't always mean that you have memory leaks. It may just mean that you are loading something large into some of your variables at some point. The memory will stay allocated there one it has been used, even if the variable is garbage collected.