Statistics
| Branch: | Revision:

root / synthbench / bonnie++ / .svn / text-base / bon_csv2txt.in.svn-base @ 0:839f52ef7657

History | View | Annotate | Download (2.6 kB)

1
#!/usr/bin/perl
2

    
3
{
4
  my $line;
5
  $iocount = 0;
6
  $filecount = 0;
7
  while($line = <STDIN>)
8
  {
9
    while($line =~ /^name,/)
10
    {
11
      $line = <STDIN>;
12
    }
13
    process($line);
14
  }
15
  printIOData();
16

    
17
  printFileData();
18
}
19

    
20
sub IOHeader
21
{
22
  my $version = '@version@';
23
print "Version  $version      ------Sequential Output------ --Sequential Input- --Random-\n";
24
print "                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--\n";
25
print "Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP\n";
26
}
27

    
28
sub FileHeader
29
{
30
print "                    ------Sequential Create------ --------Random Create--------\n";
31
print "                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--\n";
32
print "files:max:min        /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP\n";
33
}
34

    
35
sub process
36
{
37
  my($line) = @_;
38

    
39
  chop($line);
40
  my $name = $line;
41
  $name =~ s/,.*$//;
42
  $line =~ s/$name,//;
43

    
44
# $ioline contains the file-IO data, IE we strip off the data on file creation
45
  my $ioline = $line;
46
  $ioline =~ s/,[:0-9\-\+.\/]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+$//;
47
  $ioline =~ s/,,,,,,,,,,,,,$//;
48
  if(join('', split(/,/,$ioline)) != "")
49
  {
50
    $io[$iocount] = $name . "," . $ioline;
51
    $iocount++;
52
  }
53
# $fileline contains the file creation data - everything but $ioline
54
  my $fileline = substr($line, length($ioline));
55
  if(join('', split(/,/,$fileline)) != "")
56
  {
57
    $file[$filecount] = $name . $fileline;
58
    $filecount++;
59
  }
60
}
61

    
62
sub printFileData
63
{
64
  if($filecount < 1){ return; }
65
  FileHeader();
66
  for($i = 0; $i < $filecount; $i++)
67
  {
68
    @arr = split(/,/,$file[$i]);
69
    my $size = $arr[1];
70
    $size =~ s/:0:0:/\//;
71
    my $desc = $arr[0] . "                   ";
72
    $desc = substr($desc, 0, 18 - length($size) );
73
    $desc .= " " . $size;
74
    printf(STDOUT "%19s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s\n"
75
         , $desc, $arr[2], $arr[3], $arr[4], $arr[5], $arr[6], $arr[7]
76
         , $arr[8], $arr[9], $arr[10], $arr[11], $arr[12], $arr[13]
77
         , $arr[14], $arr[15]);
78
  }
79
}
80

    
81
sub printIOData
82
{
83
  if($iocount < 1){ return; }
84
  IOHeader();
85
  for($i = 0; $i < $iocount; $i++)
86
  {
87
    @arr = split(/,/,$io[$i]);
88
    my $size = $arr[1];
89
    my $desc = $arr[0] . "                   ";
90
    $desc = substr($desc, 0, 18 - length($size) );
91
    $desc .= " " . $size;
92
    printf(STDOUT "%19s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s\n"
93
         , $desc, $arr[2], $arr[3], $arr[4], $arr[5], $arr[6], $arr[7]
94
         , $arr[8], $arr[9], $arr[10], $arr[11], $arr[12], $arr[13]
95
         , $arr[14], $arr[15]);
96
  }
97
}
98