author | Walther Neuper <wneuper@ist.tugraz.at> |
Tue, 07 Feb 2017 08:57:42 +0100 | |
changeset 59316 | 3a60188d9cc3 |
parent 59180 | 85ec71012df8 |
permissions | -rwxr-xr-x |
1 #!/usr/bin/env perl
2 #
3 # Author: Makarius
4 #
5 # DESCRIPTION: Simple report generator for Poly/ML profiling output.
7 use strict;
9 my %log = ();
10 my @output = ();
12 while (<ARGV>) {
13 if (m,^([ 0-9]{10}) (\S+$|GARBAGE COLLECTION.*$),) {
14 my $count = $1;
15 my $fun = $2;
16 $fun =~ s,-?\(\d+\).*$,,g;
17 $fun =~ s,/\d+$,,g;
18 if ($count =~ m,^\s*(\d)+$,) {
19 if (defined($log{$fun})) {
20 $log{$fun} += $count;
21 } else {
22 $log{$fun} = $count;
23 }
24 }
25 }
26 }
28 foreach my $fun (keys %log) {
29 push @output, (sprintf "%14u %s\n", $log{$fun}, $fun);
30 }
32 print (sort @output);