From 4bf593a0de27505a41480766d1923ce4948e02e4 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 26 Jan 2022 11:05:45 +0100 Subject: [PATCH] tests/memanalyze.pl: also count and show "total allocations" This is the total number of bytes allocated, increasing for new allocations and never reduced when freed. The existing "Maximum allocated" is the high water mark. Closes #8330 --- tests/memanalyze.pl | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tests/memanalyze.pl b/tests/memanalyze.pl index 714594a173..0a0d9045e8 100755 --- a/tests/memanalyze.pl +++ b/tests/memanalyze.pl @@ -6,7 +6,7 @@ # | (__| |_| | _ <| |___ # \___|\___/|_| \_\_____| # -# Copyright (C) 1998 - 2020, Daniel Stenberg, , et al. +# Copyright (C) 1998 - 2022, Daniel Stenberg, , et al. # # This software is licensed as described in the file COPYING, which # you should have received as part of this distribution. The terms @@ -56,7 +56,8 @@ while(1) { } } -my $maxmem; +my $memsum; # the total number of memory allocated over the lifetime +my $maxmem; # the high water mark sub newtotal { my ($newtot)=@_; @@ -150,6 +151,7 @@ while() { $sizeataddr{$addr}=$size; $totalmem += $size; + $memsum += $size; if($trace) { print "MALLOC: malloc($size) at $source:$linenum", @@ -175,6 +177,7 @@ while() { $sizeataddr{$addr}=$size; $totalmem += $size; + $memsum += $size; if($trace) { print "CALLOC: calloc($arg1,$arg2) at $source:$linenum", @@ -196,6 +199,7 @@ while() { $sizeataddr{$oldaddr}=0; $totalmem += $newsize; + $memsum += $size; $sizeataddr{$newaddr}=$newsize; if($trace) { @@ -218,6 +222,7 @@ while() { $sizeataddr{$addr}=$size; $totalmem += $size; + $memsum += $size; if($trace) { printf("STRDUP: $size bytes at %s, makes totally: %d bytes\n", @@ -237,6 +242,7 @@ while() { $sizeataddr{$addr}=$size; $totalmem += $size; + $memsum += $size; if($trace) { printf("WCSDUP: $size bytes at %s, makes totally: %d bytes\n", @@ -422,4 +428,5 @@ if($verbose) { "Operations: ".($mallocs + $callocs + $reallocs + $strdups + $wcsdups + $sends + $recvs + $sockets)."\n"; print "Maximum allocated: $maxmem\n"; + print "Total allocated: $memsum\n"; } -- 2.47.3