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
20sub IOHeader
21{
22  my $version = '1.03d';
23print "Version  $version      ------Sequential Output------ --Sequential Input- --Random-\n";
24print "                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--\n";
25print "Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP\n";
26}
27
28sub FileHeader
29{
30print "                    ------Sequential Create------ --------Random Create--------\n";
31print "                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--\n";
32print "files:max:min        /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP\n";
33}
34
35sub 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
62sub 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
81sub 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
99