Skip to content

Latest commit

 

History

History
69 lines (64 loc) · 3.98 KB

kostya_benchmark_results.md

File metadata and controls

69 lines (64 loc) · 3.98 KB

This is the results of kostya json benchmark https://github.com/kostya/benchmarks/ Each machine has a different data set, so the relative times/memory/power is what is important

2017 Macbook Air. 8GB Ram Intel(R) Core(TM) i5-5350U CPU @ 1.80GHz

Memory/Energy is not available on Macos

Language Time, s
C++ DAW JSON Link 0.19 ± 00.01
Rust Serde Typed 0.21 ± 00.00
Rust Serde Custom 0.21 ± 00.00
C++ simdjson 0.31 ± 00.01
C++ gason 0.35 ± 00.00
C++ RapidJSON 0.53 ± 00.09
C++ RapidJSON SAX 0.78 ± 00.02
Node.js 1.10 ± 00.01
Crystal Schema 1.19 ± 00.01
Crystal Pull 1.19 ± 00.02
Rust Serde Untyped 1.34 ± 00.02
Crystal 1.66 ± 00.05
Go 2.12 ± 00.01
CPython UltraJSON 2.43 ± 00.04
Python 2.88 ± 00.04
V Clang 3.20 ± 00.04
C++ json-c 3.95 ± 00.08
Ruby 4.10 ± 00.10
Rust jq 5.45 ± 00.26
C++ Boost 10.42 ± 00.11

Linux 5.3.0-29 32GB Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz

gcc 9.2.1, rustc 1.37.0, V 0.1.24 80d936a

Language Time, s Memory, MiB Energy, J
C++ DAW JSON Link 0.11 ± 00.00 103.43 ± 00.06 1.07 ± 00.01
GDC fast 0.13 ± 00.00 231.92 ± 00.10 1.11 ± 00.03
Rust Serde Custom 0.17 ± 00.00 108.65 ± 00.09 1.68 ± 00.05
Rust Serde Typed 0.18 ± 00.00 120.27 ± 00.27 1.87 ± 00.05
C++ gason 0.19 ± 00.00 312.98 ± 00.07 1.89 ± 00.01
C++ simdjson 0.21 ± 00.00 496.92 ± 00.84 2.11 ± 00.03
C++ RapidJSON 0.26 ± 00.00 344.73 ± 00.15 3.01 ± 00.06
C++ RapidJSON SAX 0.57 ± 00.00 109.65 ± 00.05 5.59 ± 00.07
Rust Serde Untyped 0.74 ± 00.00 916.61 ± 00.06 7.22 ± 00.06
Go jsoniter 0.80 ± 00.00 304.81 ± 00.25 8.44 ± 00.27
Perl Cpanel::JSON::XS 0.87 ± 00.02 517.43 ± 00.06 9.46 ± 00.16
Crystal Schema 0.92 ± 00.00 157.28 ± 00.15 9.78 ± 00.68
Crystal Pull 0.93 ± 00.01 128.59 ± 00.05 9.57 ± 00.10
Node.js 1.23 ± 00.01 440.71 ± 01.95 13.54 ± 00.32
Crystal 1.24 ± 00.00 503.69 ± 00.05 13.33 ± 00.12
PyPy 1.28 ± 00.00 733.69 ± 01.13 13.39 ± 00.40
PHP 1.29 ± 00.01 804.03 ± 00.11 12.69 ± 00.35
V Clang 1.43 ± 00.01 592.59 ± 00.08 13.99 ± 00.11
V GCC 1.45 ± 00.00 592.17 ± 00.08 14.11 ± 00.12
CPython UltraJSON 1.55 ± 00.01 687.59 ± 02.10 16.86 ± 00.16
Go 1.58 ± 00.00 445.40 ± 00.13 16.65 ± 00.17
Python 1.67 ± 00.01 520.17 ± 00.08 16.40 ± 00.38
C++ json-c 1.98 ± 00.01 1756.10 ± 00.06 19.17 ± 00.17
Nim Clang 1.99 ± 00.00 909.43 ± 00.06 19.63 ± 00.60
Nim GCC 2.04 ± 00.01 908.95 ± 00.04 20.13 ± 00.46
Ruby 2.52 ± 00.06 492.79 ± 00.54 25.10 ± 01.30
LDC 2.84 ± 00.02 800.76 ± 00.14 28.40 ± 00.55
GDC 3.21 ± 00.04 713.87 ± 00.08 33.88 ± 01.43
GCC Go 3.42 ± 00.03 534.21 ± 00.83 37.73 ± 01.54
C++ Boost 4.14 ± 00.02 1549.76 ± 00.05 42.46 ± 01.61
Rust jq 4.52 ± 00.02 1013.22 ± 01.08 41.92 ± 01.08
DMD 5.11 ± 00.01 797.00 ± 00.14 52.35 ± 01.36
Perl JSON::Tiny 12.48 ± 00.10 746.86 ± 00.08 133.63 ± 02.55