common_lib.base_packages: Add parallel bzip2 support to package manager
[autotest-zwu.git] / tko / draw_graphs
blobc9f36c748906ed4ca5a7737c7f4513543e3a4180
1 #!/usr/bin/perl
2 #
3 # Copyright Martin J. Bligh (mbligh@mbligh.org), 2006
5 $bin = `realpath $0 | xargs dirname`; chomp $bin;
6 require "$bin/abat_parse.pm";
8 $plotgraph = "$bin/plotgraph";
10 $perfdir = shift(@ARGV);
11 die unless (-d $perfdir);
13 opendir PERFDIR, $perfdir;
14 my @data_files = grep /^plotdata\.[\w-]+\.[\w-]+$/, readdir PERFDIR;
15 closedir PERFDIR;
16 chdir ($perfdir);
18 %axis_labels = ( 'kernbench' => 'Elapsed time (seconds)',
19 'dbench' => 'Throughput (MB/s)',
20 'tbench' => 'Throughput (MB/s)',
21 'reaim' => 'Max Jobs per Minute',
24 %plot_cols = ( 'kernbench' => '1:4:8',
25 'dbench' => '1:4:5',
26 'tbench' => '1:4:5',
27 'reaim' => '1:4:5',
30 foreach $data_file (@data_files) {
31 $data_file =~ /^plotdata\.([\w-]+)\.([\w-]+)$/;
32 ($test, $machine) = ($1, $2);
33 print " === Analysing data file: $data_file $test $machine\n";
34 push @machines, $machine;
35 open DATAFILE, $data_file || die "Cannot open $data_file";
36 while ($data = <DATAFILE>) {
37 print "X " . $data;
38 chomp $data;
39 $data =~ s/^\d+\s+//; # get rid of count
40 @data = split (/ /, $data);
41 $version = $data[0];
42 print "$test $version = $data\n";
43 $results{$test}{$machine}{$version} = $data;
44 push @versions, $version;
48 @machines = list_uniq (@machines);
49 @versions = sort version list_uniq (@versions);
51 @relevant = relevant_versions(@versions);
53 foreach $machine (@machines) {
54 foreach $test (keys(%axis_labels)) {
55 graph_plot($machine, "${test}.full.${machine}",
56 $test, @versions);
57 graph_plot($machine, "${test}.${machine}",
58 $test, @relevant);
62 sub graph_plot
64 my ($machine, $filename, $test, @plot_versions) = @_;
65 my $count = 0;
67 print " ----- test: $test machine: $machine $#plot_versions\n";
68 open (DATA, "> $filename") || die "Cannot open data file $filename";
69 foreach $version (@plot_versions) {
70 my $results = $results{$test}{$machine}{$version};
71 next unless ($results =~ /\S/);
72 $count++;
73 print "$count $version $results\n";
74 print DATA "$count $results\n";
76 close (DATA);
77 print " ----- \n";
78 print `$plotgraph $filename '$axis_labels{$test}' '$plot_cols{$test}'`;