diff --git a/lib/Slic3r/Print.pm b/lib/Slic3r/Print.pm index 8676cd2197..1aad0ae390 100644 --- a/lib/Slic3r/Print.pm +++ b/lib/Slic3r/Print.pm @@ -426,6 +426,18 @@ sub export_gcode { $self->make_skirt; $self->make_brim; # must come after make_skirt + # time to make some statistics + if (0) { + eval "use Devel::Size"; + print "MEMORY USAGE:\n"; + printf " meshes = %.1fMb\n", List::Util::sum(map Devel::Size::total_size($_->meshes), @{$self->objects})/1024/1024; + printf " layer slices = %.1fMb\n", List::Util::sum(map Devel::Size::total_size($_->slices), map @{$_->layers}, @{$self->objects})/1024/1024; + printf " region slices = %.1fMb\n", List::Util::sum(map Devel::Size::total_size($_->slices), map @{$_->regions}, map @{$_->layers}, @{$self->objects})/1024/1024; + printf " perimeters = %.1fMb\n", List::Util::sum(map Devel::Size::total_size($_->perimeters), map @{$_->regions}, map @{$_->layers}, @{$self->objects})/1024/1024; + printf " fills = %.1fMb\n", List::Util::sum(map Devel::Size::total_size($_->fills), map @{$_->regions}, map @{$_->layers}, @{$self->objects})/1024/1024; + printf " print object = %.1fMb\n", Devel::Size::total_size($self)/1024/1024; + } + # output everything to a G-code file my $output_file = $self->expanded_output_filepath($params{output_file}); $status_cb->(90, "Exporting G-code" . ($output_file ? " to $output_file" : ""));