mirror of
https://github.com/nlohmann/json.git
synced 2026-11-04 11:49:22 +00:00
The baseline is now develop 9c349b1d7c with every open non-draft pull
request merged, including #5968, #5970, #5971, #5975, #5976, #5978,
#5979, #5980, #5981 and #5982. The suite was rerun on 11-01 with every
step repeated when the load rose above 5 while it ran; the comparison
with other libraries and the held-out files were rerun on 10-31.
- suite: 3.0x geometric mean (median 2.9x); Appendix B, the overview
and the distribution regenerated
- timeline endpoint, Appendix D and the cliffs figure updated
- the held-out figure compares json_document with the fastest other
library
- new paragraphs for the pull requests listed above
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
9.7 KiB
9.7 KiB
| 1 | benchmark | unit | 3.12.0 | 3.13.0 | speedup |
|---|---|---|---|---|---|
| 2 | Accept/canada | ns | 1.26696e+07 | 2.2575e+06 | 5.612 |
| 3 | Accept/citm_catalog | ns | 6.27254e+06 | 821823 | 7.632 |
| 4 | Accept/floats | ns | 1.13006e+08 | 2.40221e+07 | 4.704 |
| 5 | Accept/jeopardy | ns | 2.17632e+08 | 5.58138e+07 | 3.899 |
| 6 | Accept/signed_ints | ns | 1.12907e+08 | 2.85756e+07 | 3.951 |
| 7 | Accept/small_signed_ints | ns | 5.54714e+07 | 1.8795e+07 | 2.951 |
| 8 | Accept/twitter | ns | 2.43838e+06 | 473586 | 5.149 |
| 9 | Accept/unsigned_ints | ns | 1.1346e+08 | 2.74621e+07 | 4.132 |
| 10 | BinaryToCbor/1024 | ns | 297.407 | 99.5768 | 2.987 |
| 11 | BinaryToCbor/128 | ns | 248.439 | 111.657 | 2.225 |
| 12 | BinaryToCbor/16 | ns | 242.564 | 47.7818 | 5.077 |
| 13 | BinaryToCbor/16384 | ns | 973.398 | 399.499 | 2.437 |
| 14 | BinaryToCbor/2048 | ns | 319.624 | 118.272 | 2.702 |
| 15 | BinaryToCbor/256 | ns | 266.104 | 87.3165 | 3.048 |
| 16 | BinaryToCbor/32 | ns | 247.978 | 48.4634 | 5.117 |
| 17 | BinaryToCbor/32768 | ns | 1556.18 | 800.873 | 1.943 |
| 18 | BinaryToCbor/4096 | ns | 396.295 | 162.602 | 2.437 |
| 19 | BinaryToCbor/512 | ns | 285.575 | 96.0648 | 2.973 |
| 20 | BinaryToCbor/64 | ns | 250.377 | 81.925 | 3.056 |
| 21 | BinaryToCbor/8 | ns | 244.156 | 47.288 | 5.163 |
| 22 | BinaryToCbor/8192 | ns | 504.281 | 243.911 | 2.067 |
| 23 | Copy/canada | ns | 3.63446e+06 | 2.82189e+06 | 1.288 |
| 24 | Copy/citm_catalog | ns | 1.60912e+06 | 1.44486e+06 | 1.114 |
| 25 | Copy/twitter | ns | 795454 | 713137 | 1.115 |
| 26 | CopyAssign/canada | ns | 3.67193e+06 | 2.83735e+06 | 1.294 |
| 27 | CopyAssign/citm_catalog | ns | 1.6226e+06 | 1.46761e+06 | 1.106 |
| 28 | CopyAssign/twitter | ns | 796879 | 723802 | 1.101 |
| 29 | CopyOnly/canada | ns | 1.515e+06 | 1.48013e+06 | 1.024 |
| 30 | CopyOnly/citm_catalog | ns | 735909 | 779064 | 0.945 |
| 31 | CopyOnly/twitter | ns | 396091 | 394148 | 1.005 |
| 32 | CopyRing/canada | ns | 3.6601e+06 | 2.87591e+06 | 1.273 |
| 33 | CopyRing/citm_catalog | ns | 1.67396e+06 | 1.49385e+06 | 1.121 |
| 34 | CopyRing/twitter | ns | 852203 | 758099 | 1.124 |
| 35 | DestroyOnly/canada | ns | 2.11222e+06 | 1.34774e+06 | 1.567 |
| 36 | DestroyOnly/citm_catalog | ns | 877627 | 665344 | 1.319 |
| 37 | DestroyOnly/twitter | ns | 401389 | 318049 | 1.262 |
| 38 | Diff/canada | ns | 3.79246e+07 | 3.63624e+06 | 10.430 |
| 39 | Diff/citm_catalog | ns | 6.67077e+06 | 1.06338e+06 | 6.273 |
| 40 | Diff/twitter | ns | 4.77939e+06 | 625756 | 7.638 |
| 41 | Dump/canada / - | ns | 6.59487e+06 | 2.2613e+06 | 2.916 |
| 42 | Dump/canada / 4 | ns | 8.74176e+06 | 2.97842e+06 | 2.935 |
| 43 | Dump/citm_catalog / - | ns | 1.3644e+06 | 288719 | 4.726 |
| 44 | Dump/citm_catalog / 4 | ns | 1.89619e+06 | 413366 | 4.587 |
| 45 | Dump/floats / - | ns | 6.19828e+07 | 2.32629e+07 | 2.664 |
| 46 | Dump/floats / 4 | ns | 6.99509e+07 | 2.42733e+07 | 2.882 |
| 47 | Dump/jeopardy / - | ns | 1.98646e+08 | 3.00149e+07 | 6.618 |
| 48 | Dump/jeopardy / 4 | ns | 2.1766e+08 | 3.41791e+07 | 6.368 |
| 49 | Dump/signed_ints / - | ns | 2.34589e+07 | 1.04283e+07 | 2.250 |
| 50 | Dump/signed_ints / 4 | ns | 3.14953e+07 | 1.10449e+07 | 2.852 |
| 51 | Dump/small_signed_ints / - | ns | 1.75382e+07 | 7.78445e+06 | 2.253 |
| 52 | Dump/small_signed_ints / 4 | ns | 2.45961e+07 | 8.6025e+06 | 2.859 |
| 53 | Dump/twitter / - | ns | 1.37764e+06 | 206071 | 6.685 |
| 54 | Dump/twitter / 4 | ns | 1.55081e+06 | 245319 | 6.322 |
| 55 | Dump/unsigned_ints / - | ns | 2.32299e+07 | 7.88898e+06 | 2.945 |
| 56 | Dump/unsigned_ints / 4 | ns | 3.13409e+07 | 8.36799e+06 | 3.745 |
| 57 | Equal/canada | ns | 453424 | 327263 | 1.386 |
| 58 | Equal/citm_catalog | ns | 266993 | 250294 | 1.067 |
| 59 | Equal/twitter | ns | 139736 | 125746 | 1.111 |
| 60 | Flatten/canada | ns | 2.82338e+07 | 1.08847e+07 | 2.594 |
| 61 | Flatten/citm_catalog | ns | 6.30735e+06 | 3.00812e+06 | 2.097 |
| 62 | Flatten/twitter | ns | 3.47237e+06 | 2.01096e+06 | 1.727 |
| 63 | FlattenOrdered/citm_catalog | ns | 2.51117e+08 | 1.37356e+06 | 182.822 |
| 64 | FlattenOrdered/twitter | ns | 4.80472e+07 | 845690 | 56.814 |
| 65 | FromBinaryBuffer/bjdata / canada | ns | 8.06626e+06 | 4.09343e+06 | 1.971 |
| 66 | FromBinaryBuffer/bjdata / twitter | ns | 3.10065e+06 | 945348 | 3.280 |
| 67 | FromBinaryBuffer/bjdata_optimized / canada | ns | 8.55835e+06 | 2.4023e+06 | 3.563 |
| 68 | FromBinaryBuffer/bjdata_optimized / twitter | ns | 3.07733e+06 | 941691 | 3.268 |
| 69 | FromBinaryBuffer/bson / canada | ns | 9.21459e+06 | 4.26414e+06 | 2.161 |
| 70 | FromBinaryBuffer/bson / citm_catalog | ns | 3.83754e+06 | 1.59156e+06 | 2.411 |
| 71 | FromBinaryBuffer/bson / twitter | ns | 3.04999e+06 | 914475 | 3.335 |
| 72 | FromBinaryBuffer/cbor / canada | ns | 8.24692e+06 | 2.10045e+06 | 3.926 |
| 73 | FromBinaryBuffer/cbor / citm_catalog | ns | 3.67001e+06 | 1.40559e+06 | 2.611 |
| 74 | FromBinaryBuffer/cbor / floats | ns | 2.88379e+07 | 5.54206e+06 | 5.203 |
| 75 | FromBinaryBuffer/cbor / jeopardy | ns | 3.55185e+08 | 1.12369e+08 | 3.161 |
| 76 | FromBinaryBuffer/cbor / signed_ints | ns | 3.50877e+07 | 1.06246e+07 | 3.302 |
| 77 | FromBinaryBuffer/cbor / twitter | ns | 3.02882e+06 | 938435 | 3.228 |
| 78 | FromBinaryBuffer/msgpack / canada | ns | 8.1874e+06 | 2.10574e+06 | 3.888 |
| 79 | FromBinaryBuffer/msgpack / citm_catalog | ns | 3.69114e+06 | 1.38675e+06 | 2.662 |
| 80 | FromBinaryBuffer/msgpack / jeopardy | ns | 3.48804e+08 | 1.07752e+08 | 3.237 |
| 81 | FromBinaryBuffer/msgpack / twitter | ns | 3.00307e+06 | 918949 | 3.268 |
| 82 | FromBinaryBuffer/ubjson / canada | ns | 8.07635e+06 | 4.10295e+06 | 1.968 |
| 83 | FromBinaryBuffer/ubjson / citm_catalog | ns | 3.81009e+06 | 1.73556e+06 | 2.195 |
| 84 | FromBinaryBuffer/ubjson / jeopardy | ns | 3.68321e+08 | 1.13364e+08 | 3.249 |
| 85 | FromBinaryBuffer/ubjson / twitter | ns | 3.11341e+06 | 948522 | 3.282 |
| 86 | FromBinaryBuffer/ubjson_optimized / canada | ns | 8.35104e+06 | 2.36581e+06 | 3.530 |
| 87 | FromBinaryBuffer/ubjson_optimized / twitter | ns | 3.06434e+06 | 938610 | 3.265 |
| 88 | FromBinaryFile/bjdata / twitter | ns | 1.01717e+07 | 1.88288e+06 | 5.402 |
| 89 | FromBinaryFile/bson / twitter | ns | 1.00323e+07 | 1.7507e+06 | 5.730 |
| 90 | FromBinaryFile/cbor / canada | ns | 1.40561e+07 | 4.33636e+06 | 3.241 |
| 91 | FromBinaryFile/cbor / twitter | ns | 9.76788e+06 | 1.50363e+06 | 6.496 |
| 92 | FromBinaryFile/ubjson / canada | ns | 1.33567e+07 | 6.24716e+06 | 2.138 |
| 93 | FromBinaryFile/ubjson / twitter | ns | 1.02704e+07 | 1.88515e+06 | 5.448 |
| 94 | FromBinaryShape/containers / bjdata | ns | 1.39728e+07 | 6.97745e+06 | 2.003 |
| 95 | FromBinaryShape/containers / bson | ns | 1.66944e+07 | 7.57557e+06 | 2.204 |
| 96 | FromBinaryShape/containers / cbor | ns | 1.37656e+07 | 3.92529e+06 | 3.507 |
| 97 | FromBinaryShape/containers / msgpack | ns | 1.36795e+07 | 3.873e+06 | 3.532 |
| 98 | FromBinaryShape/containers / ubjson | ns | 1.39033e+07 | 6.94785e+06 | 2.001 |
| 99 | FromBinaryShape/containers / ubjson_optimized | ns | 1.45005e+07 | 4.4374e+06 | 3.268 |
| 100 | FromBinaryShape/nested / bjdata | ns | 94734.2 | 37641.8 | 2.517 |
| 101 | FromBinaryShape/nested / bson | ns | 100822 | 41783.2 | 2.413 |
| 102 | FromBinaryShape/nested / cbor | ns | 92458.3 | 35251.3 | 2.623 |
| 103 | FromBinaryShape/nested / msgpack | ns | 91071.5 | 34781.9 | 2.618 |
| 104 | FromBinaryShape/nested / ubjson | ns | 93738.5 | 37564.7 | 2.495 |
| 105 | FromBinaryShape/scalars / bjdata | ns | 2.41928e+07 | 1.11786e+07 | 2.164 |
| 106 | FromBinaryShape/scalars / cbor | ns | 2.53634e+07 | 5.77218e+06 | 4.394 |
| 107 | FromBinaryShape/scalars / msgpack | ns | 2.40515e+07 | 5.69592e+06 | 4.223 |
| 108 | FromBinaryShape/scalars / ubjson | ns | 2.43914e+07 | 1.12377e+07 | 2.171 |
| 109 | FromCborChunkedString/10000 chunks | ns | 89766.6 | 81082.5 | 1.107 |
| 110 | FromMsgpack/canada | ns | 1.39115e+07 | 4.36091e+06 | 3.190 |
| 111 | FromMsgpack/citm_catalog | ns | 8.78364e+06 | 2.19066e+06 | 4.010 |
| 112 | FromMsgpack/floats | ns | 5.88697e+07 | 2.716e+07 | 2.168 |
| 113 | FromMsgpack/jeopardy | ns | 1.1169e+09 | 1.78518e+08 | 6.257 |
| 114 | FromMsgpack/signed_ints | ns | 6.18791e+07 | 3.19405e+07 | 1.937 |
| 115 | FromMsgpack/small_signed_ints | ns | 6.17411e+07 | 3.32716e+07 | 1.856 |
| 116 | FromMsgpack/twitter | ns | 9.71057e+06 | 1.43151e+06 | 6.783 |
| 117 | FromMsgpack/unsigned_ints | ns | 5.46656e+07 | 2.73563e+07 | 1.998 |
| 118 | GetArray<std::array<int, 1000>> | ns | 2226.89 | 628.823 | 3.541 |
| 119 | GetArray<std::deque<int>> | ns | 7987.51 | 1154.72 | 6.917 |
| 120 | GetArray<std::set<int>> | ns | 58292.1 | 41015.3 | 1.421 |
| 121 | GetArray<std::vector<int>> | ns | 6583.86 | 654.896 | 10.053 |
| 122 | GetMap/citm_catalog | ns | 3.37868e+06 | 2.38201e+06 | 1.418 |
| 123 | GetVectorDouble/floats | ns | 6.55968e+06 | 638337 | 10.276 |
| 124 | GetVectorInt/signed_ints | ns | 7.93082e+06 | 3.36672e+06 | 2.356 |
| 125 | Iterate/canada | ns | 863030 | 319612 | 2.700 |
| 126 | Iterate/citm_catalog | ns | 294667 | 165042 | 1.785 |
| 127 | Iterate/twitter | ns | 86187.1 | 61998.9 | 1.390 |
| 128 | JsonPointerAt/citm_catalog | ns | 1.79511e+06 | 1.10986e+06 | 1.617 |
| 129 | JsonPointerAt/twitter | ns | 783457 | 577673 | 1.356 |
| 130 | JsonPointerContains/citm_catalog | ns | 2.67654e+06 | 1.2123e+06 | 2.208 |
| 131 | JsonPointerContains/twitter | ns | 1.27533e+06 | 600836 | 2.123 |
| 132 | JsonPointerParse/citm_catalog | ns | 5.63099e+06 | 2.14907e+06 | 2.620 |
| 133 | JsonPointerParse/twitter | ns | 2.41845e+06 | 981978 | 2.463 |
| 134 | JsonPointerToString/citm_catalog | ns | 6.61402e+06 | 1.85736e+06 | 3.561 |
| 135 | JsonPointerToString/twitter | ns | 2.16657e+06 | 789775 | 2.743 |
| 136 | ParseFILE/canada | ns | 5.2126e+07 | 1.38733e+07 | 3.757 |
| 137 | ParseFILE/citm_catalog | ns | 3.4268e+07 | 7.25874e+06 | 4.721 |
| 138 | ParseFILE/twitter | ns | 1.33521e+07 | 3.2647e+06 | 4.090 |
| 139 | ParseFile/canada | ns | 1.72435e+07 | 6.07983e+06 | 2.836 |
| 140 | ParseFile/citm_catalog | ns | 7.64894e+06 | 2.38641e+06 | 3.205 |
| 141 | ParseFile/floats | ns | 1.27024e+08 | 4.70746e+07 | 2.698 |
| 142 | ParseFile/jeopardy | ns | 3.24619e+08 | 1.58029e+08 | 2.054 |
| 143 | ParseFile/signed_ints | ns | 1.24305e+08 | 4.5808e+07 | 2.714 |
| 144 | ParseFile/small_signed_ints | ns | 6.28615e+07 | 3.16401e+07 | 1.987 |
| 145 | ParseFile/twitter | ns | 3.2765e+06 | 1.34371e+06 | 2.438 |
| 146 | ParseFile/unsigned_ints | ns | 1.20124e+08 | 4.40035e+07 | 2.730 |
| 147 | ParseIndented/canada / 4 | ns | 3.31005e+07 | 5.04112e+06 | 6.566 |
| 148 | ParseIndented/citm_catalog / 4 | ns | 7.11787e+06 | 1.73917e+06 | 4.093 |
| 149 | ParseIndented/jeopardy / 4 | ns | 3.33132e+08 | 1.29074e+08 | 2.581 |
| 150 | ParseIndented/twitter / 4 | ns | 3.57115e+06 | 1.09089e+06 | 3.274 |
| 151 | ParseStreamValues/ndjson | ns | 6.97026e+06 | 3.70937e+06 | 1.879 |
| 152 | ParseStreamValues/numbers | ns | 1.8966e+06 | 373744 | 5.075 |
| 153 | ParseString/canada | ns | 1.50132e+07 | 4.35565e+06 | 3.447 |
| 154 | ParseString/citm_catalog | ns | 7.26397e+06 | 1.73446e+06 | 4.188 |
| 155 | ParseString/floats | ns | 1.1698e+08 | 3.02859e+07 | 3.863 |
| 156 | ParseString/jeopardy | ns | 3.05106e+08 | 1.28063e+08 | 2.382 |
| 157 | ParseString/signed_ints | ns | 1.19046e+08 | 3.16406e+07 | 3.762 |
| 158 | ParseString/small_signed_ints | ns | 5.97047e+07 | 2.20096e+07 | 2.713 |
| 159 | ParseString/twitter | ns | 3.18359e+06 | 1.02841e+06 | 3.096 |
| 160 | ParseString/unsigned_ints | ns | 1.18153e+08 | 3.03899e+07 | 3.888 |
| 161 | ParseStringOrdered/canada | ns | 1.52432e+07 | 4.31485e+06 | 3.533 |
| 162 | ParseStringOrdered/citm_catalog | ns | 1.07738e+07 | 1.61487e+06 | 6.672 |
| 163 | ParseStringOrdered/jeopardy | ns | 3.58314e+08 | 1.09968e+08 | 3.258 |
| 164 | ParseStringOrdered/twitter | ns | 4.34017e+06 | 897816 | 4.834 |
| 165 | Patch/canada | ns | 9.89382e+06 | 3.30963e+06 | 2.989 |
| 166 | Patch/citm_catalog | ns | 2.49909e+06 | 1.59354e+06 | 1.568 |
| 167 | Patch/twitter | ns | 1.4469e+06 | 840978 | 1.720 |
| 168 | SaxParse/canada | ns | 1.27947e+07 | 3.20901e+06 | 3.987 |
| 169 | SaxParse/citm_catalog | ns | 6.33091e+06 | 947578 | 6.681 |
| 170 | SaxParse/twitter | ns | 2.47342e+06 | 467446 | 5.291 |
| 171 | ToCbor/canada | ns | 1.36222e+06 | 546687 | 2.492 |
| 172 | ToCbor/citm_catalog | ns | 1.0175e+06 | 254725 | 3.995 |
| 173 | ToCbor/floats | ns | 8.88418e+06 | 1.88474e+06 | 4.714 |
| 174 | ToCbor/jeopardy | ns | 7.101e+07 | 2.10445e+07 | 3.374 |
| 175 | ToCbor/signed_ints | ns | 1.1155e+07 | 2.74959e+06 | 4.057 |
| 176 | ToCbor/small_signed_ints | ns | 1.01055e+07 | 2.36336e+06 | 4.276 |
| 177 | ToCbor/twitter | ns | 632231 | 141279 | 4.475 |
| 178 | ToCbor/unsigned_ints | ns | 7.99726e+06 | 2.748e+06 | 2.910 |
| 179 | ToJsonStrings/copy | ns | 5.81667e+06 | 5.47945e+06 | 1.062 |
| 180 | ToJsonStrings/move | ns | 5.79569e+06 | 3.00408e+06 | 1.929 |
| 181 | Unflatten/canada | ns | 4.09596e+07 | 1.06606e+07 | 3.842 |
| 182 | Unflatten/citm_catalog | ns | 9.66875e+06 | 3.44544e+06 | 2.806 |
| 183 | Unflatten/twitter | ns | 4.57166e+06 | 2.08857e+06 | 2.189 |