|
From: <sv...@va...> - 2007-10-17 06:01:21
|
Author: njn
Date: 2007-10-17 07:01:21 +0100 (Wed, 17 Oct 2007)
New Revision: 7013
Log:
Add --peak-inaccuracy option. Shaves about 6s off konqueror startup, now
down to 21s (user). Added a test for it, too.
Added:
branches/MASSIF2/massif/tests/peak2.post.exp
branches/MASSIF2/massif/tests/peak2.stderr.exp
branches/MASSIF2/massif/tests/peak2.vgtest
Modified:
branches/MASSIF2/massif/ms_main.c
branches/MASSIF2/massif/tests/Makefile.am
branches/MASSIF2/massif/tests/peak.c
branches/MASSIF2/massif/tests/peak.post.exp
branches/MASSIF2/massif/tests/peak.vgtest
Modified: branches/MASSIF2/massif/ms_main.c
===================================================================
--- branches/MASSIF2/massif/ms_main.c 2007-10-17 05:10:26 UTC (rev 7012)
+++ branches/MASSIF2/massif/ms_main.c 2007-10-17 06:01:21 UTC (rev 7013)
@@ -95,6 +95,13 @@
// many-xpts 0.10s ma: 2.2s (22.1x, -----)
// konqueror 37.7s real 0:29.5s user
//
+// By default, only snapshot a peak if it's 1% larger than the previous peak,
+// rather than snapshotting every peak. Greatly reduces the number of peak
+// snapshots taken for larger programs like konqueror.
+// heap 0.53s ma:12.4s (23.5x, -----)
+// tinycc 0.46s ma: 4.9s (10.7x, -----)
+// many-xpts 0.08s ma: 2.0s (25.0x, -----)
+// konqueror 29.6s real 0:21.0s user
//
// Todo:
// - for regtests, need to filter out code addresses in *.post.* files
@@ -400,14 +407,15 @@
}
}
-static Bool clo_heap = True;
-static UInt clo_heap_admin = 8;
-static Bool clo_stacks = False;
-static UInt clo_depth = 8; // XXX: too low?
-static UInt clo_threshold = 100; // 100 == 1%
-static UInt clo_time_unit = TimeMS;
-static UInt clo_detailed_freq = 10;
-static UInt clo_max_snapshots = 100;
+static Bool clo_heap = True;
+static UInt clo_heap_admin = 8;
+static Bool clo_stacks = False;
+static UInt clo_depth = 8; // XXX: too low?
+static UInt clo_threshold = 100; // 100 == 1%
+static UInt clo_peak_inaccuracy = 100; // 100 == 1%
+static UInt clo_time_unit = TimeMS;
+static UInt clo_detailed_freq = 10;
+static UInt clo_max_snapshots = 100;
static XArray* args_for_massif;
@@ -425,6 +433,10 @@
// XXX: use a fractional number, so no division by 100
else VG_NUM_CLO(arg, "--threshold", clo_threshold)
+
+ // XXX: use a fractional number, so no division by 100
+ else VG_NUM_CLO(arg, "--peak-inaccuracy", clo_peak_inaccuracy)
+
else VG_NUM_CLO(arg, "--detailed-freq", clo_detailed_freq)
else VG_NUM_CLO(arg, "--max-snapshots", clo_max_snapshots)
@@ -454,6 +466,8 @@
" --threshold=<n> significance threshold, in 100ths of a percent\n"
" (eg. <n>=100 shows nodes covering >= 1%% of\n"
" total size, <n>=0 shows all nodes) [100]\n"
+" --peak-inaccuracy=<n> closeness of recorded peak to true peak,\n"
+" in 100ths of a percent\n"
" --time-unit=ms|B time unit, milliseconds or bytes\n"
" alloc'd/dealloc'd on the heap [ms]\n"
" --detailed-freq=<N> every Nth snapshot should be detailed [10]\n"
@@ -1326,11 +1340,12 @@
// Because we're about to do a deallocation, we're coming down from a
// local peak. If it is (a) actually a global peak, and (b) a certain
// amount bigger than the previous peak, then we take a peak snapshot.
- //
- // XXX: make the percentage configurable
+ // By not taking a snapshot for every peak, we save a lot of effort --
+ // because many peaks remain peak only for a short time.
SizeT total_szB = heap_szB + clo_heap_admin*n_heap_blocks + stacks_szB;
- double excess_over_previous_peak = 1.00;
- if (total_szB <= peak_snapshot_total_szB * excess_over_previous_peak) {
+ SizeT excess_szB_for_new_peak =
+ (((ULong)peak_snapshot_total_szB) * clo_peak_inaccuracy) / 10000ULL;
+ if (total_szB <= peak_snapshot_total_szB + excess_szB_for_new_peak) {
return;
}
is_detailed = True;
Modified: branches/MASSIF2/massif/tests/Makefile.am
===================================================================
--- branches/MASSIF2/massif/tests/Makefile.am 2007-10-17 05:10:26 UTC (rev 7012)
+++ branches/MASSIF2/massif/tests/Makefile.am 2007-10-17 06:01:21 UTC (rev 7013)
@@ -24,6 +24,7 @@
one.post.exp one.stderr.exp one.vgtest \
params.post.exp params.stderr.exp params.vgtest \
peak.post.exp peak.stderr.exp peak.vgtest \
+ peak2.post.exp peak2.stderr.exp peak2.vgtest \
realloc.post.exp realloc.stderr.exp realloc.vgtest \
thresholds_0_0.post.exp thresholds_0_0.stderr.exp thresholds_0_0.vgtest \
thresholds_0_10.post.exp thresholds_0_10.stderr.exp thresholds_0_10.vgtest \
Modified: branches/MASSIF2/massif/tests/peak.c
===================================================================
--- branches/MASSIF2/massif/tests/peak.c 2007-10-17 05:10:26 UTC (rev 7012)
+++ branches/MASSIF2/massif/tests/peak.c 2007-10-17 06:01:21 UTC (rev 7013)
@@ -5,9 +5,9 @@
int i;
for (i = 0; i < 20; i++) {
int* p;
- p = malloc(100);
- p = malloc(100);
- free(p);
+ p = malloc(100); // With --peak-inaccuracy=1000, the first 10 of
+ p = malloc(1); // 'free' calls result in peaks, but after that,
+ free(p); // only every second one does.
}
return 0;
}
Modified: branches/MASSIF2/massif/tests/peak.post.exp
===================================================================
--- branches/MASSIF2/massif/tests/peak.post.exp 2007-10-17 05:10:26 UTC (rev 7012)
+++ branches/MASSIF2/massif/tests/peak.post.exp 2007-10-17 06:01:21 UTC (rev 7013)
@@ -1,33 +1,33 @@
--------------------------------------------------------------------------------
Command: ./peak
-Massif arguments: --stacks=no --time-unit=B
+Massif arguments: --stacks=no --time-unit=B --peak-inaccuracy=0
ms_print arguments: massif.out
--------------------------------------------------------------------------------
KB
-2.215^ #
- | @ :#:
- | @ : @::#:
- | @ :@:: @::#:
- | @ :@ ::@:: @::#:
- | @ :@::@ ::@:: @::#:
- | @ :@: :@::@ ::@:: @::#:
- | @ : @::@: :@::@ ::@:: @::#:
- | @ :@:: @::@: :@::@ ::@:: @::#:
- | @ :@ ::@:: @::@: :@::@ ::@:: @::#:
- | . .@. :@::@ ::@:: @::@: :@::@ ::@:: @::#:
- | . . @.:@: :@::@ ::@:: @::@: :@::@ ::@:: @::#:
- | . .@.: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::#:
- | . .@ .:@:: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::#:
- | . .@.:@ ::@:: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::#:
- | . .@. :@::@ ::@:: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::#:
- | . . @.:@: :@::@ ::@:: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::#:
- | . .@.: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::#:
- | . .@ .:@:: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::#:
- | .@.:@ ::@:: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::@: :@::@ ::@:: @::#:
- 0 +--@--@---@---@--@---@--@---@---@--@---@--@---@---@--@---@--@---@---@--#>KB
- 0 6.328
+2.118^ #
+ | .@ #
+ | @ :@ #
+ | @. @ :@ #
+ | @ @: @ :@ #
+ | @ @ @: @ :@ #
+ | .@ @ @ @: @ :@ #
+ | @ :@ @ @ @: @ :@ #
+ | @. @ :@ @ @ @: @ :@ #
+ | @ @: @ :@ @ @ @: @ :@ #
+ | @ @ @: @ :@ @ @ @: @ :@ #
+ | .@ @ @ @: @ :@ @ @ @: @ :@ #
+ | @ :@ @ @ @: @ :@ @ @ @: @ :@ #
+ | @. @ :@ @ @ @: @ :@ @ @ @: @ :@ #
+ | @ @: @ :@ @ @ @: @ :@ @ @ @: @ :@ #
+ | @ @ @: @ :@ @ @ @: @ :@ @ @ @: @ :@ #
+ | .@ @ @ @: @ :@ @ @ @: @ :@ @ @ @: @ :@ #
+ | @ :@ @ @ @: @ :@ @ @ @: @ :@ @ @ @: @ :@ #
+ | @. @ :@ @ @ @: @ :@ @ @ @: @ :@ @ @ @: @ :@ #
+ | @ @: @ :@ @ @ @: @ :@ @ @ @: @ :@ @ @ @: @ :@ #
+ 0 +---@--@---@---@--@---@--@---@---@--@---@--@---@---@--@---@--@---@---@--#KB
+ 0 2.461
Number of snapshots: 81
Detailed snapshots: [3, 7, 11, 15, 19, 23, 27, 31, 35, 39, 43, 47, 51, 55, 59, 63, 67, 71, 75, 79 (peak)]
@@ -36,242 +36,242 @@
--------------------------------------------------------------------------------
0 0 0 0 0 0
1 108 108 100 8 0
- 2 216 216 200 16 0
- 3 216 216 200 16 0
-92.59% (200B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->46.30% (100B) 0x80483DE: main (peak.c:8)
+ 2 117 117 101 16 0
+ 3 117 117 101 16 0
+86.32% (101B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->85.47% (100B) 0x80483DE: main (peak.c:8)
|
-->46.30% (100B) 0x80483EE: main (peak.c:9)
-
+->00.85% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 4 324 108 100 8 0
- 5 432 216 200 16 0
- 6 540 324 300 24 0
- 7 540 324 300 24 0
-92.59% (300B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->61.73% (200B) 0x80483DE: main (peak.c:8)
+ 4 126 108 100 8 0
+ 5 234 216 200 16 0
+ 6 243 225 201 24 0
+ 7 243 225 201 24 0
+89.33% (201B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->88.89% (200B) 0x80483DE: main (peak.c:8)
|
-->30.86% (100B) 0x80483EE: main (peak.c:9)
-
+->00.44% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 8 648 216 200 16 0
- 9 756 324 300 24 0
- 10 864 432 400 32 0
- 11 864 432 400 32 0
-92.59% (400B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->69.44% (300B) 0x80483DE: main (peak.c:8)
+ 8 252 216 200 16 0
+ 9 360 324 300 24 0
+ 10 369 333 301 32 0
+ 11 369 333 301 32 0
+90.39% (301B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->90.09% (300B) 0x80483DE: main (peak.c:8)
|
-->23.15% (100B) 0x80483EE: main (peak.c:9)
-
+->00.30% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 12 972 324 300 24 0
- 13 1,080 432 400 32 0
- 14 1,188 540 500 40 0
- 15 1,188 540 500 40 0
-92.59% (500B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->74.07% (400B) 0x80483DE: main (peak.c:8)
+ 12 378 324 300 24 0
+ 13 486 432 400 32 0
+ 14 495 441 401 40 0
+ 15 495 441 401 40 0
+90.93% (401B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->90.70% (400B) 0x80483DE: main (peak.c:8)
|
-->18.52% (100B) 0x80483EE: main (peak.c:9)
-
+->00.23% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 16 1,296 432 400 32 0
- 17 1,404 540 500 40 0
- 18 1,512 648 600 48 0
- 19 1,512 648 600 48 0
-92.59% (600B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->77.16% (500B) 0x80483DE: main (peak.c:8)
+ 16 504 432 400 32 0
+ 17 612 540 500 40 0
+ 18 621 549 501 48 0
+ 19 621 549 501 48 0
+91.26% (501B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.07% (500B) 0x80483DE: main (peak.c:8)
|
-->15.43% (100B) 0x80483EE: main (peak.c:9)
-
+->00.18% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 20 1,620 540 500 40 0
- 21 1,728 648 600 48 0
- 22 1,836 756 700 56 0
- 23 1,836 756 700 56 0
-92.59% (700B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->79.37% (600B) 0x80483DE: main (peak.c:8)
+ 20 630 540 500 40 0
+ 21 738 648 600 48 0
+ 22 747 657 601 56 0
+ 23 747 657 601 56 0
+91.48% (601B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.32% (600B) 0x80483DE: main (peak.c:8)
|
-->13.23% (100B) 0x80483EE: main (peak.c:9)
-
+->00.15% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 24 1,944 648 600 48 0
- 25 2,052 756 700 56 0
- 26 2,160 864 800 64 0
- 27 2,160 864 800 64 0
-92.59% (800B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->81.02% (700B) 0x80483DE: main (peak.c:8)
+ 24 756 648 600 48 0
+ 25 864 756 700 56 0
+ 26 873 765 701 64 0
+ 27 873 765 701 64 0
+91.63% (701B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.50% (700B) 0x80483DE: main (peak.c:8)
|
-->11.57% (100B) 0x80483EE: main (peak.c:9)
-
+->00.13% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 28 2,268 756 700 56 0
- 29 2,376 864 800 64 0
- 30 2,484 972 900 72 0
- 31 2,484 972 900 72 0
-92.59% (900B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->82.30% (800B) 0x80483DE: main (peak.c:8)
+ 28 882 756 700 56 0
+ 29 990 864 800 64 0
+ 30 999 873 801 72 0
+ 31 999 873 801 72 0
+91.75% (801B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.64% (800B) 0x80483DE: main (peak.c:8)
|
-->10.29% (100B) 0x80483EE: main (peak.c:9)
-
+->00.11% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 32 2,592 864 800 64 0
- 33 2,700 972 900 72 0
- 34 2,808 1,080 1,000 80 0
- 35 2,808 1,080 1,000 80 0
-92.59% (1000B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->83.33% (900B) 0x80483DE: main (peak.c:8)
+ 32 1,008 864 800 64 0
+ 33 1,116 972 900 72 0
+ 34 1,125 981 901 80 0
+ 35 1,125 981 901 80 0
+91.85% (901B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.74% (900B) 0x80483DE: main (peak.c:8)
|
-->09.26% (100B) 0x80483EE: main (peak.c:9)
-
+->00.10% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 36 2,916 972 900 72 0
- 37 3,024 1,080 1,000 80 0
- 38 3,132 1,188 1,100 88 0
- 39 3,132 1,188 1,100 88 0
-92.59% (1100B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->84.18% (1000B) 0x80483DE: main (peak.c:8)
+ 36 1,134 972 900 72 0
+ 37 1,242 1,080 1,000 80 0
+ 38 1,251 1,089 1,001 88 0
+ 39 1,251 1,089 1,001 88 0
+91.92% (1001B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.83% (1000B) 0x80483DE: main (peak.c:8)
|
-->08.42% (100B) 0x80483EE: main (peak.c:9)
-
+->00.09% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 40 3,240 1,080 1,000 80 0
- 41 3,348 1,188 1,100 88 0
- 42 3,456 1,296 1,200 96 0
- 43 3,456 1,296 1,200 96 0
-92.59% (1200B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->84.88% (1100B) 0x80483DE: main (peak.c:8)
+ 40 1,260 1,080 1,000 80 0
+ 41 1,368 1,188 1,100 88 0
+ 42 1,377 1,197 1,101 96 0
+ 43 1,377 1,197 1,101 96 0
+91.98% (1101B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.90% (1100B) 0x80483DE: main (peak.c:8)
|
-->07.72% (100B) 0x80483EE: main (peak.c:9)
-
+->00.08% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 44 3,564 1,188 1,100 88 0
- 45 3,672 1,296 1,200 96 0
- 46 3,780 1,404 1,300 104 0
- 47 3,780 1,404 1,300 104 0
-92.59% (1300B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->85.47% (1200B) 0x80483DE: main (peak.c:8)
+ 44 1,386 1,188 1,100 88 0
+ 45 1,494 1,296 1,200 96 0
+ 46 1,503 1,305 1,201 104 0
+ 47 1,503 1,305 1,201 104 0
+92.03% (1201B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.95% (1200B) 0x80483DE: main (peak.c:8)
|
-->07.12% (100B) 0x80483EE: main (peak.c:9)
-
+->00.08% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 48 3,888 1,296 1,200 96 0
- 49 3,996 1,404 1,300 104 0
- 50 4,104 1,512 1,400 112 0
- 51 4,104 1,512 1,400 112 0
-92.59% (1400B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->85.98% (1300B) 0x80483DE: main (peak.c:8)
+ 48 1,512 1,296 1,200 96 0
+ 49 1,620 1,404 1,300 104 0
+ 50 1,629 1,413 1,301 112 0
+ 51 1,629 1,413 1,301 112 0
+92.07% (1301B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.00% (1300B) 0x80483DE: main (peak.c:8)
|
-->06.61% (100B) 0x80483EE: main (peak.c:9)
-
+->00.07% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 52 4,212 1,404 1,300 104 0
- 53 4,320 1,512 1,400 112 0
- 54 4,428 1,620 1,500 120 0
- 55 4,428 1,620 1,500 120 0
-92.59% (1500B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->86.42% (1400B) 0x80483DE: main (peak.c:8)
+ 52 1,638 1,404 1,300 104 0
+ 53 1,746 1,512 1,400 112 0
+ 54 1,755 1,521 1,401 120 0
+ 55 1,755 1,521 1,401 120 0
+92.11% (1401B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.04% (1400B) 0x80483DE: main (peak.c:8)
|
-->06.17% (100B) 0x80483EE: main (peak.c:9)
-
+->00.07% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 56 4,536 1,512 1,400 112 0
- 57 4,644 1,620 1,500 120 0
- 58 4,752 1,728 1,600 128 0
- 59 4,752 1,728 1,600 128 0
-92.59% (1600B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->86.81% (1500B) 0x80483DE: main (peak.c:8)
+ 56 1,764 1,512 1,400 112 0
+ 57 1,872 1,620 1,500 120 0
+ 58 1,881 1,629 1,501 128 0
+ 59 1,881 1,629 1,501 128 0
+92.14% (1501B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.08% (1500B) 0x80483DE: main (peak.c:8)
|
-->05.79% (100B) 0x80483EE: main (peak.c:9)
-
+->00.06% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 60 4,860 1,620 1,500 120 0
- 61 4,968 1,728 1,600 128 0
- 62 5,076 1,836 1,700 136 0
- 63 5,076 1,836 1,700 136 0
-92.59% (1700B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->87.15% (1600B) 0x80483DE: main (peak.c:8)
+ 60 1,890 1,620 1,500 120 0
+ 61 1,998 1,728 1,600 128 0
+ 62 2,007 1,737 1,601 136 0
+ 63 2,007 1,737 1,601 136 0
+92.17% (1601B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.11% (1600B) 0x80483DE: main (peak.c:8)
|
-->05.45% (100B) 0x80483EE: main (peak.c:9)
-
+->00.06% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 64 5,184 1,728 1,600 128 0
- 65 5,292 1,836 1,700 136 0
- 66 5,400 1,944 1,800 144 0
- 67 5,400 1,944 1,800 144 0
-92.59% (1800B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->87.45% (1700B) 0x80483DE: main (peak.c:8)
+ 64 2,016 1,728 1,600 128 0
+ 65 2,124 1,836 1,700 136 0
+ 66 2,133 1,845 1,701 144 0
+ 67 2,133 1,845 1,701 144 0
+92.20% (1701B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.14% (1700B) 0x80483DE: main (peak.c:8)
|
-->05.14% (100B) 0x80483EE: main (peak.c:9)
-
+->00.05% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 68 5,508 1,836 1,700 136 0
- 69 5,616 1,944 1,800 144 0
- 70 5,724 2,052 1,900 152 0
- 71 5,724 2,052 1,900 152 0
-92.59% (1900B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->87.72% (1800B) 0x80483DE: main (peak.c:8)
+ 68 2,142 1,836 1,700 136 0
+ 69 2,250 1,944 1,800 144 0
+ 70 2,259 1,953 1,801 152 0
+ 71 2,259 1,953 1,801 152 0
+92.22% (1801B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.17% (1800B) 0x80483DE: main (peak.c:8)
|
-->04.87% (100B) 0x80483EE: main (peak.c:9)
-
+->00.05% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 72 5,832 1,944 1,800 144 0
- 73 5,940 2,052 1,900 152 0
- 74 6,048 2,160 2,000 160 0
- 75 6,048 2,160 2,000 160 0
-92.59% (2000B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->87.96% (1900B) 0x80483DE: main (peak.c:8)
+ 72 2,268 1,944 1,800 144 0
+ 73 2,376 2,052 1,900 152 0
+ 74 2,385 2,061 1,901 160 0
+ 75 2,385 2,061 1,901 160 0
+92.24% (1901B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.19% (1900B) 0x80483DE: main (peak.c:8)
|
-->04.63% (100B) 0x80483EE: main (peak.c:9)
-
+->00.05% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 76 6,156 2,052 1,900 152 0
- 77 6,264 2,160 2,000 160 0
- 78 6,372 2,268 2,100 168 0
- 79 6,372 2,268 2,100 168 0
-92.59% (2100B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->88.18% (2000B) 0x80483DE: main (peak.c:8)
+ 76 2,394 2,052 1,900 152 0
+ 77 2,502 2,160 2,000 160 0
+ 78 2,511 2,169 2,001 168 0
+ 79 2,511 2,169 2,001 168 0
+92.25% (2001B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.21% (2000B) 0x80483DE: main (peak.c:8)
|
-->04.41% (100B) 0x80483EE: main (peak.c:9)
-
+->00.05% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 80 6,480 2,160 2,000 160 0
+ 80 2,520 2,160 2,000 160 0
Modified: branches/MASSIF2/massif/tests/peak.vgtest
===================================================================
--- branches/MASSIF2/massif/tests/peak.vgtest 2007-10-17 05:10:26 UTC (rev 7012)
+++ branches/MASSIF2/massif/tests/peak.vgtest 2007-10-17 06:01:21 UTC (rev 7013)
@@ -1,4 +1,4 @@
prog: peak
-vgopts: --stacks=no --time-unit=B
+vgopts: --stacks=no --time-unit=B --peak-inaccuracy=0
post: perl ../../massif/ms_print massif.out
cleanup: rm massif.out
Added: branches/MASSIF2/massif/tests/peak2.post.exp
===================================================================
--- branches/MASSIF2/massif/tests/peak2.post.exp (rev 0)
+++ branches/MASSIF2/massif/tests/peak2.post.exp 2007-10-17 06:01:21 UTC (rev 7013)
@@ -0,0 +1,232 @@
+--------------------------------------------------------------------------------
+Command: ./peak
+Massif arguments: --stacks=no --time-unit=B --peak-inaccuracy=1000
+ms_print arguments: massif.out
+--------------------------------------------------------------------------------
+
+
+ KB
+2.118^ #
+ | .. #
+ | @ :: #
+ | :. @ :: #
+ | @ :: @ :: #
+ | . @ :: @ :: #
+ | .@ : @ :: @ :: #
+ | . :@ : @ :: @ :: #
+ | @. : :@ : @ :: @ :: #
+ | . @: : :@ : @ :: @ :: #
+ | @ : @: : :@ : @ :: @ :: #
+ | .@ @ : @: : :@ : @ :: @ :: #
+ | @ :@ @ : @: : :@ : @ :: @ :: #
+ | @. @ :@ @ : @: : :@ : @ :: @ :: #
+ | @ @: @ :@ @ : @: : :@ : @ :: @ :: #
+ | @ @ @: @ :@ @ : @: : :@ : @ :: @ :: #
+ | .@ @ @ @: @ :@ @ : @: : :@ : @ :: @ :: #
+ | @ :@ @ @ @: @ :@ @ : @: : :@ : @ :: @ :: #
+ | @. @ :@ @ @ @: @ :@ @ : @: : :@ : @ :: @ :: #
+ | @ @: @ :@ @ @ @: @ :@ @ : @: : :@ : @ :: @ :: #
+ 0 +---@--@---@---@--@---@--@---@---@--@------@-------@------@------@------#KB
+ 0 2.461
+
+Number of snapshots: 76
+ Detailed snapshots: [3, 7, 11, 15, 19, 23, 27, 31, 35, 39, 46, 53, 60, 67, 74 (peak)]
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 0 0 0 0 0 0
+ 1 108 108 100 8 0
+ 2 117 117 101 16 0
+ 3 117 117 101 16 0
+86.32% (101B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->85.47% (100B) 0x80483DE: main (peak.c:8)
+|
+->00.85% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 4 126 108 100 8 0
+ 5 234 216 200 16 0
+ 6 243 225 201 24 0
+ 7 243 225 201 24 0
+89.33% (201B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->88.89% (200B) 0x80483DE: main (peak.c:8)
+|
+->00.44% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 8 252 216 200 16 0
+ 9 360 324 300 24 0
+ 10 369 333 301 32 0
+ 11 369 333 301 32 0
+90.39% (301B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->90.09% (300B) 0x80483DE: main (peak.c:8)
+|
+->00.30% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 12 378 324 300 24 0
+ 13 486 432 400 32 0
+ 14 495 441 401 40 0
+ 15 495 441 401 40 0
+90.93% (401B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->90.70% (400B) 0x80483DE: main (peak.c:8)
+|
+->00.23% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 16 504 432 400 32 0
+ 17 612 540 500 40 0
+ 18 621 549 501 48 0
+ 19 621 549 501 48 0
+91.26% (501B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.07% (500B) 0x80483DE: main (peak.c:8)
+|
+->00.18% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 20 630 540 500 40 0
+ 21 738 648 600 48 0
+ 22 747 657 601 56 0
+ 23 747 657 601 56 0
+91.48% (601B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.32% (600B) 0x80483DE: main (peak.c:8)
+|
+->00.15% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 24 756 648 600 48 0
+ 25 864 756 700 56 0
+ 26 873 765 701 64 0
+ 27 873 765 701 64 0
+91.63% (701B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.50% (700B) 0x80483DE: main (peak.c:8)
+|
+->00.13% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 28 882 756 700 56 0
+ 29 990 864 800 64 0
+ 30 999 873 801 72 0
+ 31 999 873 801 72 0
+91.75% (801B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.64% (800B) 0x80483DE: main (peak.c:8)
+|
+->00.11% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 32 1,008 864 800 64 0
+ 33 1,116 972 900 72 0
+ 34 1,125 981 901 80 0
+ 35 1,125 981 901 80 0
+91.85% (901B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.74% (900B) 0x80483DE: main (peak.c:8)
+|
+->00.10% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 36 1,134 972 900 72 0
+ 37 1,242 1,080 1,000 80 0
+ 38 1,251 1,089 1,001 88 0
+ 39 1,251 1,089 1,001 88 0
+91.92% (1001B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.83% (1000B) 0x80483DE: main (peak.c:8)
+|
+->00.09% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 40 1,260 1,080 1,000 80 0
+ 41 1,368 1,188 1,100 88 0
+ 42 1,377 1,197 1,101 96 0
+ 43 1,386 1,188 1,100 88 0
+ 44 1,494 1,296 1,200 96 0
+ 45 1,503 1,305 1,201 104 0
+ 46 1,503 1,305 1,201 104 0
+92.03% (1201B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->91.95% (1200B) 0x80483DE: main (peak.c:8)
+|
+->00.08% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 47 1,512 1,296 1,200 96 0
+ 48 1,620 1,404 1,300 104 0
+ 49 1,629 1,413 1,301 112 0
+ 50 1,638 1,404 1,300 104 0
+ 51 1,746 1,512 1,400 112 0
+ 52 1,755 1,521 1,401 120 0
+ 53 1,755 1,521 1,401 120 0
+92.11% (1401B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.04% (1400B) 0x80483DE: main (peak.c:8)
+|
+->00.07% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 54 1,764 1,512 1,400 112 0
+ 55 1,872 1,620 1,500 120 0
+ 56 1,881 1,629 1,501 128 0
+ 57 1,890 1,620 1,500 120 0
+ 58 1,998 1,728 1,600 128 0
+ 59 2,007 1,737 1,601 136 0
+ 60 2,007 1,737 1,601 136 0
+92.17% (1601B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.11% (1600B) 0x80483DE: main (peak.c:8)
+|
+->00.06% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 61 2,016 1,728 1,600 128 0
+ 62 2,124 1,836 1,700 136 0
+ 63 2,133 1,845 1,701 144 0
+ 64 2,142 1,836 1,700 136 0
+ 65 2,250 1,944 1,800 144 0
+ 66 2,259 1,953 1,801 152 0
+ 67 2,259 1,953 1,801 152 0
+92.22% (1801B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.17% (1800B) 0x80483DE: main (peak.c:8)
+|
+->00.05% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 68 2,268 1,944 1,800 144 0
+ 69 2,376 2,052 1,900 152 0
+ 70 2,385 2,061 1,901 160 0
+ 71 2,394 2,052 1,900 152 0
+ 72 2,502 2,160 2,000 160 0
+ 73 2,511 2,169 2,001 168 0
+ 74 2,511 2,169 2,001 168 0
+92.25% (2001B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->92.21% (2000B) 0x80483DE: main (peak.c:8)
+|
+->00.05% (1B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) admin-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 75 2,520 2,160 2,000 160 0
Added: branches/MASSIF2/massif/tests/peak2.stderr.exp
===================================================================
--- branches/MASSIF2/massif/tests/peak2.stderr.exp (rev 0)
+++ branches/MASSIF2/massif/tests/peak2.stderr.exp 2007-10-17 06:01:21 UTC (rev 7013)
@@ -0,0 +1,190 @@
+
+Command line
+ ./peak
+Startup, with flags:
+ --command-line-only=yes
+ --memcheck:leak-check=no
+ --tool=massif
+ --stacks=no
+ --time-unit=B
+ -v
+ -v
+ --peak-inaccuracy=1000
+Contents of /proc/version:
+ Linux version 2.6.15-1.1833_FC4 (bhc...@hs...) (gcc version 4.0.2 20051125 (Red Hat 4.0.2-8)) #1 Wed Mar 1 23:41:37 EST 2006
+Arch and hwcaps: X86, x86-sse1-sse2
+Page sizes: currently 4096, max supported 4096
+Valgrind library directory: /home/njn/grind/massif3/.in_place
+Massif: alloc-fns:
+Massif: 0: malloc
+Massif: 1: __builtin_new
+Massif: 2: operator new(unsigned)
+Massif: 3: operator new(unsigned long)
+Massif: 4: __builtin_vec_new
+Massif: 5: operator new[](unsigned)
+Massif: 6: operator new[](unsigned long)
+Massif: 7: calloc
+Massif: 8: realloc
+Massif: 9: memalign
+Massif: 10: operator new(unsigned, std::nothrow_t const&)
+Massif: 11: operator new[](unsigned, std::nothrow_t const&)
+Massif: 12: operator new(unsigned long, std::nothrow_t const&)
+Massif: 13: operator new[](unsigned long, std::nothrow_t const&)
+TT/TC: VG_(init_tt_tc) (startup of code management)
+TT/TC: cache: 8 sectors of 9644544 bytes each = 77156352 total
+TT/TC: table: 524168 total entries, max occupancy 419328 (80%)
+Reading syms from /lib/ld-2.3.5.so (0x23C000)
+ svma 0x000023C000, avma 0x000023C000
+summarise_context(loc_start = 0x5D): cannot summarise(why=1):
+0x66: 44(r3) u u u c-36 u u c-44 c-40 c-4 u u u u u u u u u u u
+summarise_context(loc_start = 0x66): cannot summarise(why=1):
+0x69: 44(r3) u u u c-36 u u u c-40 c-4 u u u u u u u u u u u
+summarise_context(loc_start = 0x69): cannot summarise(why=1):
+0x78: 44(r3) u u u c-36 u u u u c-4 u u u u u u u u u u u
+Reading syms from /home/njn/grind/massif3/massif/tests/peak (0x8048000)
+ svma 0x0008048000, avma 0x0008048000
+Reading syms from /home/njn/grind/massif3/massif/massif-x86-linux (0x38000000)
+ svma 0x0038000000, avma 0x0038000000
+ object doesn't have a dynamic symbol table
+Massif: startup S. 0 (t:0, hp:0, ad:0, st:0)
+TT/TC: initialise sector 0
+Reading syms from /home/njn/grind/massif3/coregrind/vgpreload_core-x86-linux.so (0x4001000)
+ svma 0x0000000000, avma 0x0004001000
+Reading syms from /home/njn/grind/massif3/massif/vgpreload_massif-x86-linux.so (0x4003000)
+ svma 0x0000000000, avma 0x0004003000
+Reading syms from /lib/libc-2.3.5.so (0x25A000)
+ svma 0x000025A000, avma 0x000025A000
+summarise_context(loc_start = 0x34): cannot summarise(why=1):
+0x4d: 0(r0) u c60 c56 c52 u c44 c40 c36 c-4 u u u u u u u u u u u
+REDIR: 0x2bf41e (malloc) redirected to 0x4003e13 (malloc)
+Massif: alloc S. 1 (t:108, hp:100, ad:8, st:0)
+Massif: alloc S. 2 (t:117, hp:101, ad:16, st:0)
+REDIR: 0x2bd5e8 (free) redirected to 0x40049a4 (free)
+Massif: de-PEAK Sp 3 (t:117, hp:101, ad:16, st:0)
+Massif: dealloc S. 4 (t:126, hp:100, ad:8, st:0)
+Massif: alloc S. 5 (t:234, hp:200, ad:16, st:0)
+Massif: alloc S. 6 (t:243, hp:201, ad:24, st:0)
+Massif: de-PEAK Sp 7 (t:243, hp:201, ad:24, st:0)
+Massif: dealloc S. 8 (t:252, hp:200, ad:16, st:0)
+Massif: alloc S. 9 (t:360, hp:300, ad:24, st:0)
+Massif: alloc S. 10 (t:369, hp:301, ad:32, st:0)
+Massif: de-PEAK Sp 11 (t:369, hp:301, ad:32, st:0)
+Massif: dealloc S. 12 (t:378, hp:300, ad:24, st:0)
+Massif: alloc S. 13 (t:486, hp:400, ad:32, st:0)
+Massif: alloc S. 14 (t:495, hp:401, ad:40, st:0)
+Massif: de-PEAK Sp 15 (t:495, hp:401, ad:40, st:0)
+Massif: dealloc S. 16 (t:504, hp:400, ad:32, st:0)
+Massif: alloc S. 17 (t:612, hp:500, ad:40, st:0)
+Massif: alloc S. 18 (t:621, hp:501, ad:48, st:0)
+Massif: de-PEAK Sp 19 (t:621, hp:501, ad:48, st:0)
+Massif: dealloc S. 20 (t:630, hp:500, ad:40, st:0)
+Massif: alloc S. 21 (t:738, hp:600, ad:48, st:0)
+Massif: alloc S. 22 (t:747, hp:601, ad:56, st:0)
+Massif: de-PEAK Sp 23 (t:747, hp:601, ad:56, st:0)
+Massif: dealloc S. 24 (t:756, hp:600, ad:48, st:0)
+Massif: alloc S. 25 (t:864, hp:700, ad:56, st:0)
+Massif: alloc S. 26 (t:873, hp:701, ad:64, st:0)
+Massif: de-PEAK Sp 27 (t:873, hp:701, ad:64, st:0)
+Massif: dealloc S. 28 (t:882, hp:700, ad:56, st:0)
+Massif: alloc S. 29 (t:990, hp:800, ad:64, st:0)
+Massif: alloc S. 30 (t:999, hp:801, ad:72, st:0)
+Massif: de-PEAK Sp 31 (t:999, hp:801, ad:72, st:0)
+Massif: dealloc S. 32 (t:1008, hp:800, ad:64, st:0)
+Massif: alloc S. 33 (t:1116, hp:900, ad:72, st:0)
+Massif: alloc S. 34 (t:1125, hp:901, ad:80, st:0)
+Massif: de-PEAK Sp 35 (t:1125, hp:901, ad:80, st:0)
+Massif: dealloc S. 36 (t:1134, hp:900, ad:72, st:0)
+Massif: alloc S. 37 (t:1242, hp:1000, ad:80, st:0)
+Massif: alloc S. 38 (t:1251, hp:1001, ad:88, st:0)
+Massif: de-PEAK Sp 39 (t:1251, hp:1001, ad:88, st:0)
+Massif: dealloc S. 40 (t:1260, hp:1000, ad:80, st:0)
+Massif: alloc S. 41 (t:1368, hp:1100, ad:88, st:0)
+Massif: alloc S. 42 (t:1377, hp:1101, ad:96, st:0)
+Massif: dealloc S. 43 (t:1386, hp:1100, ad:88, st:0)
+Massif: alloc S. 44 (t:1494, hp:1200, ad:96, st:0)
+Massif: alloc S. 45 (t:1503, hp:1201, ad:104, st:0)
+Massif: de-PEAK Sp 46 (t:1503, hp:1201, ad:104, st:0)
+Massif: dealloc S. 47 (t:1512, hp:1200, ad:96, st:0)
+Massif: alloc S. 48 (t:1620, hp:1300, ad:104, st:0)
+Massif: alloc S. 49 (t:1629, hp:1301, ad:112, st:0)
+Massif: dealloc S. 50 (t:1638, hp:1300, ad:104, st:0)
+Massif: alloc S. 51 (t:1746, hp:1400, ad:112, st:0)
+Massif: alloc S. 52 (t:1755, hp:1401, ad:120, st:0)
+Massif: de-PEAK Sp 53 (t:1755, hp:1401, ad:120, st:0)
+Massif: dealloc S. 54 (t:1764, hp:1400, ad:112, st:0)
+Massif: alloc S. 55 (t:1872, hp:1500, ad:120, st:0)
+Massif: alloc S. 56 (t:1881, hp:1501, ad:128, st:0)
+Massif: dealloc S. 57 (t:1890, hp:1500, ad:120, st:0)
+Massif: alloc S. 58 (t:1998, hp:1600, ad:128, st:0)
+Massif: alloc S. 59 (t:2007, hp:1601, ad:136, st:0)
+Massif: de-PEAK Sp 60 (t:2007, hp:1601, ad:136, st:0)
+Massif: dealloc S. 61 (t:2016, hp:1600, ad:128, st:0)
+Massif: alloc S. 62 (t:2124, hp:1700, ad:136, st:0)
+Massif: alloc S. 63 (t:2133, hp:1701, ad:144, st:0)
+Massif: dealloc S. 64 (t:2142, hp:1700, ad:136, st:0)
+Massif: alloc S. 65 (t:2250, hp:1800, ad:144, st:0)
+Massif: alloc S. 66 (t:2259, hp:1801, ad:152, st:0)
+Massif: de-PEAK Sp 67 (t:2259, hp:1801, ad:152, st:0)
+Massif: dealloc S. 68 (t:2268, hp:1800, ad:144, st:0)
+Massif: alloc S. 69 (t:2376, hp:1900, ad:152, st:0)
+Massif: alloc S. 70 (t:2385, hp:1901, ad:160, st:0)
+Massif: dealloc S. 71 (t:2394, hp:1900, ad:152, st:0)
+Massif: alloc S. 72 (t:2502, hp:2000, ad:160, st:0)
+Massif: alloc S. 73 (t:2511, hp:2001, ad:168, st:0)
+Massif: de-PEAK Sp 74 (t:2511, hp:2001, ad:168, st:0)
+Massif: dealloc S. 75 (t:2520, hp:2000, ad:160, st:0)
+Caught __NR_exit; running __libc_freeres()
+
+Massif: heap allocs: 40
+Massif: heap reallocs: 0
+Massif: heap frees: 20
+Massif: stack allocs: 0
+Massif: stack frees: 0
+Massif: XPts: 7
+Massif: top-XPts: 2 (28%)
+Massif: XPt-init-expansions: 5
+Massif: XPt-later-expansions: 0
+Massif: SXPt allocs: 77
+Massif: SXPt frees: 0
+Massif: skipped snapshots: 0
+Massif: real snapshots: 76
+Massif: detailed snapshots: 15
+Massif: peak snapshots: 15
+Massif: cullings: 0
+Massif: XCon_redos: 0
+translate: fast SP updates identified: 0 ( --%)
+translate: generic_known SP updates identified: 0 ( --%)
+translate: generic_unknown SP updates identified: 0 ( --%)
+ tt/tc: 2,987 tt lookups requiring 2,996 probes
+ tt/tc: 2,987 fast-cache updates, 2 flushes
+ transtab: new 1,489 (32,900 -> 182,505; ratio 55:10) [0 scs]
+ transtab: dumped 0 (0 -> ??)
+ transtab: discarded 0 (0 -> ??)
+scheduler: 21,885 jumps (bb entries).
+scheduler: 0/1,610 major/minor sched events.
+ sanity: 1 cheap, 1 expensive checks.
+ exectx: 30,011 lists, 0 contexts (avg 0 per list)
+ exectx: 0 searches, 0 full compares (0 per 1000)
+ exectx: 0 cmp2, 0 cmp4, 0 cmpAll
+ errormgr: 0 supplist searches, 0 comparisons during search
+ errormgr: 0 errlist searches, 0 comparisons during search
+
+------ Valgrind's internal memory use stats follow ------
+core : 1 sbs, 3 bs, 1/1 free bs, 1048576 mmap, 65552 loan
+tool : 1 sbs, 161 bs, 2/2 free bs, 1048576 mmap, 325904 loan
+symtab : 3 sbs, 199 bs, 7/7 free bs, 3145728 mmap, 1949288 loan
+client : 1 sbs, 21 bs, 1/1 free bs, 1048576 mmap, 2080 loan
+demangle: 0 sbs, 0 bs, 0/0 free bs, 0 mmap, 0 loan
+exectxt : 0 sbs, 0 bs, 0/0 free bs, 0 mmap, 0 loan
+errors : 0 sbs, 0 bs, 0/0 free bs, 0 mmap, 0 loan
+ttaux : 1 sbs, 75 bs, 13/13 free bs, 65536 mmap, 4624 loan
+------
+core : 1048576 mmap'd, 65552/ 65552 max/curr
+tool : 1048576 mmap'd, 325920/ 325904 max/curr
+symtab : 3145728 mmap'd, 2020528/ 1949288 max/curr
+client : 1048576 mmap'd, 2088/ 2080 max/curr
+demangle: 0 mmap'd, 0/ 0 max/curr
+exect...
[truncated message content] |