Compress-Snappy

 view release on metacpan or  search on metacpan

ex/benchmark.pl  view on Meta::CPAN

use Getopt::Long qw(GetOptions :config no_ignore_case);
use List::Util qw(max);

use Compress::Bzip2  ();
use Compress::LZ4    ();
use Compress::LZF    ();
use Compress::Snappy ();
use Compress::Zlib   ();

my %opts = (
    iterations => -1,
    size       => 10,  # kB
);
GetOptions(\%opts, 'iterations|i=i', 'size|s=f',);

my $data = join '', ('A'..'Z', 'a'..'z', 0..9, qw(_ .)) x (16 * $opts{size});

my %compress = (
    'Compress::Bzip2::compress'  => sub { Compress::Bzip2::compress($data) },
    'Compress::LZ4::compress'    => sub { Compress::LZ4::compress($data) },
    'Compress::LZF::compress'    => sub { Compress::LZF::compress($data) },
    'Compress::Snappy::compress' => sub { Compress::Snappy::compress($data) },
    'Compress::Zlib::compress'   => sub { Compress::Zlib::compress($data) },
);



( run in 2.121 seconds using v1.01-cache-2.11-cpan-96521ef73a4 )