Statistics
| Branch: | Revision:

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

History | View | Annotate | Download (2.6 kB)

1 0:839f52ef7657 louridas
#!/usr/bin/perl
2 0:839f52ef7657 louridas
3 0:839f52ef7657 louridas
{
4 0:839f52ef7657 louridas
  my $line;
5 0:839f52ef7657 louridas
  $iocount = 0;
6 0:839f52ef7657 louridas
  $filecount = 0;
7 0:839f52ef7657 louridas
  while($line = <STDIN>)
8 0:839f52ef7657 louridas
  {
9 0:839f52ef7657 louridas
    while($line =~ /^name,/)
10 0:839f52ef7657 louridas
    {
11 0:839f52ef7657 louridas
      $line = <STDIN>;
12 0:839f52ef7657 louridas
    }
13 0:839f52ef7657 louridas
    process($line);
14 0:839f52ef7657 louridas
  }
15 0:839f52ef7657 louridas
  printIOData();
16 0:839f52ef7657 louridas
17 0:839f52ef7657 louridas
  printFileData();
18 0:839f52ef7657 louridas
}
19 0:839f52ef7657 louridas
20 0:839f52ef7657 louridas
sub IOHeader
21 0:839f52ef7657 louridas
{
22 0:839f52ef7657 louridas
  my $version = '1.03d';
23 0:839f52ef7657 louridas
print "Version  $version      ------Sequential Output------ --Sequential Input- --Random-\n";
24 0:839f52ef7657 louridas
print "                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--\n";
25 0:839f52ef7657 louridas
print "Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP\n";
26 0:839f52ef7657 louridas
}
27 0:839f52ef7657 louridas
28 0:839f52ef7657 louridas
sub FileHeader
29 0:839f52ef7657 louridas
{
30 0:839f52ef7657 louridas
print "                    ------Sequential Create------ --------Random Create--------\n";
31 0:839f52ef7657 louridas
print "                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--\n";
32 0:839f52ef7657 louridas
print "files:max:min        /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP\n";
33 0:839f52ef7657 louridas
}
34 0:839f52ef7657 louridas
35 0:839f52ef7657 louridas
sub process
36 0:839f52ef7657 louridas
{
37 0:839f52ef7657 louridas
  my($line) = @_;
38 0:839f52ef7657 louridas
39 0:839f52ef7657 louridas
  chop($line);
40 0:839f52ef7657 louridas
  my $name = $line;
41 0:839f52ef7657 louridas
  $name =~ s/,.*$//;
42 0:839f52ef7657 louridas
  $line =~ s/$name,//;
43 0:839f52ef7657 louridas
44 0:839f52ef7657 louridas
# $ioline contains the file-IO data, IE we strip off the data on file creation
45 0:839f52ef7657 louridas
  my $ioline = $line;
46 0:839f52ef7657 louridas
  $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 0:839f52ef7657 louridas
  $ioline =~ s/,,,,,,,,,,,,,$//;
48 0:839f52ef7657 louridas
  if(join('', split(/,/,$ioline)) != "")
49 0:839f52ef7657 louridas
  {
50 0:839f52ef7657 louridas
    $io[$iocount] = $name . "," . $ioline;
51 0:839f52ef7657 louridas
    $iocount++;
52 0:839f52ef7657 louridas
  }
53 0:839f52ef7657 louridas
# $fileline contains the file creation data - everything but $ioline
54 0:839f52ef7657 louridas
  my $fileline = substr($line, length($ioline));
55 0:839f52ef7657 louridas
  if(join('', split(/,/,$fileline)) != "")
56 0:839f52ef7657 louridas
  {
57 0:839f52ef7657 louridas
    $file[$filecount] = $name . $fileline;
58 0:839f52ef7657 louridas
    $filecount++;
59 0:839f52ef7657 louridas
  }
60 0:839f52ef7657 louridas
}
61 0:839f52ef7657 louridas
62 0:839f52ef7657 louridas
sub printFileData
63 0:839f52ef7657 louridas
{
64 0:839f52ef7657 louridas
  if($filecount < 1){ return; }
65 0:839f52ef7657 louridas
  FileHeader();
66 0:839f52ef7657 louridas
  for($i = 0; $i < $filecount; $i++)
67 0:839f52ef7657 louridas
  {
68 0:839f52ef7657 louridas
    @arr = split(/,/,$file[$i]);
69 0:839f52ef7657 louridas
    my $size = $arr[1];
70 0:839f52ef7657 louridas
    $size =~ s/:0:0:/\//;
71 0:839f52ef7657 louridas
    my $desc = $arr[0] . "                   ";
72 0:839f52ef7657 louridas
    $desc = substr($desc, 0, 18 - length($size) );
73 0:839f52ef7657 louridas
    $desc .= " " . $size;
74 0:839f52ef7657 louridas
    printf(STDOUT "%19s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s\n"
75 0:839f52ef7657 louridas
         , $desc, $arr[2], $arr[3], $arr[4], $arr[5], $arr[6], $arr[7]
76 0:839f52ef7657 louridas
         , $arr[8], $arr[9], $arr[10], $arr[11], $arr[12], $arr[13]
77 0:839f52ef7657 louridas
         , $arr[14], $arr[15]);
78 0:839f52ef7657 louridas
  }
79 0:839f52ef7657 louridas
}
80 0:839f52ef7657 louridas
81 0:839f52ef7657 louridas
sub printIOData
82 0:839f52ef7657 louridas
{
83 0:839f52ef7657 louridas
  if($iocount < 1){ return; }
84 0:839f52ef7657 louridas
  IOHeader();
85 0:839f52ef7657 louridas
  for($i = 0; $i < $iocount; $i++)
86 0:839f52ef7657 louridas
  {
87 0:839f52ef7657 louridas
    @arr = split(/,/,$io[$i]);
88 0:839f52ef7657 louridas
    my $size = $arr[1];
89 0:839f52ef7657 louridas
    my $desc = $arr[0] . "                   ";
90 0:839f52ef7657 louridas
    $desc = substr($desc, 0, 18 - length($size) );
91 0:839f52ef7657 louridas
    $desc .= " " . $size;
92 0:839f52ef7657 louridas
    printf(STDOUT "%19s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s\n"
93 0:839f52ef7657 louridas
         , $desc, $arr[2], $arr[3], $arr[4], $arr[5], $arr[6], $arr[7]
94 0:839f52ef7657 louridas
         , $arr[8], $arr[9], $arr[10], $arr[11], $arr[12], $arr[13]
95 0:839f52ef7657 louridas
         , $arr[14], $arr[15]);
96 0:839f52ef7657 louridas
  }
97 0:839f52ef7657 louridas
}