-=pod
-Devel::Size - Perl extension for finding the memory usage of Perl variables
+Devel::SizeMe is a variant of Devel::Size that can stream out detailed
+information about the size of individual data-structures and the links
+between them.
-=head1 SYNOPSIS
+It can do this the entire perl interpreter as well as specific data structures.
- use Devel::Size qw(size total_size);
+It comes with scripts for storing this data in a database and visualizing it in
+various forms, including graphs and an interactive treemap.
- my $size = size("A string");
+Current implementation is all very alpha and rather hackish.
- my @foo = (1, 2, 3, 4, 5);
- my $other_size = size(\@foo);
- my $foo = {a => [1, 2, 3],
- b => {a => [1, 3, 4]}
- };
- my $total_size = total_size($foo);
+TODO:
-=head1 DESCRIPTION
+ Remove log scale checkboc from the treemp as it doesn't work yet
+ Devel::SizeMe::Core - loads XS and sets options
+ Devel::SizeMe - loads Devel::SizeMe::Core
+ -d:SizeMe=opts?
+ Devel::SizeMe::Stream - parse raw stream
+ Devel::SizeMe::Store - db write
+ Devel::SizeMe::Data - db read / orlite?
+ Devel::SizeMe::Graph - data reading/processing for sizeme_graph
+ sizeme_store - script wrapper for Devel::SizeMe::Store
+ sizeme_graph - Mojolicious app wrapper using Devel::SizeMe::Graph
+ tests!
+ Support multiple runs to same sizeme_store process, generating separate files
+ Name runs to allow total_size (for example) of multiple data structures
-This module figures out the real size of Perl variables in bytes, as
-accurately as possible.
+ two cases where PERL_SUBVERSION is checked with a plain || (marked XXX)
-=head1 Build and Install
+ Add addr to leaf to enable visualization of memory layout
-To build and install this module, you need:
-
- Perl
- a working C or C++ compiler
- a make (or namke on Windows) utility
-
-Follow these steps:
-
-On Linux, Cygwin, or Unix:
-
- perl Makefile.PL
- make
- make test
- sudo make install
-
-On Windows:
-
- perl Makefile.PL
- nmake
- nmake test
- nmake install
-
-=head1 BUGREPORTS
-
-Please report bugs to:
-
- http://rt.cpan.org/NoAuth/Bugs.html?Dist=Devel-Size
-
-=head1 COPYRIGHT
-
-Copyright (C) 2005 Dan Sugalski, Copyright (C) 2007-2008 Tels
-
-This module is free software; you can redistribute it and/or modify it
-under the same terms as Perl v5.8.8.
-
-=cut
+ Add token for ptr to node already seen (identified by addr I presume)
+ so we can move from a Tree to a DAG and see alternative name paths
+ and reference loops