root / synthbench / bonnie++ / bon_csv2txt.in @ 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 |
|