msgpack/perl/benchmark/deserialize.pl

28 lines
654 B
Perl
Raw Normal View History

use strict;
use warnings;
use Data::MessagePack;
2010-09-18 16:16:51 +09:00
use JSON;
2010-09-10 20:27:11 +09:00
use Storable;
2010-09-18 16:16:51 +09:00
use Benchmark ':all';
2010-09-15 13:34:18 +09:00
#$Data::MessagePack::PreferInteger = 1;
2010-09-18 15:49:25 +09:00
my $a = do 'benchmark/data.pl';
2010-09-18 16:16:51 +09:00
my $j = JSON::encode_json($a);
my $m = Data::MessagePack->pack($a);
my $s = Storable::freeze($a);
print "-- deserialize\n";
2010-09-18 16:16:51 +09:00
print "$JSON::Backend: ", $JSON::Backend->VERSION, "\n";
print "Data::MessagePack: $Data::MessagePack::VERSION\n";
print "Storable: $Storable::VERSION\n";
2010-09-15 12:46:11 +09:00
cmpthese timethese(
-1 => {
2010-09-18 16:16:51 +09:00
json => sub { JSON::decode_json($j) },
2010-09-10 20:27:11 +09:00
mp => sub { Data::MessagePack->unpack($m) },
storable => sub { Storable::thaw($s) },
}
);