#!/usr/bin/perl
use strict;
use warnings;
use Devel::MAT;
my $pmat = Devel::MAT->load( $ARGV[0] // die "Need dumpfile\n" );
my $df = $pmat->dumpfile;
my $tool = $pmat->load_tool( "Count" );
print "Perl memory dumpfile from perl ", $df->perlversion, "\n";
print "Heap contains ", scalar $df->heap, " objects\n";
printf " %-20s %-10s %-10s\n", "Kind", "Count", "(blessed)";
my ( $kinds, $blessed ) = $tool->count_svs( $df );
foreach my $kind ( sort keys %$kinds ) {
printf " %-20s %-10s %-10s\n", $kind, $kinds->{$kind}, $blessed->{$kind} // "";
}