@@ -4,38 +4,38 @@ This is a partial port of
4
4
[ nativejson-benchmark] ( https://github.com/miloyip/nativejson-benchmark )
5
5
to Rust. The libraries tested are:
6
6
7
- - [ serde\_ json] ( https://github.com/serde-rs/json ) 1.0.39
8
- - [ json-rust] ( https://github.com/maciejhirsz/json-rust ) 0.11.14
7
+ - [ serde\_ json] ( https://github.com/serde-rs/json ) 1.0.41
8
+ - [ json-rust] ( https://github.com/maciejhirsz/json-rust ) 0.12.0
9
9
- [ rustc-serialize] ( https://github.com/rust-lang-nursery/rustc-serialize ) 0.3.24
10
- - [ simd-json] ( https://github.com/Licenser/simdjson-rs ) 0.1.15 (this requires a modern x86 CPU for good results)
10
+ - [ simd-json] ( https://github.com/Licenser/simdjson-rs ) 0.1.25 (this requires a modern x86 CPU for good results)
11
11
12
12
#### ` $ cargo run --release `
13
13
14
14
```
15
15
DOM STRUCT
16
16
======= serde_json ======= parse|stringify ===== parse|stringify ====
17
- data/canada.json 230 MB/s 420 MB/s 530 MB/s 330 MB/s
18
- data/citm_catalog.json 390 MB/s 450 MB/s 860 MB/s 810 MB/s
19
- data/twitter.json 260 MB/s 870 MB/s 570 MB/s 940 MB/s
17
+ data/canada.json 220 MB/s 420 MB/s 510 MB/s 330 MB/s
18
+ data/citm_catalog.json 380 MB/s 450 MB/s 850 MB/s 820 MB/s
19
+ data/twitter.json 250 MB/s 860 MB/s 570 MB/s 880 MB/s
20
20
21
21
======= json-rust ======== parse|stringify ===== parse|stringify ====
22
- data/canada.json 360 MB/s 920 MB/s
23
- data/citm_catalog.json 520 MB/s 770 MB/s
24
- data/twitter.json 420 MB/s 900 MB/s
22
+ data/canada.json 390 MB/s 890 MB/s
23
+ data/citm_catalog.json 590 MB/s 740 MB/s
24
+ data/twitter.json 430 MB/s 880 MB/s
25
25
26
26
==== rustc_serialize ===== parse|stringify ===== parse|stringify ====
27
- data/canada.json 140 MB/s 56 MB/s 96 MB/s 42 MB/s
28
- data/citm_catalog.json 150 MB/s 150 MB/s 110 MB/s 190 MB/s
29
- data/twitter.json 83 MB/s 290 MB/s 64 MB/s 310 MB/s
27
+ data/canada.json 130 MB/s 53 MB/s 91 MB/s 36 MB/s
28
+ data/citm_catalog.json 150 MB/s 150 MB/s 110 MB/s 180 MB/s
29
+ data/twitter.json 79 MB/s 310 MB/s 61 MB/s 330 MB/s
30
30
31
31
======= simd-json ======== parse|stringify ===== parse|stringify ====
32
- data/canada.json 340 MB/s 460 MB/s 570 MB/s
33
- data/citm_catalog.json 780 MB/s 630 MB/s 1230 MB/s
34
- data/twitter.json 670 MB/s 990 MB/s 800 MB/s
32
+ data/canada.json 320 MB/s 440 MB/s 630 MB/s
33
+ data/citm_catalog.json 880 MB/s 610 MB/s 1390 MB/s
34
+ data/twitter.json 790 MB/s 730 MB/s 930 MB/s
35
35
```
36
36
37
37
- Intel(R) Core(TM) i7-6600U CPU @ 2.60GHz * (laptop CPU from 2015)*
38
- - rustc 1.37 .0-nightly (d3e2cec29 2019-06-26 )
38
+ - rustc 1.40 .0-nightly (4a8c5b20c 2019-10-23 )
39
39
40
40
To update the numbers above, I run ` ./json-benchmark ` twice on an otherwise idle
41
41
computer and take the greater of the two results for each number.
0 commit comments