Add some serialization benchmarks

test bench_enum::bench_decoder_dog                 ... bench:       110 ns/iter (+/- 3)
test bench_enum::bench_decoder_frog                ... bench:       330 ns/iter (+/- 13)
test bench_enum::bench_deserializer_dog            ... bench:       116 ns/iter (+/- 1)
test bench_enum::bench_deserializer_frog           ... bench:       310 ns/iter (+/- 31)
test bench_map::bench_decoder_000                  ... bench:       528 ns/iter (+/- 43)
test bench_map::bench_decoder_003                  ... bench:      2330 ns/iter (+/- 168)
test bench_map::bench_decoder_100                  ... bench:     69124 ns/iter (+/- 6764)
test bench_map::bench_deserializer_000             ... bench:       790 ns/iter (+/- 73)
test bench_map::bench_deserializer_003             ... bench:      2552 ns/iter (+/- 443)
test bench_map::bench_deserializer_100             ... bench:     61059 ns/iter (+/- 3776)
test bench_struct::bench_decoder_0_0               ... bench:       608 ns/iter (+/- 54)
test bench_struct::bench_decoder_1_0               ... bench:      1584 ns/iter (+/- 84)
test bench_struct::bench_decoder_1_5               ... bench:      4294 ns/iter (+/- 799)
test bench_struct::bench_deserializer_0_0          ... bench:       670 ns/iter (+/- 61)
test bench_struct::bench_deserializer_1_0          ... bench:      2035 ns/iter (+/- 153)
test bench_struct::bench_deserializer_1_5          ... bench:      4825 ns/iter (+/- 699)
test bench_vec::bench_decoder_int_000              ... bench:        20 ns/iter (+/- 1)
test bench_vec::bench_decoder_int_003              ... bench:       149 ns/iter (+/- 8)
test bench_vec::bench_decoder_int_100              ... bench:       989 ns/iter (+/- 14)
test bench_vec::bench_decoder_u8_000               ... bench:        16 ns/iter (+/- 0)
test bench_vec::bench_decoder_u8_003               ... bench:       155 ns/iter (+/- 9)
test bench_vec::bench_decoder_u8_100               ... bench:      1424 ns/iter (+/- 13)
test bench_vec::bench_deserializer_int_000         ... bench:        16 ns/iter (+/- 0)
test bench_vec::bench_deserializer_int_003         ... bench:       152 ns/iter (+/- 11)
test bench_vec::bench_deserializer_int_100         ... bench:      1015 ns/iter (+/- 64)
test bench_vec::bench_deserializer_u8_000          ... bench:        16 ns/iter (+/- 1)
test bench_vec::bench_deserializer_u8_003          ... bench:       155 ns/iter (+/- 9)
test bench_vec::bench_deserializer_u8_100          ... bench:      1163 ns/iter (+/- 74)
test json::bench::bench_decoder_001                ... bench:      3951 ns/iter (+/- 523)
test json::bench::bench_decoder_001_streaming      ... bench:      2032 ns/iter (+/- 850)
test json::bench::bench_decoder_500                ... bench:   1936618 ns/iter (+/- 215448)
test json::bench::bench_decoder_500_streaming      ... bench:    831512 ns/iter (+/- 17862)
test json::bench::bench_deserializer_001           ... bench:      3767 ns/iter (+/- 127)
test json::bench::bench_deserializer_001_streaming ... bench:      2070 ns/iter (+/- 67)
test json::bench::bench_deserializer_500           ... bench:   1794293 ns/iter (+/- 63726)
test json::bench::bench_deserializer_500_streaming ... bench:    919105 ns/iter (+/- 56000)
test json::bench::bench_encoder_001                ... bench:      5137 ns/iter (+/- 146)
test json::bench::bench_encoder_001_pretty         ... bench:      7448 ns/iter (+/- 79)
test json::bench::bench_encoder_500                ... bench:   2310173 ns/iter (+/- 33944)
test json::bench::bench_encoder_500_pretty         ... bench:   3396347 ns/iter (+/- 163104)
test json::bench::bench_serializer_001             ... bench:      4009 ns/iter (+/- 412)
test json::bench::bench_serializer_001_pretty      ... bench:      6499 ns/iter (+/- 58)
test json::bench::bench_serializer_500             ... bench:   1721992 ns/iter (+/- 21521)
test json::bench::bench_serializer_500_pretty      ... bench:   2880591 ns/iter (+/- 146516)
This commit is contained in:
Erick Tryzelaar
2014-06-14 10:48:01 -07:00
parent 8e657078ef
commit f46d5a9973
2 changed files with 351 additions and 361 deletions
+5 -10
View File
@@ -208,7 +208,7 @@ mod tests {
use serialize::Decoder;
use super::{Token, Int, Uint, Str, Char, Option};
use super::{Token, Null, Int, Uint, Str, Char, Option};
use super::{TupleStart, StructStart, EnumStart};
use super::{SeqStart, MapStart, End};
use super::{Serializer, Serializable};
@@ -341,8 +341,7 @@ mod tests {
#[test]
fn test_tokens_null() {
let tokens = vec!(
TupleStart(0),
End,
Null,
);
let mut serializer = AssertSerializer::new(tokens.move_iter());
@@ -391,11 +390,8 @@ mod tests {
fn test_tokens_tuple_compound() {
let tokens = vec!(
TupleStart(3),
TupleStart(0),
End,
TupleStart(0),
End,
Null,
Null,
TupleStart(2),
Int(5),
@@ -432,8 +428,7 @@ mod tests {
SeqStart(1),
StructStart("Inner", 3),
Str("a"),
TupleStart(0),
End,
Null,
Str("b"),
Uint(5),