Use the decoded size to measure the throughput, same as bro tool.
authorQuim Rovira <quim@rovira.cat>
Sun, 14 Aug 2016 11:27:09 +0000 (13:27 +0200)
committerQuim Rovira <quim@rovira.cat>
Sun, 14 Aug 2016 11:27:09 +0000 (13:27 +0200)
Now the performance make a bit more sense:

[quim@ling] ~/workspace/io-compress-brotli $ time perl -Iblib/lib
-Iblib/arch bin/bro-perl --input brotli/tests/testdata/alice29.txt
--output /tmp/out.test --repeat 40 --quality 10 --verbose
Ran 40 iterations in a total of 4.536567 seconds
Brotli compression speed: 1.278882 MB/s

real    0m4.586s
user    0m4.484s
sys     0m0.048s

[quim@ling] ~/workspace/io-compress-brotli $ time brotli/bin/bro --input
brotli/tests/testdata/alice29.txt --output /tmp/out.test --repeat 40
--quality 10 --verbose
Brotli compression speed: 1.2328 MB/s

real    0m4.759s
user    0m4.704s
sys     0m0.000s

bin/bro-perl

index 6aac129481f9ac5dcc86ad11caaae5f314777acc..ffad9052518d903392d222af0c47938e71715a73 100755 (executable)
@@ -85,17 +85,16 @@ for ( 1..$REPEAT ) {
             $bro->window( $WINDOW );
             while( read $ifh, (my $buf), $STREAM ) {
                 $encoded = $bro->compress($buf);
-                $total_size += bytes::length( $encoded );
+                $total_size += bytes::length( $buf );
                 print $ofh $encoded;
             }
             $encoded = $bro->finish();
-            $total_size += bytes::length( $encoded );
             print $ofh $encoded;
         }
         else {
             my $decoded = read_file( $ifh );
             my $encoded = bro( $decoded, $QUALITY, $WINDOW );
-            $total_size += bytes::length( $encoded );
+            $total_size += bytes::length( $decoded );
             write_file( $ofh, $encoded );
         }
     }
This page took 0.011222 seconds and 4 git commands to generate.