DAW JSON Link
|
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
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 |
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 |