diff --git a/docs/mkdocs/docs/home/blog/how_3_13_0_got_faster.md b/docs/mkdocs/docs/home/blog/how_3_13_0_got_faster.md index 270e1e9d1..a0cd7a500 100644 --- a/docs/mkdocs/docs/home/blog/how_3_13_0_got_faster.md +++ b/docs/mkdocs/docs/home/blog/how_3_13_0_got_faster.md @@ -5,14 +5,14 @@ + comparison), including the line counts in "The price". The numbers below are from develop 7fc8312c64 with the + open pull requests #6029, #6031, #6033 and #6039 merged (local branch local/all-prs-1107 at fcae242ac8, plus + #6039 uncommitted), measured 11-07: suite, timeline (the commits after 11-03 and 3.13.0; the older points are from + 10-27 and 11-03), compile times (5 rounds), the stream gap, and the comparison on the Mac and on x86-64. + Appendix D and the Intel MacBook Pro column of Appendix B are from 11-03 (the MacBook was not reachable), and so + is the check with GCC 16 and Clang 23 on the Mac in "Results on x86-64". The Rust times are from 10-29 (Mac) and + 11-03 (x86-64), the x86-64 conformance run from 10-30. Once #6031 is merged, remove it from PENDING in + scripts/figures/perf_blog.py. Merge tests/benchmarks/json_view/others before publishing (the links 404). --> Since 2016, the [README](https://github.com/nlohmann/json#readme) of this library has said this about speed: @@ -20,13 +20,13 @@ Since 2016, the [README](https://github.com/nlohmann/json#readme) of this librar > JSON support with a single header, then this library is the way to go. That sentence is still true, but the gap is a lot smaller now. Swap the 3.12.0 header for the 3.13.0 one, recompile, and -the 182 benchmarks of the library's own suite run 3.0× as fast on an Apple M1 Max (geometric mean; 3.1× on an Intel -MacBook Pro from 2016). Not a line of your code changes. Parsing typical documents got 3.1–4.3× as fast, and writing -them 3.0–6.7×. The new version also adds [`json_document`](../../features/json_view.md), a second way to hold a parsed +the 182 benchmarks of the library's own suite run 3.3× as fast on an Apple M1 Max (geometric mean; 3.1× on an Intel +MacBook Pro from 2016). Not a line of your code changes. Parsing typical documents got 3.5–5.1× as fast, and writing +them 2.9–6.6×. The new version also adds [`json_document`](../../features/json_view.md), a second way to hold a parsed document, which competes with the fastest C++ and Rust JSON libraries; [How it compares](#how-it-compares) has the -numbers, including where it loses. The price is compile time: two small example programs take 34–62% longer to compile. -A precompiled header or a C++20 module wins back most or all of that in debug builds, and 41–91% of it in optimized -builds ([The price](#the-price)). +numbers, including where it loses. The price is compile time: two small example programs take 36–68% longer to compile. +A precompiled header or a C++20 module wins back most or all of that in debug builds, and 41% to all of it in +optimized builds ([The price](#the-price)). This post is about *how*. Hardly any of the techniques are new: we borrowed them from [simdjson](https://github.com/simdjson/simdjson), [yyjson](https://github.com/ibireme/yyjson), @@ -61,8 +61,8 @@ A](#a-test-files) says what makes each of them hard.

Speedup of 3.13.0 over 3.12.0 for a selection of workloads: the old time divided by the -new one, Google Benchmark suite on an Apple M1 Max, median of 8 runs. More is better; the vertical line at 1× is 3.12.0. -The times are in [Appendix B](#b-3120-against-3130).

+new one, Google Benchmark suite on an Apple M1 Max, median of 12 runs. More is better; the vertical line at 1× is +3.12.0. The times are in [Appendix B](#b-3120-against-3130).

The rows above are chosen to show the range. All 182 benchmarks of the suite: @@ -70,12 +70,13 @@ The rows above are chosen to show the range. All 182 benchmarks of the suite: --8<-- "images/perf_blog_distribution.svg" -

How many of the suite's 182 benchmarks got how much faster. The one below 1× is copying -`citm_catalog.json` without destroying the copy. Every row is in [Appendix B](#b-3120-against-3130).

+

How many of the suite's 182 benchmarks got how much faster. The two below 1× copy +`citm_catalog.json` and `twitter.json` without destroying the copy (0.95× and 0.99×). Every row is in [Appendix +B](#b-3120-against-3130).

The median benchmark got 2.9× as fast. On an Intel MacBook Pro (Skylake), the median is 2.9× as well, but parsing -floating-point numbers gained more (`canada.json` 6.1× instead of 3.4×) and writing integers less (`dump()` 1.4–2.3× -instead of 2.2–3.8×); [Appendix B](#b-3120-against-3130) has both columns. Copying and comparing values gained the +floating-point numbers gained more (`canada.json` 6.1× instead of 4.1×) and writing integers less (`dump()` 1.4–2.3× +instead of 2.2–3.7×); [Appendix B](#b-3120-against-3130) has both columns. Copying and comparing values gained the least, and the largest gains come from fixing algorithms rather than tuning them (theme 7). @@ -105,7 +106,7 @@ Eight themes did most of the work: ## Where the time went: a timeline The suite compares two points. To see which change did what, we compiled one small benchmark against the header of each -of the 351 commits on `develop` that changed `json.hpp` or `json_view.hpp` from 3.12.0 to November 3, and of 3.13.0, and +of the 358 commits on `develop` that changed `json.hpp` or `json_view.hpp` from 3.12.0 to November 7, and of 3.13.0, and ran all of them interleaved. Four of the eight workloads we followed: - `parse()` of `citm_catalog.json`: the lexer's structure and whitespace handling, and building many small objects; @@ -132,8 +133,8 @@ larger steps mean something. -

Speedup over 3.12.0 after each of the 351 commits that changed the headers up to November -3, from 3.12.0 (left) to 3.13.0 (right). More is better; each point is the median of 4 runs of one build, taken in +

Speedup over 3.12.0 after each of the 358 commits that changed the headers up to November +7, from 3.12.0 (left) to 3.13.0 (right). More is better; each point is the median of 4 runs of one build, taken in random order (with 4 runs, the mean of the two middle ones). The badges are theme numbers; "U" is a UTF-8 check that came and went. The other four workloads, and every labeled step with its pull request and size, are in [Appendix C](#c-the-timeline).

@@ -317,7 +318,10 @@ Before the stream refills its get area, the adapter appends the part of the curr buffer; only an error message ever reads the token text back. Nothing is read ahead: the adapter advances `gptr()` by exactly what the lexer consumes, so the stream is left where it was before. On an M1 Max, parsing from an `std::ifstream` took 1.8–2.5× as long as reading the file into a string and parsing that, in the pull request's -measurement before the change; now it takes just 9–16% longer. +measurement before the change, and 9–16% longer after it. Since then, parsing a string got faster still, because the +fused parser of [One loop instead of two](#one-loop-instead-of-two) needs input in one block of memory, so a stream now +takes 25–38% longer than the string again (the file read with one `read()`, parsing `twitter.json`, +`citm_catalog.json`, and `canada.json`). ### `FILE*` @@ -1382,9 +1386,8 @@ operating system. It is not neutral in every detail, though: fresh memory costs page faults. yyjson's normal read makes the same copy internally, which is why both ways take about as long. A server that validates a request and then passes it on needs the copy. A program that reads a file into a buffer it owns can skip it, so we also timed the in-place ways with the copy made before the timer starts. On the Mac, - yyjson then comes 2–4% closer and stays second, and on `twitter.json` it sums and selects 2–3% faster than - `json_document`. On x86-64, it ties `json_document` in *sum* with Clang and takes 1.06× and 1.19× its time with GCC 16 - and GCC 13. + yyjson then comes 3–5% closer, and on `twitter.json` it validates and selects 1–2% faster than `json_document`. On + x86-64, it ties `json_document` in *sum* with Clang and takes 1.04× and 1.15× its time with GCC 16 and GCC 13. - `json_document` reads the string in place and keeps pointing into it. A document that owns its text ([`parse_copy()`](../../api/basic_json_document/parse_copy.md)) costs one copy more: 3–5% on the Mac. - Reading from files and streams is not part of the comparison. @@ -1435,12 +1438,13 @@ lists only x86-64 Linux; we show it on the Mac anyway.

### Results on the Mac On the Apple M1 Max, among the ways that reject all four broken inputs, `json_document` has the lowest mean on the four -files in all six use cases, and yyjson is second in every column. That includes editing, where the editable document is +files in all six use cases, and yyjson is the next library in every column; in *validate*, `json::accept()` comes in +between (1.38× against yyjson's 1.41×). That includes editing, where the editable document is faster than yyjson's mutable document: the speed doesn't depend on being read-only. Some caveats belong next to that: -- **The lead is not the same on every file.** On `twitter.json`, yyjson is within 3–7% in *validate*, *sum*, and +- **The lead is not the same on every file.** On `twitter.json`, yyjson is within 4–7% in *validate*, *sum*, and *select*. Most of the lead comes from `citm_catalog.json`, the floats of `canada.json` (next point) and the size of `jeopardy.json`. - **Floats are converted only when read.** That helps `json_document` in *validate* and *select* on `canada.json`, where @@ -1448,44 +1452,45 @@ Some caveats belong next to that: only Boost.JSON gains much: it validates `canada.json` in 47% of the time. *sum* reads every number, so it is the fair comparison for floats; there, `json_document` is still slightly ahead of yyjson. - **Checking less pays in *select*.** If the input needn't be checked fully, simdjson's On-Demand API and Glaze reading - into structs select in 0.75× and 0.82× `json_document`'s time (Glaze is faster only on `citm_catalog.json` and - `canada.json`), and in 0.54–0.62× on x86-64: the right halves of the *select* column. + into structs select in 0.76× and 0.81× `json_document`'s time (Glaze is faster only on `citm_catalog.json` and + `canada.json`), and in 0.55–0.61× on x86-64: the right halves of the *select* column. - **Indentation.** Two of the four files are indented, which theme 2 helps. On minified copies of `twitter.json` and - `citm_catalog.json`, yyjson comes closer in *sum* (1.11 → 1.04) but not in *validate* (1.28 → 1.27), and + `citm_catalog.json`, yyjson comes closer in *sum* (1.11 → 1.01) and a little in *validate* (1.27 → 1.24), and `json_document` stays first. - **Number text can be copied.** With [`number_format::source`](../../api/basic_json_view/number_format.md), `json_document` writes each number by copying its text instead of formatting it, and yyjson and RapidJSON can read numbers as text and write them back unchanged. The output keeps the source's spelling of each number, which is all a - minifier needs. It makes writing `canada.json` with `json_document` 4.0× as fast and minifying it 1.9× as fast; the + minifier needs. It makes writing `canada.json` with `json_document` 4.1× as fast and minifying it 1.9× as fast; the "N" halves of *edit*, *minify*, and *write* show it. -- **Small documents.** On a 2.5 KB message, the fastest libraries take about a microsecond on the Mac and 1.2–2 on - x86-64. yyjson validates and sums it as fast as `json_document` on the Mac, and with GCC 16 on x86-64, simdjson and - yyjson sum it slightly faster. +- **Small documents.** On a 2.5 KB message, the fastest libraries take about a microsecond on the Mac and 1.1–2 on + x86-64. yyjson validates and sums it as fast as `json_document` on the Mac, and with GCC on x86-64, simdjson and + yyjson sum it as fast. ### Reading into structs A view can be converted into your own types with the same [`from_json()`](../../features/arbitrary_types.md) as `json`, including the ones the [`NLOHMANN_DEFINE_TYPE_*`](../../api/macros/nlohmann_define_type_non_intrusive.md) macros generate. That is as fast as picking the fields by hand from the view; only for the many small records of -`jeopardy.json` does it take 23% longer. On the Mac, Glaze, serde_json, and Boost.JSON's `parse_into`, reading into the -same structs and checking everything, take 1.7×, 2.2×, and 3.1× as long (geometric mean over the four files). On a +`jeopardy.json` does it take 22% longer. On the Mac, Glaze, serde_json, and Boost.JSON's `parse_into`, reading into the +same structs and checking everything, take 1.7×, 2.3×, and 3.1× as long (geometric mean over the four files). On a `json` value, reading into the structs takes about as long as `json::parse()` alone. ### nlohmann/json without `json_document` And nlohmann/json without `json_document`? `json` builds a tree of separate allocations, and it shows: for *select*, *edit*, and *minify* it takes several times as long as `json_document`, like Boost.JSON and RapidJSON. Where no tree is -needed, it is closer: on the Mac, a SAX handler is on par with Boost.JSON's, and -[`json::accept()`](../../api/basic_json/accept.md) takes 6% longer than Boost.JSON without number conversion (on x86-64, -Boost.JSON validates in 0.65–0.69× and sums in 0.75–0.79× the time). `dump()` writes faster than Boost.JSON, RapidJSON -and serde_json, and about as fast as Glaze. +needed, the fused parser ([One loop instead of two](#one-loop-instead-of-two)) puts it among the fastest: +[`json::accept()`](../../api/basic_json/accept.md) validates the four files in 1.38× `json_document`'s time on the Mac, +ahead of every other library, and a SAX handler sums them in 1.34×, behind only yyjson and simdjson. Boost.JSON takes +1.8× and 1.5× as long as `json` there, and 1.2–1.4× and 1.1–1.3× on x86-64. `dump()` writes faster than Boost.JSON, +RapidJSON and serde_json, and about as fast as Glaze. Much of Boost.JSON's lead in building a tree comes from its allocator: here it builds the tree in a -`monotonic_resource`, an arena that is freed in one go, which saves it 28–41%. With its default allocator, which +`monotonic_resource`, an arena that is freed in one go, which saves it 27–40%. With its default allocator, which allocates every string, array, and object on its own as `json` does, `boost::json::parse()` with precise numbers takes -as long as `json::parse()` on `twitter.json`, 5% longer on `citm_catalog.json`, and 17% less time on `canada.json` (on -the Mac, freeing the tree included). +13–17% longer than `json::parse()` on `twitter.json`, 19–20% longer on `citm_catalog.json`, and 2% less time on +`canada.json` (on the Mac, freeing the tree included). ### Results on x86-64 @@ -1503,30 +1508,34 @@ compilers disagree only about *sum*. the figure above. Less is better; hover over or tap a cell for the times and the way. The figures for GCC 13 and Clang 23 are in [Appendix E](#e-comparison-with-other-libraries).

-`json_document` has the lowest mean in five of the six columns with GCC, where simdjson is ahead in *sum*, and in all -six with Clang. This machine is noisy, though: between two runs, a library's time relative to `json_document`'s moved by -up to 9–10% (95th percentile; 2.5% on the Mac). So Clang's 7% lead in *sum* over sonic-rs is no result, and without -`twitter.json`, sonic-rs is first. In *validate*, the next library takes 1.8–1.9× as long, or 1.6–1.7× if every library -may reuse its parser, because validating no longer builds an index (theme -8). Behind those means, it loses on single files: +`json_document` has the lowest mean in five of the six columns with every compiler. The exception is *sum*, where +simdjson is ahead with GCC, and `json` with a SAX handler with GCC 13 and Clang 23 (with Clang by 5%, all of it on +`jeopardy.json`; below). This machine is noisy, though: between two runs, a library's time relative to +`json_document`'s moved by up to 7–8% (95th percentile; 2.4% on the Mac), so a lead of 5% is no result. In *validate*, +the next library takes 1.8–2.0× as long, or 1.6–1.7× if every library may reuse its parser, because validating no +longer builds an index (theme 8). The only way in between is +`json::accept()` at 1.3–1.7×, which builds nothing either ([One loop instead of two](#one-loop-instead-of-two)). +Behind those means, `json_document` loses on single files: - **One pass over every value, with GCC.** simdjson's On-Demand API sums all numbers of `twitter.json`, - `citm_catalog.json`, and `canada.json` in 0.83–0.99× `json_document`'s time with GCC 16 (0.86–0.91× with GCC 13). With + `citm_catalog.json`, and `canada.json` in 0.76–0.97× `json_document`'s time with GCC 16 (0.79–0.92× with GCC 13). With Clang, `json_document` is ahead there, except on `canada.json`, where yyjson, which converts the floats during the - parse, is faster than converting them on access. + parse, is faster than converting them on access, and on `citm_catalog.json`, where `json`'s SAX handler and + Boost.JSON's are 1–3% faster. - **Fresh large documents.** For the 56 MB `jeopardy.json`, a fresh document needs a fresh 52 MB index, and on Linux the page faults of that much new memory are a large part of the time: copying the file into fresh memory alone takes about 50% as long as `json_document`'s parse. Boost.JSON's SAX parser and sonic-rs, which build nothing, sum it in - 0.66–0.72× the time. Reusing the document cuts `json_document`'s time by 40–43%, to 51–53 ms, less than sonic-rs's 60 - ms. Validating needs no index: `json_document::accept()` takes 35 ms, and no library validates `jeopardy.json` faster, - even reused (the next is simdjson's reused parser at 47–49 ms). On the Mac, a fresh document costs hardly more than a - reused one. -- **Writing floats.** yyjson writes `canada.json` in 0.87–0.97× the time (and Glaze, with GCC 13, in 0.96×), because - `json_document` first converts most floats from their text. Writing the source text instead (`number_format::source`, - the "N" half) avoids that. -- **simdjson's DOM.** It selects from `citm_catalog.json` 16% faster with GCC 16 and 1–4% faster with GCC 13 and Clang - 23, and from `twitter.json` 1–6% faster. Boost.JSON, Glaze, sonic-cpp, and yyjson are 1–3% ahead in a few more cells, - which is within the noise. + 0.64–0.71× the time, and `json`'s SAX handler in 0.70–0.75×. Reusing the document cuts `json_document`'s time by + 41–43%, to 51 ms, less than sonic-rs's 60 ms. Validating needs no index: `json_document::accept()` takes 33–35 ms, + `json::accept()` 39–40 ms, and no other library validates `jeopardy.json` faster, even reused (the next is simdjson's + reused parser at 48–52 ms). On the Mac, a fresh document costs hardly more than a reused one. +- **Writing floats.** yyjson writes `canada.json` in 0.84–0.93× the time (and Glaze with GCC 13 and `json`'s `dump()` + with GCC 16, which start from `double`s, in 0.98× and 0.99×), because `json_document` first converts most floats from + their text. Writing the source text instead (`number_format::source`, the "N" half) avoids that. +- **simdjson's DOM.** It selects from `citm_catalog.json` 19% faster with GCC 16 and 7–13% faster with GCC 13 and Clang + 23, and from `twitter.json` 2–4% faster with GCC. Boost.JSON, Glaze, sonic-rs, sonic-cpp, and yyjson are ahead in a + few more cells, by 1–10%: summing `citm_catalog.json` (Boost.JSON with GCC), and selecting from or writing + `jeopardy.json`. Most of that is within the noise. The full tables, with each library's variants, are in [Appendix E](#e-comparison-with-other-libraries). @@ -1535,7 +1544,8 @@ The full tables, with each library's variants, are in [Appendix E](#e-comparison The four files are the ones 3.13.0 was tuned on, so we also ran *validate*, *sum*, *minify*, and *write* on the 19 other files of simdjson's [`jsonexamples`](https://github.com/simdjson/simdjson-data/tree/master/jsonexamples). By geometric mean, `json_document` stays the fastest in *validate*, *minify*, and *write* on every compiler, and in *sum* with Clang -and on the Mac; with GCC, simdjson sums in 0.86–0.87× its time. File by file, for *validate*: +and on the Mac; with GCC, simdjson sums in 0.87–0.88× its time. `json::accept()` validates them in 1.4–1.6× the time +of `json_document` on x86-64, close to simdjson (1.44–1.46×), the fastest other library. File by file, for *validate*:
--8<-- "images/perf_blog_heldout.svg" @@ -1545,8 +1555,10 @@ and on the Mac; with GCC, simdjson sums in 0.86–0.87× its time. File by file, fastest other library's, per file; below 1.0× it is the fastest. Less is better. The right column names the next library on x86-64 (GCC 16.2).

-`json_document` validates all 19 files fastest with GCC 16 and Clang 23, and 18 with GCC 13 and on the Mac: simdjson -validates `apache_builds` 8% faster on the Mac and `google_maps_api_response` 2% faster with GCC 13. Before validating +`json_document` validates 18 of the 19 files fastest with GCC 16, Clang 23, and on the Mac: simdjson ties on +`google_maps_api_response` with GCC 16, Boost.JSON on `mesh.pretty` with Clang 23, and simdjson validates +`apache_builds` 7% faster on the Mac. With GCC 13 it is 17: simdjson validates `google_maps_api_response` 6% faster, +and Boost.JSON `mesh.pretty` 10% faster (1% in the first of our two runs on November 7). Before validating without an index (theme 8) and skipping fraction digits 16 bytes at a time (theme 2), Boost.JSON validated the number-heavy files up to 1.5× as fast on x86-64. @@ -1581,8 +1593,8 @@ the pull requests that tried them.

## The price -None of this is free at compile time. `json.hpp` grew from 25,526 to 46,630 lines (`json_view.hpp` is a separate header -of 11,898 lines that you only pay for if you include it). To see what that means for a program, we compiled two small +None of this is free at compile time. `json.hpp` grew from 25,526 to 48,025 lines (`json_view.hpp` is a separate header +of 11,909 lines that you only pay for if you include it). To see what that means for a program, we compiled two small ones with both versions: - `count_numbers` reads `twitter.json` and adds up all of its numbers, like the *sum* use case in [How it @@ -1602,16 +1614,16 @@ better: Apple clang 21 and GCC 16.2, CPU time of the compiler, median of 5 inter one-off cost of building the precompiled header or the module is not included. Hover over a bar for the time in milliseconds; [Appendix G](#g-how-we-measured) has all times, the programs, and the commands.

-3.13.0 takes 34–62% longer to compile these programs. A good part of that is reading the header, and a precompiled +3.13.0 takes 36–68% longer to compile these programs. A good part of that is reading the header, and a precompiled header or a module does that once instead of in every translation unit: - **In debug builds,** which are what you wait for while you edit, a precompiled 3.13.0 compiles faster than 3.12.0 with - Apple clang, and within 8–15% of it with GCC. + Apple clang, and within 12–15% of it with GCC. - **In optimized builds,** less of the increase goes away, because the optimizer still works through all the code a - program instantiates. A precompiled header or a module wins back 41–91% of it. -- **The one-off cost** is 1.0 s (Apple clang) or 2.6 s (GCC) to build the precompiled header, and 1.6 s or 2.5 s to + program instantiates. A precompiled header or a module wins back 41% to all of it. +- **The one-off cost** is 0.9 s (Apple clang) or 2.3 s (GCC) to build the precompiled header, and 1.4 s or 2.3 s to build the module, once per set of compiler flags. A precompiled header pays for itself after two to four translation - units, a module after three to five. + units, a module after three to six. - **Modules have caveats.** Apple clang needs `-fcxx-modules`, [module support](../../features/modules.md) still depends heavily on the compiler version, and macros don't cross a module boundary: with `import nlohmann.json;`, the `NLOHMANN_DEFINE_TYPE_*` macros aren't available, which is why `server_config` writes `to_json()` and `from_json()` by @@ -1706,27 +1718,27 @@ The rows of the first chart: | workload | 3.12.0 | 3.13.0 | speedup | Intel | | --- | --: | --: | --: | --: | -| `json::parse()` of `twitter.json` | 3.30 ms | 1.05 ms | 3.1× | 2.6× | -| `json::parse()` of `citm_catalog.json` | 7.56 ms | 1.78 ms | 4.3× | 3.5× | -| `json::parse()` of `canada.json` | 15.5 ms | 4.63 ms | 3.4× | 6.1× | -| `json::parse()` of `canada.json`, indented by 4 spaces | 35.0 ms | 5.37 ms | 6.5× | 8.0× | -| `ordered_json::parse()` of `citm_catalog.json` | 11.5 ms | 1.68 ms | 6.9× | 6.6× | -| `json::parse()` of `twitter.json` from an `std::ifstream` | 3.43 ms | 1.37 ms | 2.5× | 2.3× | -| `json::parse()` of `citm_catalog.json` from a `FILE*` | 36.0 ms | 7.58 ms | 4.7× | 5.7× | -| `json::accept()` of `citm_catalog.json` | 6.53 ms | 0.923 ms | 7.1× | 8.4× | -| `dump()` of `twitter.json` | 1.44 ms | 0.214 ms | 6.7× | 5.7× | -| `dump()` of `canada.json` | 6.95 ms | 2.34 ms | 3.0× | 3.3× | -| `dump(4)` of `citm_catalog.json` | 1.99 ms | 0.423 ms | 4.7× | 4.1× | -| `to_cbor()` of `twitter.json` | 0.659 ms | 0.143 ms | 4.6× | 6.7× | -| `from_cbor()` of `twitter.json` from memory | 3.23 ms | 0.953 ms | 3.4× | 2.8× | -| `from_cbor()` of `twitter.json` from a `FILE*` | 10.4 ms | 1.57 ms | 6.6× | 6.5× | -| `diff()` of `canada.json` with every eighth scalar changed | 39.8 ms | 3.80 ms | 10.5× | 11.2× | -| iterating over every value of `canada.json` | 0.897 ms | 0.328 ms | 2.7× | 2.0× | -| copying `citm_catalog.json` and destroying the copy | 1.70 ms | 1.51 ms | 1.13× | 1.12× | -| `==` of `citm_catalog.json` and a copy | 0.280 ms | 0.263 ms | 1.06× | 0.95× | +| `json::parse()` of `twitter.json` | 3.21 ms | 0.921 ms | 3.5× | 2.6× | +| `json::parse()` of `citm_catalog.json` | 7.40 ms | 1.45 ms | 5.1× | 3.5× | +| `json::parse()` of `canada.json` | 15.2 ms | 3.73 ms | 4.1× | 6.1× | +| `json::parse()` of `canada.json`, indented by 4 spaces | 34.2 ms | 4.61 ms | 7.4× | 8.0× | +| `ordered_json::parse()` of `citm_catalog.json` | 11.0 ms | 1.34 ms | 8.2× | 6.6× | +| `json::parse()` of `twitter.json` from an `std::ifstream` | 3.40 ms | 1.38 ms | 2.5× | 2.3× | +| `json::parse()` of `citm_catalog.json` from a `FILE*` | 35.0 ms | 2.34 ms | 14.9× | 5.7× | +| `json::accept()` of `citm_catalog.json` | 6.48 ms | 0.474 ms | 13.7× | 8.4× | +| `dump()` of `twitter.json` | 1.41 ms | 0.214 ms | 6.6× | 5.7× | +| `dump()` of `canada.json` | 6.71 ms | 2.31 ms | 2.9× | 3.3× | +| `dump(4)` of `citm_catalog.json` | 1.95 ms | 0.422 ms | 4.6× | 4.1× | +| `to_cbor()` of `twitter.json` | 0.637 ms | 0.144 ms | 4.4× | 6.7× | +| `from_cbor()` of `twitter.json` from memory | 3.09 ms | 0.879 ms | 3.5× | 2.8× | +| `from_cbor()` of `twitter.json` from a `FILE*` | 9.92 ms | 1.07 ms | 9.2× | 6.5× | +| `diff()` of `canada.json` with every eighth scalar changed | 39.2 ms | 3.75 ms | 10.4× | 11.2× | +| iterating over every value of `canada.json` | 0.874 ms | 0.445 ms | 2.0× | 2.0× | +| copying `citm_catalog.json` and destroying the copy | 1.65 ms | 1.49 ms | 1.11× | 1.12× | +| `==` of `citm_catalog.json` and a copy | 0.264 ms | 0.261 ms | 1.01× | 0.95× |

Time per call with 3.12.0 and 3.13.0, Google Benchmark suite on an Apple M1 Max, -median of 8 runs; the speedup is the old time divided by the new one. The Intel column is the speedup on the Intel +median of 12 runs; the speedup is the old time divided by the new one. The Intel column is the speedup on the Intel MacBook Pro of [Appendix G](#g-how-we-measured). The parse rows do not include destroying the result (the suite pauses the timer for that).

@@ -1734,188 +1746,188 @@ the timer for that).

| benchmark | 3.12.0 | 3.13.0 | speedup | Intel | | --- | --: | --: | --: | --: | - | `Accept/canada` | 12.9 ms | 2.35 ms | 5.51× | 13× | - | `Accept/citm_catalog` | 6.53 ms | 923 µs | 7.07× | 8.45× | - | `Accept/floats` | 116 ms | 22.7 ms | 5.10× | 12.2× | - | `Accept/jeopardy` | 221 ms | 59.3 ms | 3.72× | 6.64× | - | `Accept/signed_ints` | 117 ms | 28.3 ms | 4.15× | 4.99× | - | `Accept/small_signed_ints` | 57.5 ms | 18 ms | 3.19× | 3.90× | - | `Accept/twitter` | 2.51 ms | 484 µs | 5.20× | 6.89× | - | `Accept/unsigned_ints` | 116 ms | 29.7 ms | 3.91× | 4.95× | - | `BinaryToCbor/1024` | 298 ns | 107 ns | 2.79× | 3.67× | - | `BinaryToCbor/128` | 249 ns | 117 ns | 2.13× | 2.27× | - | `BinaryToCbor/16384` | 952 ns | 414 ns | 2.30× | 3.46× | - | `BinaryToCbor/16` | 245 ns | 49.6 ns | 4.93× | 6.33× | - | `BinaryToCbor/2048` | 328 ns | 125 ns | 2.62× | 3.74× | - | `BinaryToCbor/256` | 265 ns | 90.9 ns | 2.91× | 3.33× | - | `BinaryToCbor/32768` | 1.54 µs | 803 ns | 1.92× | 2.11× | - | `BinaryToCbor/32` | 252 ns | 50.4 ns | 4.99× | 6.24× | - | `BinaryToCbor/4096` | 407 ns | 177 ns | 2.29× | 3.48× | - | `BinaryToCbor/512` | 290 ns | 102 ns | 2.84× | 3.02× | - | `BinaryToCbor/64` | 255 ns | 84.6 ns | 3.01× | 3.78× | - | `BinaryToCbor/8192` | 514 ns | 256 ns | 2.01× | 3.30× | - | `BinaryToCbor/8` | 248 ns | 49.4 ns | 5.01× | 6.18× | - | `Copy/canada` | 3.78 ms | 2.93 ms | 1.29× | 1.17× | - | `Copy/citm_catalog` | 1.7 ms | 1.51 ms | 1.13× | 1.12× | - | `Copy/twitter` | 840 µs | 767 µs | 1.09× | 1.14× | - | `CopyAssign/canada` | 3.86 ms | 2.94 ms | 1.31× | 1.19× | - | `CopyAssign/citm_catalog` | 1.77 ms | 1.59 ms | 1.11× | 1.12× | - | `CopyAssign/twitter` | 885 µs | 791 µs | 1.12× | 1.07× | - | `CopyOnly/canada` | 1.6 ms | 1.58 ms | 1.02× | 1.00× | - | `CopyOnly/citm_catalog` | 786 µs | 817 µs | 0.96× | 0.93× | - | `CopyOnly/twitter` | 424 µs | 421 µs | 1.01× | 1.02× | - | `CopyRing/canada` | 3.86 ms | 3 ms | 1.29× | 1.20× | - | `CopyRing/citm_catalog` | 1.84 ms | 1.61 ms | 1.15× | 1.20× | - | `CopyRing/twitter` | 952 µs | 818 µs | 1.16× | 1.15× | - | `DestroyOnly/canada` | 2.22 ms | 1.4 ms | 1.58× | 1.32× | - | `DestroyOnly/citm_catalog` | 926 µs | 711 µs | 1.30× | 1.20× | - | `DestroyOnly/twitter` | 416 µs | 336 µs | 1.24× | 1.15× | - | `Diff/canada` | 39.8 ms | 3.8 ms | 10.5× | 11.2× | - | `Diff/citm_catalog` | 7.19 ms | 1.12 ms | 6.40× | 7.78× | - | `Diff/twitter` | 5.11 ms | 661 µs | 7.73× | 8.79× | - | `Dump/canada / -` | 6.95 ms | 2.34 ms | 2.98× | 3.34× | - | `Dump/canada / 4` | 9.1 ms | 3.1 ms | 2.93× | 2.82× | - | `Dump/citm_catalog / -` | 1.42 ms | 296 µs | 4.81× | 3.93× | - | `Dump/citm_catalog / 4` | 1.99 ms | 423 µs | 4.70× | 4.09× | - | `Dump/floats / -` | 64.3 ms | 23.8 ms | 2.71× | 2.50× | - | `Dump/floats / 4` | 72.6 ms | 24.6 ms | 2.95× | 2.71× | - | `Dump/jeopardy / -` | 207 ms | 31.7 ms | 6.51× | 3.75× | - | `Dump/jeopardy / 4` | 228 ms | 35.4 ms | 6.45× | 2.61× | - | `Dump/signed_ints / -` | 24.1 ms | 10.7 ms | 2.24× | 1.44× | - | `Dump/signed_ints / 4` | 32.5 ms | 11.3 ms | 2.87× | 2.01× | - | `Dump/small_signed_ints / -` | 18.1 ms | 8.12 ms | 2.23× | 1.81× | - | `Dump/small_signed_ints / 4` | 25.5 ms | 8.81 ms | 2.90× | 2.21× | - | `Dump/twitter / -` | 1.44 ms | 214 µs | 6.70× | 5.75× | - | `Dump/twitter / 4` | 1.63 ms | 253 µs | 6.45× | 5.18× | - | `Dump/unsigned_ints / -` | 24 ms | 8.12 ms | 2.95× | 1.58× | - | `Dump/unsigned_ints / 4` | 32.3 ms | 8.59 ms | 3.76× | 2.30× | - | `Equal/canada` | 474 µs | 349 µs | 1.36× | 1.38× | - | `Equal/citm_catalog` | 280 µs | 263 µs | 1.06× | 0.95× | - | `Equal/twitter` | 146 µs | 131 µs | 1.11× | 1.02× | - | `Flatten/canada` | 29.4 ms | 11.1 ms | 2.65× | 2.68× | - | `Flatten/citm_catalog` | 6.72 ms | 3.07 ms | 2.19× | 2.45× | - | `Flatten/twitter` | 3.66 ms | 2.11 ms | 1.74× | 2.19× | - | `FlattenOrdered/citm_catalog` | 262 ms | 1.43 ms | 184× | 185× | - | `FlattenOrdered/twitter` | 51.3 ms | 890 µs | 57.6× | 46.1× | - | `FromBinaryBuffer/bjdata / canada` | 8.82 ms | 4.17 ms | 2.12× | 2.02× | - | `FromBinaryBuffer/bjdata / twitter` | 3.32 ms | 976 µs | 3.40× | 2.87× | - | `FromBinaryBuffer/bjdata_optimized / canada` | 9.24 ms | 2.48 ms | 3.73× | 3.51× | - | `FromBinaryBuffer/bjdata_optimized / twitter` | 3.31 ms | 986 µs | 3.35× | 2.86× | - | `FromBinaryBuffer/bson / canada` | 10 ms | 4.32 ms | 2.33× | 2.20× | - | `FromBinaryBuffer/bson / citm_catalog` | 4.08 ms | 1.61 ms | 2.54× | 2.59× | - | `FromBinaryBuffer/bson / twitter` | 3.26 ms | 937 µs | 3.48× | 3.08× | - | `FromBinaryBuffer/cbor / canada` | 8.9 ms | 2.12 ms | 4.21× | 3.86× | - | `FromBinaryBuffer/cbor / citm_catalog` | 3.94 ms | 1.45 ms | 2.71× | 2.81× | - | `FromBinaryBuffer/cbor / floats` | 30.5 ms | 5.48 ms | 5.56× | 3.64× | - | `FromBinaryBuffer/cbor / jeopardy` | 373 ms | 115 ms | 3.25× | 3.43× | - | `FromBinaryBuffer/cbor / signed_ints` | 36.7 ms | 9.89 ms | 3.71× | 2.37× | - | `FromBinaryBuffer/cbor / twitter` | 3.23 ms | 953 µs | 3.39× | 2.83× | - | `FromBinaryBuffer/msgpack / canada` | 8.86 ms | 2.12 ms | 4.17× | 3.92× | - | `FromBinaryBuffer/msgpack / citm_catalog` | 3.85 ms | 1.45 ms | 2.65× | 2.94× | - | `FromBinaryBuffer/msgpack / jeopardy` | 373 ms | 111 ms | 3.36× | 3.51× | - | `FromBinaryBuffer/msgpack / twitter` | 3.24 ms | 955 µs | 3.39× | 3.02× | - | `FromBinaryBuffer/ubjson / canada` | 8.84 ms | 4.2 ms | 2.10× | 2.13× | - | `FromBinaryBuffer/ubjson / citm_catalog` | 4.07 ms | 1.79 ms | 2.28× | 2.44× | - | `FromBinaryBuffer/ubjson / jeopardy` | 379 ms | 117 ms | 3.24× | 3.40× | - | `FromBinaryBuffer/ubjson / twitter` | 3.3 ms | 981 µs | 3.36× | 2.90× | - | `FromBinaryBuffer/ubjson_optimized / canada` | 8.89 ms | 2.43 ms | 3.66× | 3.67× | - | `FromBinaryBuffer/ubjson_optimized / twitter` | 3.3 ms | 975 µs | 3.38× | 2.88× | - | `FromBinaryFile/bjdata / twitter` | 10.9 ms | 1.95 ms | 5.61× | 5.89× | - | `FromBinaryFile/bson / twitter` | 10.7 ms | 1.85 ms | 5.80× | 6.21× | - | `FromBinaryFile/cbor / canada` | 14.9 ms | 4.49 ms | 3.32× | 3.68× | - | `FromBinaryFile/cbor / twitter` | 10.4 ms | 1.57 ms | 6.59× | 6.46× | - | `FromBinaryFile/ubjson / canada` | 14.3 ms | 6.43 ms | 2.23× | 2.50× | - | `FromBinaryFile/ubjson / twitter` | 10.9 ms | 1.97 ms | 5.54× | 5.90× | - | `FromBinaryShape/containers / bjdata` | 14.7 ms | 7.23 ms | 2.03× | 2.05× | - | `FromBinaryShape/containers / bson` | 17.6 ms | 7.89 ms | 2.23× | 2.20× | - | `FromBinaryShape/containers / cbor` | 14.6 ms | 4.16 ms | 3.52× | 3.49× | - | `FromBinaryShape/containers / msgpack` | 14.6 ms | 3.89 ms | 3.75× | 3.52× | - | `FromBinaryShape/containers / ubjson_optimized` | 15.5 ms | 4.56 ms | 3.40× | 3.34× | - | `FromBinaryShape/containers / ubjson` | 15 ms | 7.24 ms | 2.07× | 2.03× | - | `FromBinaryShape/nested / bjdata` | 96.8 µs | 38.3 µs | 2.53× | 2.50× | - | `FromBinaryShape/nested / bson` | 101 µs | 42.6 µs | 2.38× | 2.42× | - | `FromBinaryShape/nested / cbor` | 94.9 µs | 35.8 µs | 2.65× | 2.57× | - | `FromBinaryShape/nested / msgpack` | 92.6 µs | 35.1 µs | 2.64× | 2.60× | - | `FromBinaryShape/nested / ubjson` | 96.1 µs | 38.3 µs | 2.51× | 2.50× | - | `FromBinaryShape/scalars / bjdata` | 25.3 ms | 11.6 ms | 2.18× | 2.22× | - | `FromBinaryShape/scalars / cbor` | 26.2 ms | 5.89 ms | 4.45× | 3.56× | - | `FromBinaryShape/scalars / msgpack` | 25.1 ms | 5.65 ms | 4.44× | 3.69× | - | `FromBinaryShape/scalars / ubjson` | 25.3 ms | 11.6 ms | 2.18× | 2.03× | - | `FromCborChunkedString/10000 chunks` | 91.8 µs | 82.9 µs | 1.11× | 1.09× | - | `FromMsgpack/canada` | 14.9 ms | 4.56 ms | 3.26× | 3.63× | - | `FromMsgpack/citm_catalog` | 9.36 ms | 2.26 ms | 4.14× | 4.60× | - | `FromMsgpack/floats` | 61.3 ms | 28.7 ms | 2.14× | 2.89× | - | `FromMsgpack/jeopardy` | 1,170 ms | 190 ms | 6.14× | 6.80× | - | `FromMsgpack/signed_ints` | 63.9 ms | 32.9 ms | 1.94× | 2.44× | - | `FromMsgpack/small_signed_ints` | 64.5 ms | 34.4 ms | 1.87× | 2.33× | - | `FromMsgpack/twitter` | 10.3 ms | 1.49 ms | 6.92× | 6.76× | - | `FromMsgpack/unsigned_ints` | 57.8 ms | 28.3 ms | 2.04× | 2.77× | - | `GetArray>` | 2.27 µs | 654 ns | 3.48× | 5.38× | - | `GetArray>` | 8.29 µs | 1.18 µs | 7.05× | 4.75× | - | `GetArray>` | 60 µs | 42.5 µs | 1.41× | 1.30× | - | `GetArray>` | 6.79 µs | 682 ns | 9.95× | 4.10× | - | `GetMap/citm_catalog` | 3.6 ms | 2.49 ms | 1.45× | 1.48× | - | `GetVectorDouble/floats` | 6.84 ms | 656 µs | 10.4× | 2.98× | - | `GetVectorInt/signed_ints` | 8.22 ms | 3.46 ms | 2.37× | 2.02× | - | `Iterate/canada` | 897 µs | 328 µs | 2.73× | 2.02× | - | `Iterate/citm_catalog` | 305 µs | 171 µs | 1.78× | 1.53× | - | `Iterate/twitter` | 90 µs | 62 µs | 1.45× | 1.20× | - | `JsonPointerAt/citm_catalog` | 1.9 ms | 1.18 ms | 1.61× | 1.47× | - | `JsonPointerAt/twitter` | 818 µs | 612 µs | 1.34× | 1.14× | - | `JsonPointerContains/citm_catalog` | 2.82 ms | 1.27 ms | 2.22× | 2.51× | - | `JsonPointerContains/twitter` | 1.34 ms | 629 µs | 2.12× | 2.16× | - | `JsonPointerParse/citm_catalog` | 5.81 ms | 2.25 ms | 2.59× | 3.74× | - | `JsonPointerParse/twitter` | 2.48 ms | 1.02 ms | 2.43× | 3.18× | - | `JsonPointerToString/citm_catalog` | 6.79 ms | 1.94 ms | 3.50× | 4.61× | - | `JsonPointerToString/twitter` | 2.23 ms | 834 µs | 2.67× | 2.66× | - | `ParseFILE/canada` | 54.2 ms | 14.7 ms | 3.69× | 5.46× | - | `ParseFILE/citm_catalog` | 36 ms | 7.58 ms | 4.74× | 5.73× | - | `ParseFILE/twitter` | 14.1 ms | 3.45 ms | 4.08× | 4.24× | - | `ParseFile/canada` | 18.3 ms | 6.47 ms | 2.83× | 4.67× | - | `ParseFile/citm_catalog` | 8.13 ms | 2.52 ms | 3.22× | 2.98× | - | `ParseFile/floats` | 131 ms | 48.1 ms | 2.73× | 5.68× | - | `ParseFile/jeopardy` | 338 ms | 162 ms | 2.09× | 2.23× | - | `ParseFile/signed_ints` | 129 ms | 46.2 ms | 2.78× | 3.41× | - | `ParseFile/small_signed_ints` | 64.7 ms | 33.4 ms | 1.94× | 2.57× | - | `ParseFile/twitter` | 3.43 ms | 1.37 ms | 2.49× | 2.33× | - | `ParseFile/unsigned_ints` | 124 ms | 47.4 ms | 2.61× | 3.52× | - | `ParseIndented/canada / 4` | 35 ms | 5.37 ms | 6.51× | 8.02× | - | `ParseIndented/citm_catalog / 4` | 7.52 ms | 1.81 ms | 4.15× | 3.49× | - | `ParseIndented/jeopardy / 4` | 345 ms | 133 ms | 2.59× | 2.46× | - | `ParseIndented/twitter / 4` | 3.72 ms | 1.13 ms | 3.30× | 2.60× | - | `ParseStreamValues/ndjson` | 7.16 ms | 3.77 ms | 1.90× | 2.06× | - | `ParseStreamValues/numbers` | 1.93 ms | 383 µs | 5.03× | 6.06× | - | `ParseString/canada` | 15.5 ms | 4.63 ms | 3.35× | 6.13× | - | `ParseString/citm_catalog` | 7.56 ms | 1.78 ms | 4.25× | 3.46× | - | `ParseString/floats` | 122 ms | 28.3 ms | 4.30× | 8.68× | - | `ParseString/jeopardy` | 317 ms | 131 ms | 2.42× | 2.32× | - | `ParseString/signed_ints` | 123 ms | 32 ms | 3.84× | 4.29× | - | `ParseString/small_signed_ints` | 62.7 ms | 25 ms | 2.51× | 3.38× | - | `ParseString/twitter` | 3.3 ms | 1.05 ms | 3.14× | 2.60× | - | `ParseString/unsigned_ints` | 121 ms | 32.9 ms | 3.68× | 4.23× | - | `ParseStringOrdered/canada` | 15.4 ms | 4.53 ms | 3.40× | 6.21× | - | `ParseStringOrdered/citm_catalog` | 11.5 ms | 1.68 ms | 6.85× | 6.59× | - | `ParseStringOrdered/jeopardy` | 374 ms | 113 ms | 3.29× | 3.38× | - | `ParseStringOrdered/twitter` | 4.6 ms | 949 µs | 4.85× | 4.93× | - | `Patch/canada` | 10.4 ms | 3.48 ms | 2.98× | 2.46× | - | `Patch/citm_catalog` | 2.75 ms | 1.74 ms | 1.58× | 1.38× | - | `Patch/twitter` | 1.58 ms | 889 µs | 1.78× | 1.45× | - | `SaxParse/canada` | 13.1 ms | 3.27 ms | 4.01× | 8.84× | - | `SaxParse/citm_catalog` | 6.55 ms | 967 µs | 6.77× | 6.85× | - | `SaxParse/twitter` | 2.53 ms | 483 µs | 5.24× | 5.91× | - | `ToCbor/canada` | 1.41 ms | 557 µs | 2.54× | 2.27× | - | `ToCbor/citm_catalog` | 1.05 ms | 259 µs | 4.04× | 5.60× | - | `ToCbor/floats` | 9.05 ms | 1.9 ms | 4.76× | 1.94× | - | `ToCbor/jeopardy` | 73.9 ms | 22.1 ms | 3.35× | 2.87× | - | `ToCbor/signed_ints` | 11.5 ms | 2.83 ms | 4.08× | 1.83× | - | `ToCbor/small_signed_ints` | 10.4 ms | 2.48 ms | 4.19× | 2.78× | - | `ToCbor/twitter` | 659 µs | 143 µs | 4.59× | 6.67× | - | `ToCbor/unsigned_ints` | 8.18 ms | 2.82 ms | 2.90× | 1.48× | - | `ToJsonStrings/copy` | 6.12 ms | 5.65 ms | 1.08× | 1.05× | - | `ToJsonStrings/move` | 6.13 ms | 3.13 ms | 1.96× | 1.78× | - | `Unflatten/canada` | 42.5 ms | 11.1 ms | 3.83× | 4.32× | - | `Unflatten/citm_catalog` | 10.2 ms | 3.62 ms | 2.81× | 3.32× | - | `Unflatten/twitter` | 4.75 ms | 2.21 ms | 2.15× | 2.42× | + | `Accept/canada` | 12.8 ms | 1.34 ms | 9.51× | 13× | + | `Accept/citm_catalog` | 6.48 ms | 474 µs | 13.7× | 8.45× | + | `Accept/floats` | 114 ms | 17.2 ms | 6.63× | 12.2× | + | `Accept/jeopardy` | 218 ms | 27.9 ms | 7.82× | 6.64× | + | `Accept/signed_ints` | 116 ms | 23.4 ms | 4.96× | 4.99× | + | `Accept/small_signed_ints` | 56.5 ms | 13.2 ms | 4.29× | 3.90× | + | `Accept/twitter` | 2.49 ms | 234 µs | 10.6× | 6.89× | + | `Accept/unsigned_ints` | 115 ms | 22.8 ms | 5.03× | 4.95× | + | `BinaryToCbor/1024` | 315 ns | 108 ns | 2.92× | 3.67× | + | `BinaryToCbor/128` | 266 ns | 114 ns | 2.33× | 2.27× | + | `BinaryToCbor/16384` | 950 ns | 418 ns | 2.27× | 3.46× | + | `BinaryToCbor/16` | 246 ns | 49.9 ns | 4.93× | 6.33× | + | `BinaryToCbor/2048` | 340 ns | 127 ns | 2.68× | 3.74× | + | `BinaryToCbor/256` | 280 ns | 91.8 ns | 3.05× | 3.33× | + | `BinaryToCbor/32768` | 1.58 µs | 838 ns | 1.88× | 2.11× | + | `BinaryToCbor/32` | 262 ns | 50.3 ns | 5.21× | 6.24× | + | `BinaryToCbor/4096` | 432 ns | 174 ns | 2.48× | 3.48× | + | `BinaryToCbor/512` | 297 ns | 102 ns | 2.91× | 3.02× | + | `BinaryToCbor/64` | 259 ns | 84.3 ns | 3.08× | 3.78× | + | `BinaryToCbor/8192` | 527 ns | 254 ns | 2.08× | 3.30× | + | `BinaryToCbor/8` | 251 ns | 49.9 ns | 5.02× | 6.18× | + | `Copy/canada` | 3.69 ms | 2.9 ms | 1.27× | 1.17× | + | `Copy/citm_catalog` | 1.65 ms | 1.49 ms | 1.11× | 1.12× | + | `Copy/twitter` | 811 µs | 729 µs | 1.11× | 1.14× | + | `CopyAssign/canada` | 3.74 ms | 2.94 ms | 1.27× | 1.19× | + | `CopyAssign/citm_catalog` | 1.65 ms | 1.54 ms | 1.08× | 1.12× | + | `CopyAssign/twitter` | 818 µs | 752 µs | 1.09× | 1.07× | + | `CopyOnly/canada` | 1.54 ms | 1.52 ms | 1.01× | 1.00× | + | `CopyOnly/citm_catalog` | 755 µs | 795 µs | 0.95× | 0.93× | + | `CopyOnly/twitter` | 407 µs | 410 µs | 0.99× | 1.02× | + | `CopyRing/canada` | 3.75 ms | 2.93 ms | 1.28× | 1.20× | + | `CopyRing/citm_catalog` | 1.75 ms | 1.55 ms | 1.13× | 1.20× | + | `CopyRing/twitter` | 876 µs | 784 µs | 1.12× | 1.15× | + | `DestroyOnly/canada` | 2.16 ms | 1.38 ms | 1.56× | 1.32× | + | `DestroyOnly/citm_catalog` | 896 µs | 682 µs | 1.31× | 1.20× | + | `DestroyOnly/twitter` | 406 µs | 327 µs | 1.24× | 1.15× | + | `Diff/canada` | 39.2 ms | 3.75 ms | 10.4× | 11.2× | + | `Diff/citm_catalog` | 6.92 ms | 1.09 ms | 6.33× | 7.78× | + | `Diff/twitter` | 4.93 ms | 640 µs | 7.71× | 8.79× | + | `Dump/canada / -` | 6.71 ms | 2.31 ms | 2.90× | 3.34× | + | `Dump/canada / 4` | 8.82 ms | 3.03 ms | 2.91× | 2.82× | + | `Dump/citm_catalog / -` | 1.39 ms | 296 µs | 4.71× | 3.93× | + | `Dump/citm_catalog / 4` | 1.95 ms | 422 µs | 4.62× | 4.09× | + | `Dump/floats / -` | 63.5 ms | 23.8 ms | 2.67× | 2.50× | + | `Dump/floats / 4` | 72 ms | 24.7 ms | 2.92× | 2.71× | + | `Dump/jeopardy / -` | 202 ms | 30.6 ms | 6.59× | 3.75× | + | `Dump/jeopardy / 4` | 220 ms | 34.4 ms | 6.42× | 2.61× | + | `Dump/signed_ints / -` | 23.7 ms | 10.7 ms | 2.21× | 1.44× | + | `Dump/signed_ints / 4` | 32 ms | 11.4 ms | 2.82× | 2.01× | + | `Dump/small_signed_ints / -` | 17.9 ms | 7.93 ms | 2.25× | 1.81× | + | `Dump/small_signed_ints / 4` | 25.1 ms | 8.81 ms | 2.84× | 2.21× | + | `Dump/twitter / -` | 1.41 ms | 214 µs | 6.60× | 5.75× | + | `Dump/twitter / 4` | 1.59 ms | 249 µs | 6.38× | 5.18× | + | `Dump/unsigned_ints / -` | 23.6 ms | 8.07 ms | 2.92× | 1.58× | + | `Dump/unsigned_ints / 4` | 31.7 ms | 8.51 ms | 3.73× | 2.30× | + | `Equal/canada` | 463 µs | 336 µs | 1.38× | 1.38× | + | `Equal/citm_catalog` | 264 µs | 261 µs | 1.01× | 0.95× | + | `Equal/twitter` | 139 µs | 129 µs | 1.08× | 1.02× | + | `Flatten/canada` | 28.7 ms | 11.2 ms | 2.56× | 2.68× | + | `Flatten/citm_catalog` | 6.44 ms | 3.01 ms | 2.14× | 2.45× | + | `Flatten/twitter` | 3.53 ms | 2.05 ms | 1.72× | 2.19× | + | `FlattenOrdered/citm_catalog` | 256 ms | 1.41 ms | 182× | 185× | + | `FlattenOrdered/twitter` | 50 ms | 864 µs | 57.9× | 46.1× | + | `FromBinaryBuffer/bjdata / canada` | 8.15 ms | 4.17 ms | 1.95× | 2.02× | + | `FromBinaryBuffer/bjdata / twitter` | 3.18 ms | 893 µs | 3.56× | 2.87× | + | `FromBinaryBuffer/bjdata_optimized / canada` | 8.74 ms | 2.42 ms | 3.61× | 3.51× | + | `FromBinaryBuffer/bjdata_optimized / twitter` | 3.16 ms | 885 µs | 3.57× | 2.86× | + | `FromBinaryBuffer/bson / canada` | 9.33 ms | 4.27 ms | 2.18× | 2.20× | + | `FromBinaryBuffer/bson / citm_catalog` | 3.92 ms | 1.61 ms | 2.43× | 2.59× | + | `FromBinaryBuffer/bson / twitter` | 3.18 ms | 910 µs | 3.49× | 3.08× | + | `FromBinaryBuffer/cbor / canada` | 8.39 ms | 2.08 ms | 4.03× | 3.86× | + | `FromBinaryBuffer/cbor / citm_catalog` | 3.71 ms | 1.32 ms | 2.81× | 2.81× | + | `FromBinaryBuffer/cbor / floats` | 29.2 ms | 5.48 ms | 5.32× | 3.64× | + | `FromBinaryBuffer/cbor / jeopardy` | 353 ms | 101 ms | 3.50× | 3.43× | + | `FromBinaryBuffer/cbor / signed_ints` | 36 ms | 9.78 ms | 3.68× | 2.37× | + | `FromBinaryBuffer/cbor / twitter` | 3.09 ms | 879 µs | 3.52× | 2.83× | + | `FromBinaryBuffer/msgpack / canada` | 8.26 ms | 2.1 ms | 3.94× | 3.92× | + | `FromBinaryBuffer/msgpack / citm_catalog` | 3.72 ms | 1.29 ms | 2.89× | 2.94× | + | `FromBinaryBuffer/msgpack / jeopardy` | 357 ms | 96.9 ms | 3.68× | 3.51× | + | `FromBinaryBuffer/msgpack / twitter` | 3.06 ms | 850 µs | 3.60× | 3.02× | + | `FromBinaryBuffer/ubjson / canada` | 8.13 ms | 4.14 ms | 1.96× | 2.13× | + | `FromBinaryBuffer/ubjson / citm_catalog` | 3.82 ms | 1.66 ms | 2.31× | 2.44× | + | `FromBinaryBuffer/ubjson / jeopardy` | 366 ms | 101 ms | 3.61× | 3.40× | + | `FromBinaryBuffer/ubjson / twitter` | 3.15 ms | 896 µs | 3.52× | 2.90× | + | `FromBinaryBuffer/ubjson_optimized / canada` | 8.51 ms | 2.39 ms | 3.56× | 3.67× | + | `FromBinaryBuffer/ubjson_optimized / twitter` | 3.12 ms | 882 µs | 3.54× | 2.88× | + | `FromBinaryFile/bjdata / twitter` | 10.4 ms | 1.45 ms | 7.18× | 5.89× | + | `FromBinaryFile/bson / twitter` | 10.3 ms | 1.24 ms | 8.33× | 6.21× | + | `FromBinaryFile/cbor / canada` | 14.3 ms | 2.41 ms | 5.96× | 3.68× | + | `FromBinaryFile/cbor / twitter` | 9.92 ms | 1.07 ms | 9.23× | 6.46× | + | `FromBinaryFile/ubjson / canada` | 13.6 ms | 6.23 ms | 2.17× | 2.50× | + | `FromBinaryFile/ubjson / twitter` | 10.5 ms | 1.46 ms | 7.20× | 5.90× | + | `FromBinaryShape/containers / bjdata` | 14.3 ms | 7.24 ms | 1.98× | 2.05× | + | `FromBinaryShape/containers / bson` | 17.4 ms | 7.98 ms | 2.18× | 2.20× | + | `FromBinaryShape/containers / cbor` | 13.9 ms | 3.93 ms | 3.54× | 3.49× | + | `FromBinaryShape/containers / msgpack` | 13.8 ms | 3.88 ms | 3.55× | 3.52× | + | `FromBinaryShape/containers / ubjson_optimized` | 15 ms | 4.49 ms | 3.34× | 3.34× | + | `FromBinaryShape/containers / ubjson` | 14.4 ms | 7.27 ms | 1.98× | 2.03× | + | `FromBinaryShape/nested / bjdata` | 96.4 µs | 38.2 µs | 2.52× | 2.50× | + | `FromBinaryShape/nested / bson` | 103 µs | 42.5 µs | 2.41× | 2.42× | + | `FromBinaryShape/nested / cbor` | 93.8 µs | 35.4 µs | 2.65× | 2.57× | + | `FromBinaryShape/nested / msgpack` | 92 µs | 34.9 µs | 2.64× | 2.60× | + | `FromBinaryShape/nested / ubjson` | 96.5 µs | 37.9 µs | 2.54× | 2.50× | + | `FromBinaryShape/scalars / bjdata` | 24.8 ms | 11.5 ms | 2.16× | 2.22× | + | `FromBinaryShape/scalars / cbor` | 25.7 ms | 5.69 ms | 4.51× | 3.56× | + | `FromBinaryShape/scalars / msgpack` | 24.4 ms | 5.57 ms | 4.39× | 3.69× | + | `FromBinaryShape/scalars / ubjson` | 24.9 ms | 11.6 ms | 2.15× | 2.03× | + | `FromCborChunkedString/10000 chunks` | 90.9 µs | 61.5 µs | 1.48× | 1.09× | + | `FromMsgpack/canada` | 14.4 ms | 2.4 ms | 5.97× | 3.63× | + | `FromMsgpack/citm_catalog` | 9.04 ms | 1.67 ms | 5.42× | 4.60× | + | `FromMsgpack/floats` | 59.8 ms | 28.2 ms | 2.12× | 2.89× | + | `FromMsgpack/jeopardy` | 1,140 ms | 112 ms | 10.2× | 6.80× | + | `FromMsgpack/signed_ints` | 63.1 ms | 32.7 ms | 1.93× | 2.44× | + | `FromMsgpack/small_signed_ints` | 63.4 ms | 35.3 ms | 1.80× | 2.33× | + | `FromMsgpack/twitter` | 9.99 ms | 1.01 ms | 9.87× | 6.76× | + | `FromMsgpack/unsigned_ints` | 56.1 ms | 28.2 ms | 1.99× | 2.77× | + | `GetArray>` | 2.24 µs | 641 ns | 3.50× | 5.38× | + | `GetArray>` | 8.16 µs | 1.17 µs | 6.96× | 4.75× | + | `GetArray>` | 58.8 µs | 41.6 µs | 1.42× | 1.30× | + | `GetArray>` | 6.73 µs | 671 ns | 10.0× | 4.10× | + | `GetMap/citm_catalog` | 3.44 ms | 2.44 ms | 1.41× | 1.48× | + | `GetVectorDouble/floats` | 6.7 ms | 651 µs | 10.3× | 2.98× | + | `GetVectorInt/signed_ints` | 8.07 ms | 3.41 ms | 2.37× | 2.02× | + | `Iterate/canada` | 874 µs | 445 µs | 1.96× | 2.02× | + | `Iterate/citm_catalog` | 302 µs | 158 µs | 1.91× | 1.53× | + | `Iterate/twitter` | 87.3 µs | 58.9 µs | 1.48× | 1.20× | + | `JsonPointerAt/citm_catalog` | 1.85 ms | 1.16 ms | 1.60× | 1.47× | + | `JsonPointerAt/twitter` | 791 µs | 600 µs | 1.32× | 1.14× | + | `JsonPointerContains/citm_catalog` | 2.74 ms | 1.25 ms | 2.18× | 2.51× | + | `JsonPointerContains/twitter` | 1.32 ms | 620 µs | 2.13× | 2.16× | + | `JsonPointerParse/citm_catalog` | 5.73 ms | 2.21 ms | 2.59× | 3.74× | + | `JsonPointerParse/twitter` | 2.47 ms | 1.01 ms | 2.45× | 3.18× | + | `JsonPointerToString/citm_catalog` | 6.65 ms | 1.9 ms | 3.51× | 4.61× | + | `JsonPointerToString/twitter` | 2.14 ms | 812 µs | 2.63× | 2.66× | + | `ParseFILE/canada` | 52.9 ms | 6.02 ms | 8.79× | 5.46× | + | `ParseFILE/citm_catalog` | 35 ms | 2.34 ms | 14.9× | 5.73× | + | `ParseFILE/twitter` | 13.8 ms | 1.35 ms | 10.2× | 4.24× | + | `ParseFile/canada` | 17.7 ms | 6.23 ms | 2.84× | 4.67× | + | `ParseFile/citm_catalog` | 7.86 ms | 2.47 ms | 3.18× | 2.98× | + | `ParseFile/floats` | 129 ms | 48.4 ms | 2.67× | 5.68× | + | `ParseFile/jeopardy` | 330 ms | 156 ms | 2.12× | 2.23× | + | `ParseFile/signed_ints` | 128 ms | 46.6 ms | 2.74× | 3.41× | + | `ParseFile/small_signed_ints` | 64.5 ms | 33.4 ms | 1.93× | 2.57× | + | `ParseFile/twitter` | 3.4 ms | 1.38 ms | 2.46× | 2.33× | + | `ParseFile/unsigned_ints` | 123 ms | 47.3 ms | 2.61× | 3.52× | + | `ParseIndented/canada / 4` | 34.2 ms | 4.61 ms | 7.41× | 8.02× | + | `ParseIndented/citm_catalog / 4` | 7.45 ms | 1.46 ms | 5.11× | 3.49× | + | `ParseIndented/jeopardy / 4` | 339 ms | 114 ms | 2.96× | 2.46× | + | `ParseIndented/twitter / 4` | 3.61 ms | 975 µs | 3.70× | 2.60× | + | `ParseStreamValues/ndjson` | 7.08 ms | 3.72 ms | 1.91× | 2.06× | + | `ParseStreamValues/numbers` | 1.93 ms | 388 µs | 4.97× | 6.06× | + | `ParseString/canada` | 15.2 ms | 3.73 ms | 4.08× | 6.13× | + | `ParseString/citm_catalog` | 7.4 ms | 1.45 ms | 5.11× | 3.46× | + | `ParseString/floats` | 120 ms | 25 ms | 4.80× | 8.68× | + | `ParseString/jeopardy` | 303 ms | 113 ms | 2.68× | 2.32× | + | `ParseString/signed_ints` | 121 ms | 28.7 ms | 4.22× | 4.29× | + | `ParseString/small_signed_ints` | 60.8 ms | 17.7 ms | 3.43× | 3.38× | + | `ParseString/twitter` | 3.21 ms | 921 µs | 3.49× | 2.60× | + | `ParseString/unsigned_ints` | 120 ms | 28.5 ms | 4.21× | 4.23× | + | `ParseStringOrdered/canada` | 15.3 ms | 3.78 ms | 4.04× | 6.21× | + | `ParseStringOrdered/citm_catalog` | 11 ms | 1.34 ms | 8.18× | 6.59× | + | `ParseStringOrdered/jeopardy` | 360 ms | 98.1 ms | 3.67× | 3.38× | + | `ParseStringOrdered/twitter` | 4.41 ms | 804 µs | 5.49× | 4.93× | + | `Patch/canada` | 10.1 ms | 3.41 ms | 2.97× | 2.46× | + | `Patch/citm_catalog` | 2.54 ms | 1.65 ms | 1.54× | 1.38× | + | `Patch/twitter` | 1.49 ms | 870 µs | 1.72× | 1.45× | + | `SaxParse/canada` | 12.9 ms | 2.5 ms | 5.15× | 8.84× | + | `SaxParse/citm_catalog` | 6.44 ms | 655 µs | 9.82× | 6.85× | + | `SaxParse/twitter` | 2.49 ms | 334 µs | 7.45× | 5.91× | + | `ToCbor/canada` | 1.39 ms | 555 µs | 2.51× | 2.27× | + | `ToCbor/citm_catalog` | 1.03 ms | 260 µs | 3.97× | 5.60× | + | `ToCbor/floats` | 8.94 ms | 1.85 ms | 4.84× | 1.94× | + | `ToCbor/jeopardy` | 71.5 ms | 21.1 ms | 3.39× | 2.87× | + | `ToCbor/signed_ints` | 11.4 ms | 2.74 ms | 4.15× | 1.83× | + | `ToCbor/small_signed_ints` | 10.3 ms | 2.38 ms | 4.33× | 2.78× | + | `ToCbor/twitter` | 637 µs | 144 µs | 4.41× | 6.67× | + | `ToCbor/unsigned_ints` | 8.05 ms | 2.74 ms | 2.94× | 1.48× | + | `ToJsonStrings/copy` | 5.86 ms | 5.6 ms | 1.05× | 1.05× | + | `ToJsonStrings/move` | 5.92 ms | 3.05 ms | 1.94× | 1.78× | + | `Unflatten/canada` | 41.8 ms | 10.8 ms | 3.86× | 4.32× | + | `Unflatten/citm_catalog` | 9.8 ms | 3.54 ms | 2.77× | 3.32× | + | `Unflatten/twitter` | 4.57 ms | 2.17 ms | 2.11× | 2.42× | ### C. The timeline @@ -1957,18 +1969,21 @@ six code layouts: they were equal within 0.2%. | | 4 | [#5809][5809] | positions derived only on error | −12% | | | 2 | [#5810][5810] | indentation skipped eight bytes at a time | −12% | | | 4 | [#5882][5882] | arrays allocated once, at their final size | −6% | +| | 1 | [#6031][6031] | one loop for parser and lexer on contiguous input | −12% | | `parse()` `canada.json` | 4 | [#5234][5234] | the token buffer is filled only for error messages | −10% | | | 1 | [#5283][5283] | fast paths for contiguous input | −24% | | | 3 | [#5617][5617] | Eisel-Lemire instead of `strtod` | −9% | | | 3 | [#5738][5738] | own float parser, string scan, `\u` table | −14% | | | 3 | [#5851][5851] | digits accumulated while validating, eight at a time | −12% | | | 4 | [#5882][5882] | arrays allocated once, at their final size | −15% | +| | 1 | [#6031][6031] | one loop for parser and lexer on contiguous input | −16% | | `accept()` `twitter.json` | 4 | [#5234][5234] | the token buffer is filled only for error messages | −18% | | | 1 | [#5283][5283] | fast paths for contiguous input | −53% | | | 4 | [#5592][5592] | check for the expected `:` or `,` before the lexer's token switch | −11% | | | 4 | [#5809][5809] | positions derived only on error | −23% | | | 2 | [#5810][5810] | indentation skipped eight bytes at a time | −9% | | | 2 | [#5853][5853] | strings scanned 16 bytes at a time with SSE2 or NEON | −11% | +| | 1 | [#6031][6031] | one loop for parser and lexer on contiguous input | −51% | | `parse()` `twitter.json`, `std::ifstream` | 1 | [#5828][5828] | scanning the stream's get area in bulk | −48% | | | 1 | [#5884][5884] | inline get-area path, binary reads | −5% | | `dump()` `twitter.json` | 6 | [#5285][5285] | a write buffer and bulk copies of strings | −70% | @@ -1981,12 +1996,14 @@ six code layouts: they were equal within 0.2%. | | 4 | [#5501][5501] | the result moved instead of copied | −33% | | | U | [#5185][5185], [#5531][5531] | UTF-8 validation of every text string | +37% | | | U | [#5746][5746] | the validation made an option ([#5741][5741]) | −27% | +| | 4 | [#6028][6028] | binary strings appended without filling them with zeros first | −6% | | `to_cbor()` `twitter.json` | 4 | [#5328][5328] | no temporary `basic_json` per object key (by [@alexprabhat99](https://github.com/alexprabhat99)) | −55% | | | 6 | [#5824][5824] | a cursor instead of `vector::insert()` | −38% | | | 6 | [#5885][5885] | runs of numbers encoded in a loop | −32% |

The labeled steps of the timeline: the change in time at the first commit of each -pull request, against the commit before it. [#5592][5592] is by [@mvanslobbe](https://github.com/mvanslobbe).

+pull request, against the commit before it; for [#6031][6031], which was not merged yet, the step to 3.13.0. +[#5592][5592] is by [@mvanslobbe](https://github.com/mvanslobbe).

### D. Algorithmic fixes @@ -2022,8 +2039,8 @@ every round, in a different order each round (a shuffle with a fixed seed), each time is the best of 2 × 30 rounds (2 × 6 for `jeopardy.json`). Boost.JSON uses a monotonic resource and precise number parsing, RapidJSON `kParseFullPrecisionFlag` (except in *validate*, which reads no number), serde_json `float_roundtrip`: every number a library converts has to be exact. That rule, like the others here, is our choice. -Between the two runs, a library's time relative to `json_document`'s moved by 0.8% at the median and 2.5% at the 95th -percentile on the Mac, and by 2.5–3% and 9–10% on x86-64. +Between the two runs, a C++ library's time relative to `json_document`'s moved by 0.6% at the median and 2.4% at the +95th percentile on the Mac, and by 1.7–2.0% and 7–8% on x86-64 (the Rust programs were not run again). **Validation levels.** A way validates fully if it rejects all four broken inputs (cut short by one byte, a stray comma, an invalid UTF-8 byte in a string, garbage after the value); "U" accepts the invalid UTF-8 byte; "P" accepts one of the @@ -2079,96 +2096,96 @@ cell for the times and the way.

| library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | accept | 170 | 313 | 886 | 20,873 | 0.9 | - | yyjson | insitu (copy untimed) | 172 | 451 | 1,457 | 30,240 | 0.9 | - | simdjson | DOM | 212 | 452 | 1,888 | 28,843 | 1.1 | + | **nlohmann/json `json_document`** | accept | 172 | 313 | 905 | 20,926 | 0.9 | + | yyjson | insitu (copy), read | 183 | 476 | 1,487 | 30,922 | 0.9 | + | nlohmann/json `json` | accept | 234 | 456 | 1,253 | 27,563 | 1.1 | + | simdjson | DOM | 215 | 460 | 1,890 | 28,890 | 1.1 | | sonic-rs (Rust) | Value | 326 | 681 | 1,939 | 31,450 | 1.4 | - | Glaze | validate_json | 331 | 862 | 1,326 | 45,192 | 1.4 | + | Glaze | validate_json | 333 | 854 | 1,302 | 46,251 | 1.4 | | simd-json (Rust) | tape (copy) | 289 | 698 | 2,278 | 38,874 | 1.7 | - | sonic-cpp | Document [U] | – (U 382) | – (U 985) | – (U 2,578) | – (U 41,617) | – (U 1.6) | + | sonic-cpp | Document [U] | – (U 382) | – (U 985) | – (U 2,579) | – (U 40,996) | – (U 1.7) | | serde_json (Rust) | IgnoredAny [U], from_utf8 + IgnoredAny | 452 (U 354) | 1,103 (U 1,047) | 1,556 (U 1,451) | 46,517 (U 44,984) | 2.0 (U 1.7) | - | Boost.JSON | SAX, SAX (numbers: none) | 535 | 994 | 1,467 | 53,939 | 2.3 | - | nlohmann/json `json` | accept | 451 | 888 | 2,405 | 55,286 | 2.4 | - | RapidJSON | SAX (default precision), SAX (string stream, default precision), SAX (string stream, default precision) (no encoding check) [U], insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,307 (U 686) | 1,397 (U 1,032) | 1,982 | 134,679 (U 63,589) | 6.0 (U 2.6) | + | Boost.JSON | SAX, SAX (numbers: none) | 540 | 990 | 1,449 | 54,480 | 2.4 | + | RapidJSON | SAX (default precision), SAX (string stream, default precision), SAX (string stream, default precision) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,318 (U 706) | 1,391 (U 1,033) | 1,971 | 133,695 (U 64,732) | 6.1 (U 2.7) | **sum** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | parse | 224 | 485 | 1,816 | 28,987 | 1.2 | - | yyjson | insitu (copy untimed) | 219 | 551 | 1,906 | 37,512 | 1.1 | - | simdjson | DOM, On-Demand | 249 | 571 | 2,374 | 35,111 | 1.3 | + | **nlohmann/json `json_document`** | parse | 219 | 493 | 1,803 | 28,898 | 1.2 | + | yyjson | insitu (copy), read | 231 | 571 | 1,875 | 37,817 | 1.1 | + | simdjson | DOM, On-Demand | 249 | 572 | 2,398 | 34,994 | 1.3 | + | nlohmann/json `json` | sax | 303 | 602 | 2,208 | 44,688 | 1.6 | | sonic-rs (Rust) | visitor | 364 | 778 | 2,703 | 41,361 | 1.7 | | simd-json (Rust) | visitor (copy) | 354 | 866 | 2,717 | 47,518 | 2.0 | - | sonic-cpp | Document [U] | – (U 428) | – (U 1,087) | – (U 2,993) | – (U 48,688) | – (U 1.9) | - | nlohmann/json `json` | sax | 465 | 925 | 3,072 | 64,089 | 2.4 | - | Boost.JSON | SAX | 535 | 1,010 | 3,067 | 53,704 | 2.3 | + | sonic-cpp | Document [U] | – (U 428) | – (U 1,098) | – (U 2,975) | – (U 48,487) | – (U 1.9) | + | Boost.JSON | SAX | 538 | 1,028 | 3,084 | 54,765 | 2.3 | | serde_json (Rust) | visitor | 652 | 1,242 | 4,772 | 66,568 | 2.5 | - | Glaze | generic (double) [P], generic (double, strict), lazy_json [P] | 968 | 2,049 | 6,331 | 99,763 | 4.9 (P 3.5) | - | RapidJSON | SAX, SAX (string stream), SAX (string stream) (no encoding check) [U], insitu (copy untimed) (no encoding check) [U] | 1,329 (U 735) | 1,455 (U 1,136) | 6,453 | 136,103 (U 69,604) | 6.1 (U 2.9) | + | Glaze | generic (double) [P], generic (double, strict), lazy_json [P] | 974 | 2,057 | 6,338 | 100,272 | 4.9 (P 3.5) | + | RapidJSON | SAX, SAX (string stream), SAX (string stream) (no encoding check) [U], insitu (copy) (no encoding check) [U] | 1,332 (U 738) | 1,472 (U 1,157) | 6,448 | 136,330 (U 71,646) | 6.2 (U 2.9) | **select** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | parse | 184 | 363 | 956 | 24,991 | 1.0 | - | yyjson | insitu (copy untimed) | 178 | 456 | 1,461 | 32,514 | 1.0 | - | simdjson | DOM, On-Demand (key selectors) [P], On-Demand [P], On-Demand structs [P] | 196 (P 127) | 450 (P 354) | 1,886 (P 566) | 30,504 (P 19,562) | 1.2 (P 0.8) | - | Glaze | structs (validate_skipped), structs [P] | 311 (P 241) | 854 (P 255) | 1,316 (P 313) | 46,924 (P 37,578) | 1.4 (P 1.2) | + | **nlohmann/json `json_document`** | parse | 183 | 363 | 944 | 24,801 | 1.0 | + | yyjson | insitu (copy), read, read (raw numbers) | 191 | 480 | 1,489 | 32,777 | 1.1 | + | simdjson | DOM, On-Demand (key selectors) [P], On-Demand [P], On-Demand structs [P] | 192 (P 128) | 454 (P 356) | 1,893 (P 571) | 30,714 (P 19,633) | 1.2 (P 0.8) | + | Glaze | structs (validate_skipped), structs [P] | 314 (P 238) | 852 (P 253) | 1,303 (P 310) | 47,692 (P 36,013) | 1.4 (P 1.2) | | sonic-rs (Rust) | Value | 333 | 691 | 1,936 | 40,660 | 1.7 | - | sonic-cpp | Document [U] | – (U 385) | – (U 990) | – (U 2,586) | – (U 45,858) | – (U 1.7) | + | sonic-cpp | Document [U] | – (U 385) | – (U 993) | – (U 2,611) | – (U 46,356) | – (U 1.7) | | simd-json (Rust) | structs (copy) | 364 | 914 | 2,657 | 57,697 | 2.1 | | serde_json (Rust) | from_utf8 + structs, structs [U] | 480 (U 410) | 1,125 (U 1,084) | 1,560 (U 1,455) | 62,378 | 2.3 (U 1.9) | - | Boost.JSON | parse, parse_into structs | 617 | 1,205 | 3,650 | 67,255 | 2.7 | - | RapidJSON | Document (string stream), insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,304 (U 679) | 1,554 (U 1,126) | 6,776 | 141,509 (U 65,625) | 6.5 (U 2.6) | - | nlohmann/json `json` | parse, structs (from_json) | 1,360 | 2,416 | 6,047 | 179,533 | 7.6 | + | Boost.JSON | parse, parse_into structs | 623 | 1,208 | 3,638 | 67,923 | 2.7 | + | nlohmann/json `json` | parse | 1,208 | 2,128 | 5,088 | 163,712 | 6.6 | + | RapidJSON | Document (string stream), Document (string stream) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,314 (U 701) | 1,578 (U 1,166) | 6,814 | 144,649 (U 67,617) | 6.6 (U 2.8) | **edit** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | editable, editable (source numbers) [N] | 291 | 560 | 2,765 (N 1,484) | 58,057 | 1.9 | - | yyjson | insitu (copy untimed) + mut copy | 427 | 882 | 3,642 | 84,239 | 2.4 | - | sonic-cpp | Document [U] | – (U 486) | – (U 1,224) | – (U 5,638) | – (U 62,688) | – (U 2.6) | + | **nlohmann/json `json_document`** | editable, editable (source numbers) [N] | 288 | 559 | 2,737 (N 1,504) | 58,019 | 1.9 | + | yyjson | insitu (copy) + mut copy, mut copy | 440 | 904 | 3,692 | 84,466 | 2.4 | + | sonic-cpp | Document [U] | – (U 488) | – (U 1,218) | – (U 5,662) | – (U 63,697) | – (U 2.6) | | sonic-rs (Rust) | Value | 634 | 1,257 | 4,396 | 140,936 | 3.8 | | simd-json (Rust) | borrowed (copy) | 948 | 2,102 | 7,654 | 110,693 | 5.4 | - | Boost.JSON | parse | 1,368 | 1,992 | 6,573 | 155,237 | 6.6 | - | nlohmann/json `json` | ordered_json, parse | 1,273 | 2,344 | 8,334 | 203,232 | 7.1 | - | Glaze | generic (strict), generic [P] | 1,539 | 3,235 | 11,083 | 178,333 | 8.3 | - | RapidJSON | Document, Document (string stream), insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,922 (U 1,344) | 2,388 (U 1,964) | 13,836 | 221,270 (U 144,741) | 10.3 (U 6.5) | + | nlohmann/json `json` | ordered_json, parse | 1,115 | 2,065 | 7,348 | 162,216 | 6.3 | + | Boost.JSON | parse | 1,355 | 1,997 | 6,522 | 157,849 | 6.6 | + | Glaze | generic (strict), generic [P] | 1,527 | 3,216 | 11,033 | 183,648 | 8.4 | + | RapidJSON | Document, Document (string stream), insitu (copy), insitu (copy) (no encoding check) [U] | 1,924 (U 1,356) | 2,393 (U 1,992) | 13,711 | 224,328 (U 147,902) | 10.5 (U 6.5) | | serde_json (Rust) | Value | 2,009 | 3,316 | 9,666 | 251,931 | 9.6 | **minify** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | parse + dump, parse + dump (source numbers) [N] | 259 | 493 | 2,582 (N 1,360) | 37,882 | 1.4 | - | yyjson | insitu (copy untimed) + write, read (raw numbers) + write [N] | 279 | 625 | 3,196 (N 2,550) | 50,821 | 1.6 | - | simdjson | DOM + to_string, minify [P] | 423 (P 62.3) | 848 (P 171) | 5,120 (P 227) | 61,059 (P 5,762) | 2.4 (P 0.3) | + | **nlohmann/json `json_document`** | parse + dump, parse + dump (source numbers) [N] | 261 (N 252) | 496 | 2,570 (N 1,343) | 37,624 | 1.5 | + | yyjson | insitu (copy) + write, read (raw numbers) + write [N], read + write | 298 | 642 | 3,222 (N 2,523) | 51,001 | 1.6 | + | simdjson | DOM + to_string, minify [P] | 425 (P 62.5) | 850 (P 168) | 5,094 (P 227) | 61,202 (P 5,756) | 2.3 (P 0.3) | | sonic-rs (Rust) | Value | 535 | 1,134 | 4,377 | 64,832 | 3.0 | - | sonic-cpp | Document + Serialize [U] | – (U 500) | – (U 1,220) | – (U 5,676) | – (U 61,236) | – (U 2.5) | + | sonic-cpp | Document + Serialize [U] | – (U 504) | – (U 1,217) | – (U 5,634) | – (U 61,988) | – (U 2.5) | | simd-json (Rust) | borrowed (copy) | 952 | 2,111 | 7,658 | 108,130 | 5.5 | - | Boost.JSON | parse + serialize | 1,393 | 1,986 | 6,542 | 154,677 | 6.7 | - | RapidJSON | Document + Writer, SAX to Writer, SAX to Writer (raw numbers) (no encoding check) [U N], SAX to Writer (string stream), SAX to Writer (string stream) (no encoding check) [U] | 1,525 (U 1,058) | 1,808 (U 1,485) | 14,460 (U N 10,908) | 174,558 (U 123,119) | 8.1 (U 5.0) | - | nlohmann/json `json` | parse + dump | 1,600 | 2,706 | 8,389 | 197,745 | 8.8 | - | Glaze | generic (strict), minify_json [P] | 1,505 (P 281) | 3,225 (P 729) | 11,092 (P 1,722) | 168,855 (P 39,976) | 8.1 (P 1.3) | + | Boost.JSON | parse + serialize | 1,407 | 2,003 | 6,555 | 154,865 | 6.8 | + | nlohmann/json `json` | parse + dump | 1,446 | 2,406 | 7,328 | 182,132 | 7.7 | + | RapidJSON | Document + Writer, SAX to Writer, SAX to Writer (raw numbers) [N], SAX to Writer (string stream), SAX to Writer (string stream) (no encoding check) [U] | 1,523 (U 1,044) | 1,803 (U 1,499) | 14,378 (N 11,568) | 174,958 (U 123,908) | 8.0 (U 4.9) | + | Glaze | generic (strict), minify_json [P] | 1,512 (P 284) | 3,245 (P 747) | 11,112 (P 1,746) | 172,173 (P 40,439) | 8.1 (P 1.4) | | serde_json (Rust) | Value | 2,004 | 3,290 | 9,792 | 227,369 | 9.5 | **write** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | dump, dump (source numbers) [N] | 74.3 | 134 | 1,621 (N 401) | 14,757 | 0.5 | - | yyjson | write | 103 | 169 | 1,731 | 20,087 | 0.7 | - | sonic-cpp | Serialize | 108 | 230 | 3,093 | 19,651 | 0.8 | - | nlohmann/json `json` | dump | 223 | 287 | 2,276 | 31,825 | 1.2 | - | simdjson | to_string | 199 | 385 | 3,241 | 32,208 | 1.3 | - | Glaze | generic, generic (strict) | 216 | 469 | 1,720 | 33,934 | 1.3 | + | **nlohmann/json `json_document`** | dump, dump (source numbers) [N] | 76.2 (N 72.8) | 139 | 1,625 (N 398) | 14,861 | 0.5 | + | yyjson | write | 101 | 167 | 1,719 | 19,937 | 0.7 | + | sonic-cpp | Serialize | 114 | 240 | 3,109 | 20,327 | 0.9 | + | nlohmann/json `json` | dump | 216 | 287 | 2,274 | 30,928 | 1.2 | + | Glaze | generic, generic (strict) | 212 | 476 | 1,702 | 34,032 | 1.3 | + | simdjson | to_string | 201 | 416 | 3,186 | 32,185 | 1.3 | | sonic-rs (Rust) | Value | 212 | 446 | 2,419 | 33,366 | 1.5 | | serde_json (Rust) | Value | 322 | 490 | 2,286 | 49,967 | 2.0 | | simd-json (Rust) | borrowed | 355 | 478 | 2,728 | 47,412 | 1.8 | - | Boost.JSON | serialize | 507 | 508 | 2,923 | 62,583 | 2.9 | - | RapidJSON | Writer | 603 | 830 | 6,995 | 81,150 | 3.9 | + | Boost.JSON | serialize | 499 | 511 | 2,873 | 63,201 | 2.9 | + | RapidJSON | Writer | 596 | 836 | 6,928 | 80,160 | 4.0 | ??? info "Times in µs on x86-64 with GCC 16.2" @@ -2176,96 +2193,96 @@ cell for the times and the way.

| library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | accept | 258 | 513 | 934 | 34,514 | 1.2 | - | yyjson | insitu (copy untimed), read (raw numbers) | 352 | 837 | 2,199 | 93,043 | 1.5 | + | **nlohmann/json `json_document`** | accept | 254 | 515 | 892 | 33,006 | 1.2 | + | nlohmann/json `json` | accept | 370 | 883 | 2,441 | 39,142 | 1.3 | | sonic-rs (Rust) | IgnoredAny | 501 | 970 | 2,249 | 54,369 | 1.8 | - | Boost.JSON | SAX, SAX (numbers: none) | 690 | 917 | 1,676 | 62,781 | 2.9 | - | simdjson | DOM | 301 | 695 | 3,337 | 120,982 | 1.7 | - | sonic-cpp | Document [U] | – (U 403) | – (U 932) | – (U 3,349) | – (U 98,511) | – (U 1.7) | + | Boost.JSON | SAX, SAX (numbers: none) | 683 | 913 | 1,642 | 57,932 | 2.9 | + | yyjson | insitu (copy), read, read (raw numbers) | 393 | 930 | 2,140 | 122,230 | 1.6 | + | simdjson | DOM | 297 | 687 | 3,165 | 111,631 | 1.7 | + | sonic-cpp | Document [U] | – (U 404) | – (U 923) | – (U 3,216) | – (U 93,142) | – (U 1.7) | | serde_json (Rust) | IgnoredAny [U], from_utf8 + IgnoredAny | 624 (U 484) | 1,440 (U 1,370) | 2,406 (U 2,314) | 64,720 (U 58,247) | 2.4 (U 1.9) | - | Glaze | validate_json | 712 | 1,983 | 2,625 | 76,759 | 2.5 | - | nlohmann/json `json` | accept | 683 | 1,419 | 4,559 | 74,331 | 3.1 | + | Glaze | validate_json | 705 | 1,971 | 2,532 | 74,805 | 2.5 | | simd-json (Rust) | tape (copy) | 567 | 1,430 | 4,359 | 207,551 | 2.9 | - | RapidJSON | SAX (default precision) (no encoding check) [U], SAX (string stream, default precision), SAX (string stream, default precision) (no encoding check) [U], insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,166 (U 1,012) | 1,553 (U 1,434) | 3,875 | 114,704 (U 102,635) | 4.8 (U 3.2) | + | RapidJSON | SAX (default precision) (no encoding check) [U], SAX (string stream) (no encoding check) [U], SAX (string stream, default precision), insitu (copy), insitu (copy) (no encoding check) [U] | 1,215 (U 1,052) | 1,550 (U 1,427) | 3,625 | 125,139 (U 104,342) | 4.9 (U 3.2) | **sum** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | simdjson | On-Demand | 348 | 805 | 3,452 | 92,769 | 1.9 | - | **nlohmann/json `json_document`** | parse | 398 | 972 | 3,501 | 89,756 | 2.0 | - | yyjson | insitu (copy untimed) | 415 | 986 | 3,818 | 97,586 | 1.9 | + | simdjson | On-Demand | 344 | 809 | 3,405 | 90,960 | 1.9 | + | **nlohmann/json `json_document`** | parse | 384 | 1,066 | 3,526 | 88,527 | 1.9 | + | nlohmann/json `json` | sax | 533 | 1,113 | 4,134 | 66,403 | 2.3 | | sonic-rs (Rust) | visitor | 501 | 1,123 | 4,397 | 59,583 | 2.5 | - | sonic-cpp | Document [U] | – (U 456) | – (U 1,115) | – (U 3,980) | – (U 105,081) | – (U 2.0) | - | Boost.JSON | SAX | 699 | 957 | 5,835 | 59,656 | 3.0 | - | nlohmann/json `json` | sax | 814 | 1,666 | 5,690 | 97,414 | 4.0 | + | sonic-cpp | Document [U] | – (U 458) | – (U 1,120) | – (U 3,887) | – (U 107,494) | – (U 2.0) | + | yyjson | insitu (copy), read | 445 | 1,093 | 3,948 | 133,860 | 1.9 | + | Boost.JSON | SAX | 690 | 956 | 5,762 | 62,051 | 2.9 | | simd-json (Rust) | visitor (copy) | 681 | 1,650 | 5,083 | 210,185 | 3.5 | - | RapidJSON | SAX (string stream), SAX (string stream) (no encoding check) [U], insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,221 (U 1,063) | 1,717 (U 1,635) | 9,435 | 112,158 (U 105,845) | 5.1 (U 3.5) | | serde_json (Rust) | visitor | 1,311 | 2,288 | 7,127 | 129,497 | 4.6 | - | Glaze | generic (double) [P], generic (double, strict), lazy_json [P] | 2,483 | 4,413 | 10,532 | 231,505 | 8.5 (P 6.4) | + | RapidJSON | SAX (string stream), SAX (string stream) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,256 (U 1,099) | 1,713 (U 1,635) | 9,547 (U 9,105) | 127,564 (U 113,500) | 5.1 (U 3.4) | + | Glaze | generic (double) [P], generic (double, strict), lazy_json [P] | 2,317 | 4,068 | 10,333 | 237,723 | 8.3 (P 6.3) | **select** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | parse, structs (from_json) | 333 | 828 | 1,368 | 89,876 | 1.7 | - | yyjson | insitu (copy untimed), read (raw numbers) | 366 | 840 | 2,204 | 96,172 | 1.7 | + | **nlohmann/json `json_document`** | parse | 325 | 863 | 1,302 | 87,940 | 1.6 | + | yyjson | insitu (copy), read, read (raw numbers) | 402 | 954 | 2,127 | 140,491 | 1.7 | | sonic-rs (Rust) | structs | 504 | 1,033 | 2,328 | 90,486 | 2.0 | - | simdjson | DOM, On-Demand (key selectors) [P], On-Demand [P] | 313 (P 180) | 699 (P 496) | 3,325 (P 690) | 122,556 (P 48,272) | 1.9 (P 1.1) | - | sonic-cpp | Document [U] | – (U 407) | – (U 948) | – (U 3,464) | – (U 110,885) | – (U 1.8) | + | simdjson | DOM, On-Demand (key selectors) [P], On-Demand [P] | 311 (P 178) | 698 (P 494) | 3,141 (P 674) | 130,228 (P 48,492) | 1.9 (P 1.1) | + | sonic-cpp | Document [U] | – (U 408) | – (U 942) | – (U 3,166) | – (U 110,763) | – (U 1.8) | + | Glaze | structs (validate_skipped), structs [P] | 608 (P 345) | 1,978 (P 401) | 2,521 (P 415) | 90,807 (P 67,456) | 2.1 (P 1.5) | | serde_json (Rust) | from_utf8 + structs, structs [U] | 701 | 1,532 | 2,529 (U 2,402) | 107,316 | 3.0 | - | Glaze | structs (validate_skipped), structs [P] | 606 (P 344) | 2,476 (P 402) | 2,557 (P 417) | 89,957 (P 67,467) | 2.1 (P 1.5) | + | Boost.JSON | parse, parse_into structs | 883 | 1,286 | 6,690 | 101,286 | 3.6 | | simd-json (Rust) | structs (copy) | 679 | 1,731 | 5,144 | 239,164 | 3.5 | - | Boost.JSON | parse, parse_into structs | 887 | 1,270 | 7,292 | 95,866 | 3.7 | - | RapidJSON | Document (string stream), insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,180 (U 1,022) | 1,693 | 10,390 | 116,394 (U 108,290) | 4.9 (U 3.4) | - | nlohmann/json `json` | parse, structs (from_json) | 3,360 | 5,268 | 12,006 | 410,221 | 17.7 | + | RapidJSON | Document (string stream), Document (string stream) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,217 (U 1,056) | 1,807 | 9,688 | 152,275 | 5.0 (U 3.5) | + | nlohmann/json `json` | parse, structs (from_json) | 2,984 | 4,548 | 9,124 | 383,108 | 15.2 | **edit** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | editable, editable (source numbers) [N] | 536 | 1,162 | 5,567 (N 2,188) | 192,323 | 3.0 | - | sonic-cpp | Document [U] | – (U 620) | – (U 1,438) | – (U 8,495) | – (U 186,078) | – (U 3.4) | - | yyjson | insitu (copy untimed) + mut copy | 746 | 1,526 | 7,479 | 275,025 | 3.6 | + | **nlohmann/json `json_document`** | editable, editable (source numbers) [N] | 538 | 1,214 | 5,640 (N 2,140) | 193,024 | 3.1 | + | sonic-cpp | Document [U] | – (U 620) | – (U 1,426) | – (U 8,466) | – (U 181,035) | – (U 3.3) | + | yyjson | insitu (copy) + mut copy, mut copy | 786 | 1,642 | 7,599 | 303,303 | 3.8 | | sonic-rs (Rust) | Value | 1,197 | 2,389 | 7,744 | 390,952 | 6.9 | - | Boost.JSON | parse | 1,767 | 2,493 | 12,767 | 331,310 | 8.5 | - | RapidJSON | Document (string stream), insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,865 (U 1,737) | 2,616 | 18,812 | 245,724 (U 234,669) | 8.7 (U 7.2) | + | Boost.JSON | parse | 1,859 | 2,513 | 12,765 | 348,703 | 8.8 | + | RapidJSON | Document (string stream), Document (string stream) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,896 (U 1,749) | 2,754 | 19,359 | 269,071 (U 259,148) | 9.1 (U 7.5) | | simd-json (Rust) | borrowed (copy), owned (copy) | 1,862 | 4,194 | 14,896 | 391,369 | 9.0 | - | nlohmann/json `json` | ordered_json | 2,832 | 4,970 | 15,806 | 647,704 | 13.1 | - | Glaze | generic (strict), generic [P] | 3,389 | 6,002 | 21,598 | 607,767 | 14.8 | + | nlohmann/json `json` | ordered_json, parse | 2,535 | 4,484 | 13,526 | 635,912 | 12.4 | + | Glaze | generic (strict), generic [P] | 3,364 | 6,036 | 21,592 | 652,302 (P 631,009) | 15.6 | | serde_json (Rust) | Value | 4,042 | 6,586 | 16,631 | 632,766 | 17.6 | **minify** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | parse + dump, parse + dump (source numbers) [N] | 518 (N 496) | 1,045 | 5,240 (N 2,196) | 143,737 | 2.5 (N 2.4) | - | yyjson | insitu (copy untimed) + write, insitu (copy) + write, read (raw numbers) + write [N] | 626 | 1,160 | 6,701 (N 2,901) | 156,605 | 2.8 | - | sonic-cpp | Document + Serialize [U] | – (U 675) | – (U 1,417) | – (U 8,958) | – (U 164,630) | – (U 3.3) | - | simdjson | DOM + to_string, minify [P] | 714 (P 99.9) | 1,318 (P 278) | 9,135 (P 312) | 269,597 (P 42,644) | 3.7 (P 0.5) | + | **nlohmann/json `json_document`** | parse + dump, parse + dump (source numbers) [N] | 478 | 1,152 | 5,209 (N 2,150) | 152,631 (N 145,664) | 2.6 (N 2.4) | + | yyjson | insitu (copy) + write, read (raw numbers) + write [N], read + write | 610 | 1,277 (N 1,221) | 6,630 (N 2,860) | 199,086 | 3.0 | + | sonic-cpp | Document + Serialize [U] | – (U 636) | – (U 1,498) | – (U 8,354) | – (U 173,180) | – (U 3.3) | + | simdjson | DOM + to_string, minify [P] | 666 (P 93.3) | 1,354 (P 279) | 8,606 (P 314) | 280,739 (P 46,006) | 3.9 (P 0.5) | | sonic-rs (Rust) | Value | 1,000 | 2,097 | 7,795 | 215,280 | 5.4 | - | Boost.JSON | parse + serialize | 1,974 | 2,525 | 12,748 | 314,299 | 8.6 | - | RapidJSON | SAX to Writer (raw numbers) [N], SAX to Writer (string stream), SAX to Writer (string stream) (no encoding check) [U] | 1,949 (U 1,880) | 2,382 | 19,548 (N 14,400) | 231,979 (U 224,249) | 8.2 (U 6.2) | + | Boost.JSON | parse + serialize | 1,783 | 2,498 | 12,367 | 329,300 | 8.9 | + | RapidJSON | SAX to Writer (raw numbers) [N], SAX to Writer (string stream), SAX to Writer (string stream) (no encoding check) [U] | 1,851 (U 1,710) | 2,429 | 18,810 (N 14,205) | 229,769 | 9.0 (U 6.7) | | simd-json (Rust) | borrowed (copy) | 1,889 | 4,196 | 15,716 | 414,377 | 9.2 | - | Glaze | generic (strict), minify_json [P] | 3,685 (P 442) | 5,942 (P 1,292) | 22,138 (P 2,726) | 450,322 (P 97,377) | 14.0 (P 1.9) | + | nlohmann/json `json` | parse + dump | 3,369 | 5,399 | 13,402 | 493,302 | 18.4 | + | Glaze | generic (strict), minify_json [P] | 3,243 (P 417) | 6,175 (P 1,299) | 20,961 (P 2,699) | 451,368 (P 93,794) | 15.3 (P 2.1) | | serde_json (Rust) | Value | 4,012 | 6,583 | 17,306 | 509,702 | 16.5 | - | nlohmann/json `json` | parse + dump | 4,196 | 5,806 | 16,626 | 529,560 | 19.2 | **write** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | dump, dump (source numbers) [N] | 156 (N 140) | 251 (N 230) | 3,842 (N 823) | 67,769 (N 65,376) | 0.9 (N 0.8) | - | yyjson | write | 215 | 319 | 3,360 | 66,669 | 1.3 | - | sonic-cpp | Serialize | 249 | 509 | 5,074 | 69,916 | 1.6 | - | nlohmann/json `json` | dump | 444 | 640 | 4,089 | 117,316 | 1.8 | - | simdjson | to_string | 361 | 614 | 5,609 | 158,492 | 1.8 | - | Glaze | generic | 381 | 730 | 4,071 | 131,946 | 2.0 | + | **nlohmann/json `json_document`** | dump, dump (source numbers) [N] | 154 (N 139) | 251 (N 229) | 3,946 (N 831) | 64,776 | 0.9 (N 0.8) | + | yyjson | write | 185 | 318 | 3,330 | 67,531 | 1.3 | + | sonic-cpp | Serialize | 258 | 508 | 5,077 | 72,262 | 1.6 | + | nlohmann/json `json` | dump | 413 | 611 | 3,905 | 113,990 | 1.8 | + | simdjson | to_string | 346 | 610 | 5,580 | 158,670 | 1.8 | + | Glaze | generic | 377 | 730 | 4,050 | 129,720 | 2.0 | | sonic-rs (Rust) | Value | 434 | 927 | 3,987 | 109,176 | 2.8 | - | Boost.JSON | serialize | 469 | 830 | 5,659 | 144,174 | 2.4 | + | Boost.JSON | serialize | 451 | 832 | 5,570 | 138,780 | 2.4 | | simd-json (Rust) | borrowed | 582 | 800 | 5,147 | 122,623 | 2.8 | | serde_json (Rust) | Value | 550 | 887 | 4,005 | 134,163 | 3.3 | - | RapidJSON | Writer | 678 | 979 | 9,095 | 131,408 | 3.8 | + | RapidJSON | Writer | 638 | 984 | 8,886 | 131,435 | 3.9 | ??? info "Times in µs on x86-64 with GCC 13.4" @@ -2273,96 +2290,96 @@ cell for the times and the way.

| library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | accept | 271 | 609 | 1,011 | 34,722 | 1.2 | + | **nlohmann/json `json_document`** | accept | 267 | 664 | 986 | 34,874 | 1.2 | + | nlohmann/json `json` | accept | 312 | 686 | 2,345 | 38,948 | 1.3 | | sonic-rs (Rust) | IgnoredAny | 501 | 970 | 2,249 | 54,369 | 1.8 | - | yyjson | insitu (copy untimed), read (raw numbers) | 348 | 878 | 2,256 | 90,959 | 1.6 | - | Boost.JSON | SAX, SAX (numbers: none) | 710 | 969 | 1,718 | 61,476 | 3.2 | - | simdjson | DOM | 311 | 780 | 3,351 | 116,704 | 1.8 | - | Glaze | validate_json | 590 | 1,545 | 1,980 | 76,009 | 2.3 | - | sonic-cpp | Document [U] | – (U 408) | – (U 1,028) | – (U 3,622) | – (U 96,080) | – (U 1.6) | + | Glaze | validate_json | 584 | 1,402 | 1,837 | 71,382 | 2.3 | + | Boost.JSON | SAX, SAX (numbers: none) | 730 | 934 | 1,637 | 60,745 | 3.2 | + | yyjson | insitu (copy), read, read (raw numbers) | 394 | 984 | 2,222 | 128,528 | 1.6 | + | simdjson | DOM | 309 | 737 | 3,183 | 115,296 | 1.8 | + | sonic-cpp | Document [U] | – (U 409) | – (U 1,025) | – (U 3,561) | – (U 96,607) | – (U 1.5) | | serde_json (Rust) | IgnoredAny [U], from_utf8 + IgnoredAny | 624 (U 484) | 1,440 (U 1,370) | 2,406 (U 2,314) | 64,720 (U 58,247) | 2.4 (U 1.9) | - | nlohmann/json `json` | accept | 677 | 1,433 | 4,584 | 73,561 | 3.3 | | simd-json (Rust) | tape (copy) | 567 | 1,430 | 4,359 | 207,551 | 2.9 | - | RapidJSON | SAX (default precision) (no encoding check) [U], SAX (string stream, default precision), insitu (copy untimed), insitu (copy untimed) (no encoding check) [U], insitu (copy) (no encoding check) [U] | 1,552 (U 1,082) | 2,210 (U 1,570) | 4,104 | 168,747 (U 110,856) | 6.9 (U 3.7) | + | RapidJSON | SAX (default precision) (no encoding check) [U], SAX (string stream) (no encoding check) [U], SAX (string stream, default precision), SAX (string stream, default precision) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,201 (U 1,033) | 1,931 (U 1,487) | 4,114 (U 3,966) | 145,137 (U 127,587) | 4.8 (U 3.2) | **sum** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | simdjson | On-Demand | 356 | 812 | 3,435 | 96,250 | 2.0 | - | **nlohmann/json `json_document`** | parse | 392 | 946 | 3,888 | 89,044 | 2.0 | + | simdjson | On-Demand | 356 | 819 | 3,291 | 94,267 | 1.9 | + | **nlohmann/json `json_document`** | parse | 387 | 1,036 | 3,704 | 89,477 | 1.9 | + | nlohmann/json `json` | sax | 451 | 941 | 3,816 | 64,406 | 2.3 | | sonic-rs (Rust) | visitor | 501 | 1,123 | 4,397 | 59,583 | 2.5 | - | sonic-cpp | Document [U] | – (U 460) | – (U 1,210) | – (U 4,295) | – (U 107,092) | – (U 1.9) | - | yyjson | insitu (copy untimed) | 407 | 1,045 | 6,021 | 99,764 | 2.0 | - | Boost.JSON | SAX | 734 | 1,030 | 6,103 | 64,382 | 3.3 | - | nlohmann/json `json` | sax | 797 | 1,548 | 6,004 | 101,516 | 4.0 | + | sonic-cpp | Document [U] | – (U 459) | – (U 1,209) | – (U 4,247) | – (U 103,731) | – (U 1.9) | + | yyjson | insitu (copy), read | 443 | 1,146 | 5,974 | 129,054 | 2.0 | + | Boost.JSON | SAX | 746 | 1,025 | 5,370 | 63,333 | 3.3 | | simd-json (Rust) | visitor (copy) | 681 | 1,650 | 5,083 | 210,185 | 3.5 | | serde_json (Rust) | visitor | 1,311 | 2,288 | 7,127 | 129,497 | 4.6 | - | RapidJSON | SAX (no encoding check) [U], SAX (string stream), SAX (string stream) (no encoding check) [U], insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,616 (U 1,130) | 2,290 (U 1,743) | 11,183 | 181,500 (U 119,706) | 7.5 (U 3.9) | - | Glaze | generic (double) [P], generic (double, strict), lazy_json [P] | 2,345 | 4,080 | 10,576 | 250,685 (P 231,181) | 9.0 (P 6.4) | + | RapidJSON | SAX (no encoding check) [U], SAX (string stream), SAX (string stream) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,256 (U 1,085) | 2,114 (U 1,750) | 11,059 | 155,532 (U 128,734) | 5.2 (U 3.5) | + | Glaze | generic (double, strict), lazy_json [P] | 2,341 | 4,037 | 10,434 | 249,828 (P 219,119) | 8.5 (P 5.9) | **select** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | parse | 332 | 765 | 1,390 | 88,202 | 1.6 | - | yyjson | insitu (copy untimed), read (raw numbers) | 361 | 880 | 2,236 | 98,637 | 1.7 | + | **nlohmann/json `json_document`** | parse, structs (from_json) | 329 | 855 | 1,360 | 90,597 | 1.6 | + | yyjson | insitu (copy), read, read (raw numbers) | 397 | 994 | 2,228 | 140,073 | 1.8 | | sonic-rs (Rust) | structs | 504 | 1,033 | 2,328 | 90,486 | 2.0 | - | simdjson | DOM, On-Demand (key selectors) [P], On-Demand [P] | 324 (P 184) | 756 (P 509) | 3,409 (P 700) | 123,214 (P 48,614) | 2.0 (P 1.2) | - | Glaze | structs (validate_skipped), structs [P] | 529 (P 342) | 1,435 (P 410) | 1,913 (P 431) | 91,253 (P 66,069) | 2.0 (P 1.5) | - | sonic-cpp | Document [U] | – (U 413) | – (U 1,043) | – (U 3,695) | – (U 108,297) | – (U 1.7) | + | simdjson | DOM, On-Demand (key selectors) [P], On-Demand [P] | 323 (P 186) | 748 (P 508) | 3,189 (P 707) | 126,288 (P 50,215) | 2.0 (P 1.2) | + | Glaze | structs (validate_skipped), structs [P] | 523 (P 338) | 1,473 (P 406) | 1,853 (P 434) | 89,506 (P 66,029) | 1.9 (P 1.4) | + | sonic-cpp | Document [U] | – (U 412) | – (U 1,044) | – (U 3,632) | – (U 106,188) | – (U 1.7) | | serde_json (Rust) | from_utf8 + structs, structs [U] | 701 | 1,532 | 2,529 (U 2,402) | 107,316 | 3.0 | | simd-json (Rust) | structs (copy) | 679 | 1,731 | 5,144 | 239,164 | 3.5 | - | Boost.JSON | parse, parse_into structs | 884 | 1,380 | 7,217 | 99,078 | 3.9 | - | RapidJSON | Document (string stream) (no encoding check) [U], insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,560 (U 1,079) | 2,127 (U 1,817) | 11,547 | 176,066 (U 122,354) | 7.1 (U 3.7) | - | nlohmann/json `json` | structs (from_json) | 3,325 | 5,126 | 11,908 | 423,362 | 17.0 | + | Boost.JSON | parse, parse_into structs | 899 | 1,353 | 7,011 | 100,039 | 3.9 | + | RapidJSON | Document (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,207 (U 1,037) | 1,947 (U 1,847) | 11,910 | 164,386 (U 147,489) | 5.0 (U 3.4) | + | nlohmann/json `json` | parse, structs (from_json) | 3,032 | 4,466 | 9,085 | 376,812 | 15.7 | **edit** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | editable, editable (source numbers) [N] | 532 | 1,116 | 5,714 (N 2,702) | 192,363 | 3.1 | - | sonic-cpp | Document [U] | – (U 637) | – (U 1,559) | – (U 8,936) | – (U 186,232) | – (U 3.3) | - | yyjson | insitu (copy untimed) + mut copy | 761 | 1,590 | 9,860 | 271,227 | 3.7 | + | **nlohmann/json `json_document`** | editable, editable (source numbers) [N] | 530 | 1,209 | 5,792 (N 2,621) | 193,925 | 3.1 | + | sonic-cpp | Document [U] | – (U 632) | – (U 1,583) | – (U 8,734) | – (U 184,592) | – (U 3.4) | + | yyjson | insitu (copy) + mut copy, mut copy | 841 | 1,719 | 9,803 | 309,935 | 3.8 | | sonic-rs (Rust) | Value | 1,197 | 2,389 | 7,744 | 390,952 | 6.9 | - | Boost.JSON | parse | 1,963 | 2,936 | 13,414 | 356,244 | 9.1 | + | Boost.JSON | parse | 1,889 | 2,952 | 13,537 | 346,542 | 9.6 | + | RapidJSON | Document (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,920 (U 1,747) | 2,977 (U 2,823) | 21,152 | 293,851 (U 280,165) | 9.3 (U 7.6) | | simd-json (Rust) | borrowed (copy), owned (copy) | 1,862 | 4,194 | 14,896 | 391,369 | 9.0 | - | RapidJSON | Document (string stream) (no encoding check) [U], insitu (copy untimed), insitu (copy untimed) (no encoding check) [U], insitu (copy) | 2,333 (U 1,838) | 3,133 (U 2,836) | 20,518 | 315,892 (U 271,888) | 11.0 (U 7.7) | - | nlohmann/json `json` | ordered_json | 2,912 | 4,999 | 15,603 | 604,744 | 13.5 | - | Glaze | generic (strict), generic [P] | 3,525 | 6,551 | 23,644 | 661,941 (P 632,543) | 15.6 | + | nlohmann/json `json` | ordered_json, parse | 2,503 | 4,414 | 13,479 | 622,816 | 12.7 | + | Glaze | generic (strict), generic [P] | 3,474 | 6,531 (P 6,302) | 23,193 | 673,526 | 16.5 (P 16.0) | | serde_json (Rust) | Value | 4,042 | 6,586 | 16,631 | 632,766 | 17.6 | **minify** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | parse + dump, parse + dump (source numbers) [N], parse_copy + dump | 483 | 1,014 | 5,459 (N 2,620) | 146,320 | 2.4 | - | yyjson | insitu (copy untimed) + write, read (raw numbers) + write [N], read + write | 592 | 1,205 | 9,008 (N 3,106) | 158,577 | 2.9 | - | sonic-cpp | Document + Serialize [U] | – (U 695) | – (U 1,541) | – (U 8,838) | – (U 168,901) | – (U 3.3) | - | simdjson | DOM + to_string, minify [P] | 742 (P 123) | 1,393 (P 337) | 8,808 (P 433) | 266,718 (P 47,040) | 3.8 (P 0.6) | + | **nlohmann/json `json_document`** | parse + dump, parse + dump (source numbers) [N] | 475 | 1,102 | 5,414 (N 2,372) | 144,877 | 2.5 | + | yyjson | insitu (copy) + write, read (raw numbers) + write [N], read + write | 600 | 1,316 (N 1,264) | 9,151 (N 2,994) | 201,645 | 3.1 | + | sonic-cpp | Document + Serialize [U] | – (U 647) | – (U 1,563) | – (U 8,917) | – (U 176,625) | – (U 3.4) | + | simdjson | DOM + to_string, minify [P] | 689 (P 122) | 1,394 (P 336) | 8,457 (P 426) | 292,576 (P 49,731) | 4.1 (P 0.6) | | sonic-rs (Rust) | Value | 1,000 | 2,097 | 7,795 | 215,280 | 5.4 | - | Boost.JSON | parse + serialize | 2,086 | 2,919 | 13,974 | 334,468 | 9.2 | + | Boost.JSON | parse + serialize | 1,907 | 2,950 | 13,662 | 342,183 | 10.2 | | simd-json (Rust) | borrowed (copy) | 1,889 | 4,196 | 15,716 | 414,377 | 9.2 | - | RapidJSON | Document + Writer, SAX to Writer, SAX to Writer (no encoding check) [U], SAX to Writer (raw numbers) (no encoding check) [U N], SAX to Writer (string stream), SAX to Writer (string stream) (no encoding check) [U] | 3,015 (U 1,978) | 3,012 (U 2,493) | 21,177 (U N 15,512) | 355,727 (U 249,235) | 13.9 (U 7.5) | - | Glaze | generic (strict), minify_json [P] | 3,780 (P 422) | 6,416 (P 1,144) | 23,765 (P 2,350) | 458,311 (P 96,405) | 14.7 (P 1.9) | + | RapidJSON | SAX to Writer, SAX to Writer (raw numbers) (no encoding check) [U N], SAX to Writer (string stream), SAX to Writer (string stream) (no encoding check) [U] | 2,746 (U 1,824) | 3,162 (U 2,672) | 21,674 (U N 15,166) | 381,832 (U 259,100) | 15.6 (U 8.5) | + | nlohmann/json `json` | parse + dump | 3,417 | 5,153 | 13,425 | 504,511 | 18.5 | + | Glaze | generic (strict), minify_json [P] | 3,359 (P 417) | 6,437 (P 1,116) | 23,896 (P 2,113) | 480,814 (P 97,812) | 15.9 (P 1.9) | | serde_json (Rust) | Value | 4,012 | 6,583 | 17,306 | 509,702 | 16.5 | - | nlohmann/json `json` | parse + dump | 4,143 | 5,702 | 16,463 | 528,092 | 19.5 | **write** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | dump, dump (source numbers) [N] | 150 | 260 | 3,861 (N 998) | 63,958 | 0.8 | - | yyjson | write | 204 | 327 | 3,748 | 65,989 | 1.2 | - | sonic-cpp | Serialize | 256 | 541 | 5,120 | 69,546 | 1.6 | - | Glaze | generic, generic (strict) | 360 | 660 | 3,714 | 124,598 | 1.7 | - | nlohmann/json `json` | dump | 471 | 644 | 4,344 | 114,096 | 1.9 | - | simdjson | to_string | 359 | 637 | 4,999 | 154,364 | 1.9 | + | **nlohmann/json `json_document`** | dump, dump (source numbers) [N] | 152 (N 147) | 260 | 3,811 (N 997) | 72,196 | 0.9 | + | yyjson | write | 180 | 325 | 3,548 | 71,044 | 1.2 | + | sonic-cpp | Serialize | 268 | 543 | 5,057 | 75,734 | 1.7 | + | Glaze | generic | 336 | 682 | 3,750 | 133,730 | 1.8 | + | nlohmann/json `json` | dump | 413 | 617 | 4,036 | 124,865 | 1.9 | + | simdjson | to_string | 360 | 636 | 5,363 | 169,032 | 1.9 | | sonic-rs (Rust) | Value | 434 | 927 | 3,987 | 109,176 | 2.8 | | simd-json (Rust) | borrowed | 582 | 800 | 5,147 | 122,623 | 2.8 | - | Boost.JSON | serialize | 480 | 1,016 | 6,154 | 139,022 | 2.5 | + | Boost.JSON | serialize | 474 | 1,003 | 6,012 | 148,120 | 2.5 | | serde_json (Rust) | Value | 550 | 887 | 4,005 | 134,163 | 3.3 | - | RapidJSON | Writer | 717 | 1,033 | 9,017 | 134,260 | 4.0 | + | RapidJSON | Writer | 661 | 1,015 | 8,980 | 136,957 | 4.1 | ??? info "Times in µs on x86-64 with Clang 23" @@ -2370,96 +2387,96 @@ cell for the times and the way.

| library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | accept | 255 | 512 | 1,055 | 34,729 | 1.1 | - | yyjson | insitu (copy untimed), read (raw numbers) | 334 | 811 | 2,580 | 83,153 | 1.5 | + | **nlohmann/json `json_document`** | accept | 250 | 509 | 1,032 | 34,454 | 1.1 | + | nlohmann/json `json` | accept | 335 | 711 | 2,018 | 39,513 | 1.4 | | sonic-rs (Rust) | IgnoredAny | 501 | 970 | 2,249 | 54,369 | 1.8 | - | Boost.JSON | SAX, SAX (numbers: none) | 571 | 910 | 1,684 | 55,498 | 2.3 | - | simdjson | DOM | 306 | 732 | 3,206 | 113,452 | 1.7 | - | sonic-cpp | Document [U] | – (U 448) | – (U 1,032) | – (U 3,143) | – (U 94,884) | – (U 1.8) | - | Glaze | validate_json | 588 | 1,431 | 1,867 | 75,571 | 2.4 | + | Boost.JSON | SAX, SAX (numbers: none) | 570 | 903 | 1,678 | 55,087 | 2.3 | + | simdjson | DOM | 302 | 721 | 3,202 | 116,859 | 1.7 | + | yyjson | insitu (copy), read, read (raw numbers) | 383 | 887 | 2,572 | 123,640 | 1.6 | + | sonic-cpp | Document [U] | – (U 451) | – (U 998) | – (U 3,031) | – (U 95,823) | – (U 1.8) | + | Glaze | validate_json | 594 | 1,230 | 2,139 | 73,235 | 2.5 | | serde_json (Rust) | IgnoredAny [U], from_utf8 + IgnoredAny | 624 (U 484) | 1,440 (U 1,370) | 2,406 (U 2,314) | 64,720 (U 58,247) | 2.4 (U 1.9) | - | nlohmann/json `json` | accept | 658 | 1,390 | 4,265 | 71,982 | 3.5 | | simd-json (Rust) | tape (copy) | 567 | 1,430 | 4,359 | 207,551 | 2.9 | - | RapidJSON | SAX (default precision), SAX (default precision) (no encoding check) [U], SAX (string stream, default precision), SAX (string stream, default precision) (no encoding check) [U], insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,756 (U 1,132) | 1,971 (U 1,572) | 4,118 | 198,915 (U 131,204) | 8.2 (U 4.1) | + | RapidJSON | SAX (default precision), SAX (default precision) (no encoding check) [U], SAX (string stream, default precision), SAX (string stream, default precision) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,798 (U 1,173) | 1,944 (U 1,504) | 4,019 | 232,684 (U 128,516) | 8.1 (U 4.1) | **sum** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | parse | 374 | 923 | 3,846 | 85,286 | 1.8 | - | yyjson | insitu (copy untimed) | 399 | 946 | 3,445 | 88,447 | 1.9 | - | simdjson | DOM, On-Demand | 394 | 977 | 4,117 | 114,602 | 2.2 | + | **nlohmann/json `json_document`** | parse | 366 | 941 | 3,680 | 86,966 | 1.8 | + | nlohmann/json `json` | sax | 431 | 914 | 3,824 | 60,439 | 2.1 | + | simdjson | DOM, On-Demand | 391 | 969 | 4,121 | 116,855 | 2.2 | | sonic-rs (Rust) | visitor | 501 | 1,123 | 4,397 | 59,583 | 2.5 | - | sonic-cpp | Document [U] | – (U 502) | – (U 1,175) | – (U 3,754) | – (U 104,583) | – (U 2.1) | - | Boost.JSON | SAX | 580 | 928 | 5,809 | 56,774 | 2.4 | - | nlohmann/json `json` | sax | 728 | 1,393 | 5,428 | 89,481 | 3.9 | + | yyjson | insitu (copy), read | 436 | 1,048 | 3,454 | 133,577 | 1.9 | + | sonic-cpp | Document [U] | – (U 504) | – (U 1,176) | – (U 3,701) | – (U 104,509) | – (U 2.1) | + | Boost.JSON | SAX | 580 | 928 | 5,715 | 55,874 | 2.3 | | simd-json (Rust) | visitor (copy) | 681 | 1,650 | 5,083 | 210,185 | 3.5 | | serde_json (Rust) | visitor | 1,311 | 2,288 | 7,127 | 129,497 | 4.6 | - | RapidJSON | SAX, SAX (no encoding check) [U], SAX (string stream), SAX (string stream) (no encoding check) [U], insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,816 (U 1,187) | 2,224 (U 1,765) | 10,719 | 206,811 (U 135,945) | 8.5 (U 4.3) | - | Glaze | generic (double, strict), lazy_json [P] | 2,427 | 3,972 | 12,165 | 253,385 (P 196,582) | 9.2 (P 5.6) | + | RapidJSON | SAX, SAX (no encoding check) [U], SAX (string stream), SAX (string stream) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,846 (U 1,229) | 2,176 (U 1,761) | 10,561 | 239,499 (U 131,510) | 8.4 (U 4.3) | + | Glaze | generic (double) [P], generic (double, strict), lazy_json [P] | 2,374 | 3,982 | 11,930 | 261,204 (P 198,036) | 9.0 (P 5.6) | **select** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | parse, structs (from_json) | 320 | 759 | 1,390 | 88,083 | 1.6 | - | yyjson | insitu (copy untimed), read (raw numbers) | 351 | 788 | 2,632 | 92,551 | 1.6 | - | simdjson | DOM, On-Demand (key selectors) [P], On-Demand [P], On-Demand structs [P] | 316 (P 181) | 731 (P 495) | 3,262 (P 702) | 120,808 (P 48,823) | 1.9 (P 1.1) | + | **nlohmann/json `json_document`** | parse, structs (from_json) | 316 | 783 | 1,368 | 91,736 | 1.6 | + | yyjson | insitu (copy), read (raw numbers) | 386 | 891 | 2,572 | 135,813 | 1.7 | | sonic-rs (Rust) | structs | 504 | 1,033 | 2,328 | 90,486 | 2.0 | - | Glaze | structs (validate_skipped), structs [P] | 544 (P 345) | 1,368 (P 419) | 1,924 (P 444) | 85,745 (P 66,442) | 2.2 (P 1.6) | - | sonic-cpp | Document [U] | – (U 460) | – (U 1,011) | – (U 3,204) | – (U 108,245) | – (U 1.9) | + | simdjson | DOM, On-Demand (key selectors) [P], On-Demand [P] | 318 (P 182) | 728 (P 494) | 3,213 (P 692) | 129,986 (P 50,660) | 2.0 (P 1.1) | + | Glaze | structs (validate_skipped), structs [P] | 542 (P 337) | 1,369 (P 416) | 1,846 (P 447) | 83,907 (P 68,455) | 2.2 (P 1.6) | + | sonic-cpp | Document [U] | – (U 454) | – (U 1,015) | – (U 3,025) | – (U 112,621) | – (U 2.0) | | serde_json (Rust) | from_utf8 + structs, structs [U] | 701 | 1,532 | 2,529 (U 2,402) | 107,316 | 3.0 | - | Boost.JSON | parse, parse_into structs | 776 | 1,389 | 7,121 | 97,681 | 3.2 | + | Boost.JSON | parse, parse_into structs | 760 | 1,388 | 7,026 | 97,008 | 3.2 | | simd-json (Rust) | structs (copy) | 679 | 1,731 | 5,144 | 239,164 | 3.5 | - | RapidJSON | insitu (copy untimed), insitu (copy untimed) (no encoding check) [U] | 1,762 (U 1,144) | 2,198 (U 1,817) | 11,464 | 209,290 (U 142,852) | 8.2 (U 4.1) | - | nlohmann/json `json` | parse, structs (from_json) | 3,602 | 5,124 | 11,831 | 444,210 | 20.2 | + | RapidJSON | Document (string stream) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 1,806 (U 1,184) | 2,303 (U 1,929) | 11,395 | 257,762 (U 171,716) | 8.7 (U 4.3) | + | nlohmann/json `json` | parse, structs (from_json) | 3,181 | 4,583 | 9,599 | 405,734 | 18.9 | **edit** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | editable, editable (source numbers) [N] | 526 | 1,127 | 5,674 (N 2,443) | 196,370 | 2.9 | - | sonic-cpp | Document [U] | – (U 711) | – (U 1,472) | – (U 7,996) | – (U 183,852) | – (U 3.2) | - | yyjson | insitu (copy untimed) + mut copy, insitu (copy) + mut copy | 918 | 1,548 | 7,155 | 270,654 | 3.9 | + | **nlohmann/json `json_document`** | editable, editable (source numbers) [N] | 519 | 1,152 | 5,671 (N 2,502) | 195,716 | 3.0 | + | sonic-cpp | Document [U] | – (U 642) | – (U 1,497) | – (U 8,153) | – (U 184,321) | – (U 3.3) | + | yyjson | insitu (copy) + mut copy, mut copy | 833 | 1,674 | 7,249 | 316,652 | 4.2 | | sonic-rs (Rust) | Value | 1,197 | 2,389 | 7,744 | 390,952 | 6.9 | - | Boost.JSON | parse | 1,855 | 2,596 | 12,765 | 350,286 | 8.3 | + | Boost.JSON | parse | 1,716 | 2,578 | 13,427 | 354,510 | 8.9 | | simd-json (Rust) | borrowed (copy), owned (copy) | 1,862 | 4,194 | 14,896 | 391,369 | 9.0 | - | RapidJSON | insitu (copy untimed), insitu (copy untimed) (no encoding check) [U], insitu (copy) | 2,635 (U 1,952) | 3,103 (U 2,728) | 21,139 | 333,913 (U 267,081) | 11.8 (U 7.7) | - | nlohmann/json `json` | ordered_json, parse | 3,069 | 4,905 | 16,702 | 666,261 | 13.1 | + | RapidJSON | Document (string stream) (no encoding check) [U], insitu (copy), insitu (copy) (no encoding check) [U] | 2,478 (U 1,842) | 3,261 (U 2,887) | 21,686 | 378,727 (U 294,727) | 13.1 (U 8.3) | + | nlohmann/json `json` | ordered_json, parse | 2,452 | 4,402 | 14,765 | 646,489 | 12.6 | | serde_json (Rust) | Value | 4,042 | 6,586 | 16,631 | 632,766 | 17.6 | - | Glaze | generic (strict), generic [P] | 4,341 | 7,322 | 26,786 | 725,881 | 18.3 (P 17.7) | + | Glaze | generic (strict), generic [P] | 3,896 | 7,671 | 28,104 (P 27,111) | 723,675 | 20.2 | **minify** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | parse + dump, parse + dump (source numbers) [N] | 518 | 1,040 | 5,043 (N 2,456) | 146,125 | 2.4 | - | yyjson | insitu (copy untimed) + write, read (raw numbers) + write [N] | 620 | 1,189 | 6,283 (N 3,472) | 154,016 | 3.0 | - | sonic-cpp | Document + Serialize [U] | – (U 710) | – (U 1,485) | – (U 8,122) | – (U 166,935) | – (U 3.1) | - | simdjson | DOM + to_string, minify [P] | 783 (P 105) | 1,395 (P 269) | 8,303 (P 337) | 275,007 (P 45,087) | 4.0 (P 0.5) | + | **nlohmann/json `json_document`** | parse + dump, parse + dump (source numbers) [N] | 472 | 1,055 | 5,041 (N 2,363) | 149,143 | 2.5 | + | yyjson | read (raw numbers) + write [N], read + write | 626 | 1,261 | 6,179 (N 3,426) | 200,886 | 3.3 | + | sonic-cpp | Document + Serialize [U] | – (U 655) | – (U 1,474) | – (U 7,856) | – (U 169,992) | – (U 3.5) | + | simdjson | DOM + to_string, minify [P] | 706 (P 99.0) | 1,411 (P 270) | 8,125 (P 329) | 270,332 (P 42,546) | 4.3 (P 0.5) | | sonic-rs (Rust) | Value | 1,000 | 2,097 | 7,795 | 215,280 | 5.4 | - | Boost.JSON | parse + serialize | 1,924 | 2,569 | 12,622 | 329,090 | 8.4 | + | Boost.JSON | parse + serialize | 1,722 | 2,573 | 12,678 | 330,878 | 9.0 | | simd-json (Rust) | borrowed (copy) | 1,889 | 4,196 | 15,716 | 414,377 | 9.2 | - | RapidJSON | Document + Writer, SAX to Writer, SAX to Writer (no encoding check) [U], SAX to Writer (raw numbers) (no encoding check) [U N], SAX to Writer (raw numbers) [N], SAX to Writer (string stream), SAX to Writer (string stream) (no encoding check) [U] | 2,808 (U N 2,022) | 2,975 (U 2,480) | 22,589 (N 14,986) | 358,807 (U 261,527) | 12.7 (U 7.2) | + | RapidJSON | Document + Writer, SAX to Writer, SAX to Writer (no encoding check) [U], SAX to Writer (raw numbers) (no encoding check) [U N], SAX to Writer (string stream), SAX to Writer (string stream) (no encoding check) [U] | 2,456 (U 1,794) | 2,864 (U 2,444) | 21,753 (U N 14,707) | 338,985 (U 252,656) | 13.6 (U 7.5) | + | nlohmann/json `json` | parse + dump | 3,525 | 5,178 | 14,024 | 506,705 | 20.6 | | serde_json (Rust) | Value | 4,012 | 6,583 | 17,306 | 509,702 | 16.5 | - | nlohmann/json `json` | parse + dump | 4,445 | 5,713 | 16,711 | 543,033 | 21.4 | - | Glaze | generic (strict), minify_json [P] | 4,132 (P 444) | 7,465 (P 1,059) | 26,962 (P 2,222) | 528,811 (P 91,153) | 17.2 (P 1.9) | + | Glaze | generic (strict), minify_json [P] | 3,801 (P 422) | 7,482 (P 1,051) | 26,932 (P 2,140) | 544,342 (P 87,842) | 19.2 (P 2.1) | **write** | library | variant | `twitter.json` | `citm_catalog.json` | `canada.json` | `jeopardy.json` | one status (2.5 KB) | | --- | --- | --: | --: | --: | --: | --: | - | **nlohmann/json `json_document`** | dump, dump (source numbers) [N] | 160 (N 154) | 311 (N 279) | 3,714 (N 989) | 67,038 (N 64,301) | 0.9 | - | yyjson | write | 218 | 386 | 3,476 | 71,247 | 1.4 | - | sonic-cpp | Serialize | 224 | 475 | 4,850 | 65,131 | 1.3 | - | nlohmann/json `json` | dump | 451 | 628 | 4,506 | 116,529 | 2.0 | - | Glaze | generic | 399 | 748 | 4,220 | 128,020 | 2.0 | - | simdjson | to_string | 389 | 656 | 4,896 | 157,616 | 2.1 | + | **nlohmann/json `json_document`** | dump, dump (source numbers) [N] | 158 (N 153) | 279 | 3,637 (N 982) | 67,366 | 0.9 | + | yyjson | write | 216 | 367 | 3,366 | 73,272 | 1.4 | + | sonic-cpp | Serialize | 228 | 474 | 4,766 | 66,619 | 1.3 | + | nlohmann/json `json` | dump | 438 | 599 | 4,458 | 116,318 | 1.9 | + | Glaze | generic, generic (strict) | 396 | 725 | 4,107 | 132,573 | 2.1 | + | simdjson | to_string | 382 | 661 | 4,787 | 162,220 | 2.1 | | sonic-rs (Rust) | Value | 434 | 927 | 3,987 | 109,176 | 2.8 | - | Boost.JSON | serialize | 478 | 916 | 5,615 | 141,846 | 2.5 | + | Boost.JSON | serialize | 478 | 913 | 5,610 | 141,994 | 2.6 | | simd-json (Rust) | borrowed | 582 | 800 | 5,147 | 122,623 | 2.8 | | serde_json (Rust) | Value | 550 | 887 | 4,005 | 134,163 | 3.3 | - | RapidJSON | Writer | 627 | 1,008 | 9,596 | 123,764 | 3.7 | + | RapidJSON | Writer | 633 | 960 | 9,388 | 127,319 | 3.8 | ### F. Behavior changes @@ -2489,8 +2506,8 @@ because 3.12.0 has no BON8. | machine | Apple M1 Max laptop on AC power, macOS 27.0.1 | | compiler | Apple clang 21, libc++ | | flags | `-O3 -flto -DNDEBUG`, the compiler's default standard, C++14 | -| suite | 3 rounds × 4 repetitions per version, random interleaving, each round of a version started only when the load average was below 4 and repeated when it rose above 5 while running; of 3.12.0 and 3.13.0, the round that was 4.2% and 1.8% slower overall than the other two was dropped; the median of the remaining 8 | -| noise | the coefficient of variation was 3% or less for 172 of the 182 rows with 3.12.0 and 174 with 3.13.0; the largest was 7.3%, not counting one 3.12.0 run of a 1.5 µs benchmark that a disturbance made 1.4× as slow | +| suite | 3 rounds × 4 repetitions per version, random interleaving, each round of a version started only when the load average was below 4 and repeated when it rose above 5 while running; the rounds of a version differed by less than 1% overall; the median of all 12 | +| noise | the coefficient of variation was 3% or less for 180 of the 182 rows with 3.12.0 and 179 with 3.13.0; the largest was 5.4% (`Iterate/twitter` with 3.13.0), not counting two disturbed runs: two repetitions of a 0.4 µs benchmark with 3.12.0 that took 2.4× as long, and one of a 46 ms one with 3.13.0 that took 1.4× as long | | inputs | the files of [Appendix A](#a-test-files), and number-heavy files | | Intel check | the suite again on a MacBook Pro (15-inch, 2016) with an Intel Core i7-6920HQ (Skylake, 4 cores), macOS 12.0.1, Apple clang 13, the same flags with C++11; started below a load of 3, repeated above 4; the first round of each version dropped (3.12.0's was 4.7% slower than the others); the coefficient of variation was 3% or less for 120 rows with 3.12.0 and 161 of 234 with 3.13.0, so single rows are less reliable than on the M1 Max; geometric mean 3.07×, and two rows below 1×: copying `citm_catalog.json` without destroying the copy (0.93×) and `==` of it and a copy (0.95×), both in each round | @@ -2498,34 +2515,35 @@ because 3.12.0 has no BON8. **The other measurements.** The timeline is [`tests/benchmarks/history`](https://github.com/nlohmann/json/tree/develop/tests/benchmarks/history): one program, -compiled against `single_include` of 3.12.0, of each of the 351 commits on `develop` up to November 3 that changed +compiled against `single_include` of 3.12.0, of each of the 358 commits on `develop` up to November 7 that changed `json.hpp` or `json_view.hpp` since, and of 3.13.0 (C++17, `-O3`, no LTO), 4 rounds in random order, median of the rounds (the mean of the two middle ones). Two commits that don't compile on their own are left out. The commits up to -October 27 were run on October 27, the later ones and 3.13.0 on November 3, together with twelve of the earlier commits -as a check: per workload, their median moved by 1.5% or less. The algorithmic fixes come from small extra programs -(C++17, `-O3`, median of 3 interleaved runs). The comparison with other libraries is described in [Appendix -E](#e-comparison-with-other-libraries). +October 27 were run on October 27, those up to November 2 on November 3, and the later ones and 3.13.0 on November 7, +each time together with twelve of the earlier commits as a check: per workload, their median moved by 1.5% or less +(3% for `json_view`'s parse of `canada.json`, which only three of them have). The algorithmic fixes come from small +extra programs (C++17, `-O3`, median of 3 interleaved runs). The comparison with other libraries is described in +[Appendix E](#e-comparison-with-other-libraries). **Compile times.** The two programs of [The price](#the-price), each compiled as one translation unit with `-std=c++20` (modules need it) and `-O0` or `-O2`, with Apple clang 21 and Homebrew GCC 16.2 on the M1 Max. The time is the CPU time (user plus system) of the compiler process, the median of 5 rounds in which all 40 compilations ran in a random order. -The slowest of the 5 runs was within 13% of the fastest for every program and every build of the precompiled header or +The slowest of the 5 runs was within 14% of the fastest for every program and every build of the precompiled header or the module. Every variant was also linked and run once, with the same output from all of them. | build | program | 3.12.0 | 3.13.0 | 3.13.0, PCH | 3.13.0, module | | --- | --- | --: | --: | --: | --: | -| Apple clang `-O0` | `count_numbers` | 955 | 1,320 | 689 | 918 | -| | `server_config` | 1,113 | 1,496 | 863 | 1,136 | -| Apple clang `-O2` | `count_numbers` | 1,393 | 2,081 | 1,458 | 1,685 | -| | `server_config` | 1,754 | 2,546 | 1,925 | 2,169 | -| GCC 16 `-O0` | `count_numbers` | 1,569 | 2,548 | 1,725 | 1,700 | -| | `server_config` | 2,025 | 2,985 | 2,302 | 2,326 | -| GCC 16 `-O2` | `count_numbers` | 2,336 | 3,702 | 2,987 | 2,913 | -| | `server_config` | 3,122 | 4,714 | 4,006 | 4,055 | +| Apple clang `-O0` | `count_numbers` | 831 | 1,131 | 639 | 790 | +| | `server_config` | 963 | 1,313 | 774 | 1,037 | +| Apple clang `-O2` | `count_numbers` | 1,328 | 1,898 | 1,312 | 1,491 | +| | `server_config` | 1,584 | 2,251 | 1,779 | 1,926 | +| GCC 16 `-O0` | `count_numbers` | 1,417 | 2,385 | 1,593 | 1,604 | +| | `server_config` | 1,878 | 2,820 | 2,152 | 2,180 | +| GCC 16 `-O2` | `count_numbers` | 2,159 | 3,465 | 2,765 | 2,740 | +| | `server_config` | 2,878 | 4,388 | 3,722 | 3,774 |

Compile time in milliseconds of the two programs in [The price](#the-price) (CPU -time of the compiler, median of 5 runs). Building the precompiled header took 973 and 987 ms with Apple clang (`-O0`, -`-O2`) and 2,565 and 2,589 ms with GCC; building the module took 1,617 and 1,602 ms or 2,499 and 2,465 ms.

+time of the compiler, median of 5 runs). Building the precompiled header took 917 and 879 ms with Apple clang (`-O0`, +`-O2`) and 2,306 and 2,264 ms with GCC; building the module took 1,399 and 1,433 ms or 2,339 and 2,325 ms.

??? example "The programs and the build commands" @@ -2684,7 +2702,8 @@ memory costs more page faults. We did not measure on Windows, and we did not mea [#6028][6028]. - 5 **Read the assembly:** stack canary [#5854][5854]; exceptions and inlining [#5838][5838], [#5840][5840], [#5839][5839], [#5836][5836]; aliasing [#5633][5633]; forced - inlining [#5878][5878]; branch-free selections [#5908][5908]; code size [#5902][5902]. + inlining [#5878][5878]; branch-free selections [#5908][5908]; code size [#5902][5902]; the order of the iterator's + type tests [#6039][6039]. - 6 **Write through a cursor:** write buffer [#5285][5285]; adapter on the stack [#5449][5449]; binary sinks [#5286][5286]; cursor and runs of numbers [#5824][5824], [#5885][5885]; `to_bson()` in one pass [#5979][5979]; a window instead of zeroing the whole capacity [#6020][6020]. @@ -2900,3 +2919,4 @@ These are the checks behind the themes: [6030]: https://github.com/nlohmann/json/pull/6030 [6031]: https://github.com/nlohmann/json/pull/6031 [6033]: https://github.com/nlohmann/json/pull/6033 +[6039]: https://github.com/nlohmann/json/pull/6039 diff --git a/docs/mkdocs/docs/images/perf_blog_distribution.svg b/docs/mkdocs/docs/images/perf_blog_distribution.svg index 4760bfd85..313897a5c 100644 --- a/docs/mkdocs/docs/images/perf_blog_distribution.svg +++ b/docs/mkdocs/docs/images/perf_blog_distribution.svg @@ -1,34 +1,34 @@ Speedup of 3.13.0 over 3.12.0 for all 182 benchmarks of the suite -Bars counting the benchmarks per speedup range: below 1x: 1; 1 to 1.5x: 22; 1.5 to 2x: 12; 2 to 3x: 60; 3 to 5x: 58; 5 to 10x: 25; 10x or more: 4. Median 2.9x, geometric mean 3.0x. +Bars counting the benchmarks per speedup range: below 1x: 2; 1 to 1.5x: 21; 1.5 to 2x: 18; 2 to 3x: 52; 3 to 5x: 48; 5 to 10x: 31; 10x or more: 10. Median 2.9x, geometric mean 3.3x. 0 - -20 - -40 - -60 -below 1×: 1 -1 + +20 + +40 + +60 +below 1×: 2 +2 below 1× -1 to 1.5×: 22 -22 +1 to 1.5×: 21 +21 1 to 1.5× -1.5 to 2×: 12 -12 +1.5 to 2×: 18 +18 1.5 to 2× -2 to 3×: 60 -60 +2 to 3×: 52 +52 2 to 3× -3 to 5×: 58 -58 +3 to 5×: 48 +48 3 to 5× -5 to 10×: 25 -25 +5 to 10×: 31 +31 5 to 10× -10× or more: 4 -4 +10× or more: 10 +10 10× or more speedup over 3.12.0, more is better diff --git a/docs/mkdocs/docs/images/perf_blog_heldout.svg b/docs/mkdocs/docs/images/perf_blog_heldout.svg index 5bce0d107..51cf29663 100644 --- a/docs/mkdocs/docs/images/perf_blog_heldout.svg +++ b/docs/mkdocs/docs/images/perf_blog_heldout.svg @@ -1,6 +1,6 @@ Validating 19 files 3.13.0 was not tuned on: json_document's time relative to the fastest other library per file -Dot plot per file, less is better; below 1.0 json_document is the fastest fully validating library. mesh: Mac 0.68, x86-64 0.44 (serde_json (Rust)); marine_ik: Mac 0.59, x86-64 0.64 (Boost.J​SON); semanticscholar-corpus: Mac 0.79, x86-64 0.65 (sonic-rs (Rust)); gsoc-2018: Mac 0.60, x86-64 0.66 (Boost.J​SON); twitter_api_compact_response: Mac 0.91, x86-64 0.70 (simdjson); twitterescaped: Mac 0.93, x86-64 0.76 (simdjson); numbers: Mac 0.67, x86-64 0.77 (Boost.J​SON); github_events: Mac 0.79, x86-64 0.77 (simdjson); update-center: Mac 0.88, x86-64 0.79 (simdjson); twitter_timeline: Mac 0.97, x86-64 0.80 (yyjson); twitter_api_response: Mac 0.93, x86-64 0.81 (simdjson); google_maps_api_compact_response: Mac 0.86, x86-64 0.81 (yyjson); repeat: Mac 0.65, x86-64 0.82 (simdjson); random: Mac 0.81, x86-64 0.88 (simdjson); apache_builds: Mac 1.08, x86-64 0.90 (simdjson); instruments: Mac 0.90, x86-64 0.92 (simdjson); mesh.pretty: Mac 0.86, x86-64 0.92 (Boost.J​SON); tree-pretty: Mac 0.93, x86-64 0.96 (simdjson); google_maps_api_response: Mac 0.93, x86-64 0.99 (simdjson). +Dot plot per file, less is better; below 1.0 json_document is the fastest fully validating library. mesh: Mac 0.72, x86-64 0.44 (serde_json (Rust)); semanticscholar-corpus: Mac 0.78, x86-64 0.63 (sonic-rs (Rust)); gsoc-2018: Mac 0.59, x86-64 0.64 (Boost.J​SON); marine_ik: Mac 0.62, x86-64 0.64 (Boost.J​SON); twitter_api_compact_response: Mac 0.91, x86-64 0.66 (yyjson); twitterescaped: Mac 0.94, x86-64 0.76 (simdjson); update-center: Mac 0.88, x86-64 0.77 (simdjson); github_events: Mac 0.78, x86-64 0.78 (simdjson); twitter_api_response: Mac 0.95, x86-64 0.81 (simdjson); twitter_timeline: Mac 0.99, x86-64 0.82 (yyjson); numbers: Mac 0.72, x86-64 0.82 (Boost.J​SON); random: Mac 0.82, x86-64 0.86 (simdjson); repeat: Mac 0.65, x86-64 0.89 (simdjson); apache_builds: Mac 1.08, x86-64 0.90 (simdjson); instruments: Mac 0.92, x86-64 0.91 (simdjson); google_maps_api_compact_response: Mac 0.87, x86-64 0.92 (yyjson); mesh.pretty: Mac 0.88, x86-64 0.93 (Boost.J​SON); tree-pretty: Mac 0.96, x86-64 0.94 (simdjson); google_maps_api_response: Mac 0.91, x86-64 1.00 (simdjson). 0.4× @@ -22,80 +22,80 @@ x86-64, G​CC 16.2 next on x86-64 mesh -mesh, Apple M1 Max: 0.68× the time of Glaze -mesh, x86-64, G​CC 16.2: 0.44× the time of serde_json (Rust) +mesh, Apple M1 Max: 0.72× the time of Glaze +mesh, x86-64, G​CC 16.2: 0.44× the time of serde_json (Rust) serde_json (Rust) -marine_ik -marine_ik, Apple M1 Max: 0.59× the time of Glaze -marine_ik, x86-64, G​CC 16.2: 0.64× the time of Boost.J​SON -Boost.J​SON -semanticscholar-corpus -semanticscholar-corpus, Apple M1 Max: 0.79× the time of sonic-rs (Rust) -semanticscholar-corpus, x86-64, G​CC 16.2: 0.65× the time of sonic-rs (Rust) -sonic-rs (Rust) -gsoc-2018 -gsoc-2018, Apple M1 Max: 0.60× the time of sonic-rs (Rust) -gsoc-2018, x86-64, G​CC 16.2: 0.66× the time of Boost.J​SON +semanticscholar-corpus +semanticscholar-corpus, Apple M1 Max: 0.78× the time of sonic-rs (Rust) +semanticscholar-corpus, x86-64, G​CC 16.2: 0.63× the time of sonic-rs (Rust) +sonic-rs (Rust) +gsoc-2018 +gsoc-2018, Apple M1 Max: 0.59× the time of sonic-rs (Rust) +gsoc-2018, x86-64, G​CC 16.2: 0.64× the time of Boost.J​SON +Boost.J​SON +marine_ik +marine_ik, Apple M1 Max: 0.62× the time of Glaze +marine_ik, x86-64, G​CC 16.2: 0.64× the time of Boost.J​SON Boost.J​SON twitter_api_compact_response twitter_api_compact_response, Apple M1 Max: 0.91× the time of yyjson -twitter_api_compact_response, x86-64, G​CC 16.2: 0.70× the time of simdjson -simdjson +twitter_api_compact_response, x86-64, G​CC 16.2: 0.66× the time of yyjson +yyjson twitterescaped -twitterescaped, Apple M1 Max: 0.93× the time of yyjson -twitterescaped, x86-64, G​CC 16.2: 0.76× the time of simdjson +twitterescaped, Apple M1 Max: 0.94× the time of yyjson +twitterescaped, x86-64, G​CC 16.2: 0.76× the time of simdjson simdjson -numbers -numbers, Apple M1 Max: 0.67× the time of Boost.J​SON -numbers, x86-64, G​CC 16.2: 0.77× the time of Boost.J​SON -Boost.J​SON +update-center +update-center, Apple M1 Max: 0.88× the time of sonic-rs (Rust) +update-center, x86-64, G​CC 16.2: 0.77× the time of simdjson +simdjson github_events -github_events, Apple M1 Max: 0.79× the time of simdjson -github_events, x86-64, G​CC 16.2: 0.77× the time of simdjson +github_events, Apple M1 Max: 0.78× the time of simdjson +github_events, x86-64, G​CC 16.2: 0.78× the time of simdjson simdjson -update-center -update-center, Apple M1 Max: 0.88× the time of sonic-rs (Rust) -update-center, x86-64, G​CC 16.2: 0.79× the time of simdjson +twitter_api_response +twitter_api_response, Apple M1 Max: 0.95× the time of yyjson +twitter_api_response, x86-64, G​CC 16.2: 0.81× the time of simdjson simdjson twitter_timeline -twitter_timeline, Apple M1 Max: 0.97× the time of yyjson -twitter_timeline, x86-64, G​CC 16.2: 0.80× the time of yyjson +twitter_timeline, Apple M1 Max: 0.99× the time of yyjson +twitter_timeline, x86-64, G​CC 16.2: 0.82× the time of yyjson yyjson -twitter_api_response -twitter_api_response, Apple M1 Max: 0.93× the time of simdjson -twitter_api_response, x86-64, G​CC 16.2: 0.81× the time of simdjson -simdjson -google_maps_api_compact_response -google_maps_api_compact_response, Apple M1 Max: 0.86× the time of yyjson -google_maps_api_compact_response, x86-64, G​CC 16.2: 0.81× the time of yyjson -yyjson +numbers +numbers, Apple M1 Max: 0.72× the time of Glaze +numbers, x86-64, G​CC 16.2: 0.82× the time of Boost.J​SON +Boost.J​SON +random +random, Apple M1 Max: 0.82× the time of simdjson +random, x86-64, G​CC 16.2: 0.86× the time of simdjson +simdjson repeat repeat, Apple M1 Max: 0.65× the time of simdjson -repeat, x86-64, G​CC 16.2: 0.82× the time of simdjson +repeat, x86-64, G​CC 16.2: 0.89× the time of simdjson simdjson -random -random, Apple M1 Max: 0.81× the time of simdjson -random, x86-64, G​CC 16.2: 0.88× the time of simdjson +apache_builds +apache_builds, Apple M1 Max: 1.08× the time of simdjson +apache_builds, x86-64, G​CC 16.2: 0.90× the time of simdjson simdjson -apache_builds -apache_builds, Apple M1 Max: 1.08× the time of simdjson -apache_builds, x86-64, G​CC 16.2: 0.90× the time of simdjson +instruments +instruments, Apple M1 Max: 0.92× the time of yyjson +instruments, x86-64, G​CC 16.2: 0.91× the time of simdjson simdjson -instruments -instruments, Apple M1 Max: 0.90× the time of yyjson -instruments, x86-64, G​CC 16.2: 0.92× the time of simdjson -simdjson +google_maps_api_compact_response +google_maps_api_compact_response, Apple M1 Max: 0.87× the time of yyjson +google_maps_api_compact_response, x86-64, G​CC 16.2: 0.92× the time of yyjson +yyjson mesh.pretty -mesh.pretty, Apple M1 Max: 0.86× the time of Glaze -mesh.pretty, x86-64, G​CC 16.2: 0.92× the time of Boost.J​SON +mesh.pretty, Apple M1 Max: 0.88× the time of Glaze +mesh.pretty, x86-64, G​CC 16.2: 0.93× the time of Boost.J​SON Boost.J​SON tree-pretty -tree-pretty, Apple M1 Max: 0.93× the time of simdjson -tree-pretty, x86-64, G​CC 16.2: 0.96× the time of simdjson +tree-pretty, Apple M1 Max: 0.96× the time of yyjson +tree-pretty, x86-64, G​CC 16.2: 0.94× the time of simdjson simdjson google_maps_api_response -google_maps_api_response, Apple M1 Max: 0.93× the time of simdjson -google_maps_api_response, x86-64, G​CC 16.2: 0.99× the time of simdjson +google_maps_api_response, Apple M1 Max: 0.91× the time of yyjson +google_maps_api_response, x86-64, G​CC 16.2: 1.00× the time of simdjson simdjson as fast as the next diff --git a/docs/mkdocs/docs/images/perf_blog_overview.svg b/docs/mkdocs/docs/images/perf_blog_overview.svg index a53442e70..95943d1db 100644 --- a/docs/mkdocs/docs/images/perf_blog_overview.svg +++ b/docs/mkdocs/docs/images/perf_blog_overview.svg @@ -1,87 +1,97 @@ Speedup of 3.13.0 over 3.12.0 per workload, Apple M1 Max, Apple clang -Horizontal bars of the speedup, more is better. twitter.json 3.1x; citm_catalog.json 4.2x; canada.json 3.4x; canada.json, indented 6.5x; citm, ordered_json 6.8x; twitter, std::ifstream 2.5x; citm, FILE* 4.7x; citm, accept() 7.1x; dump() twitter 6.7x; dump() canada 3.0x; dump(4) citm 4.7x; to_cbor() twitter 4.6x; twitter, memory 3.4x; twitter, FILE* 6.6x; diff() canada 10x; iterate canada 2.7x; copy + destroy citm 1.13x; == citm 1.06x. +Horizontal bars of the speedup, more is better. twitter.json 3.5x; citm_catalog.json 5.1x; canada.json 4.1x; canada.json, indented 7.4x; citm, ordered_json 8.2x; twitter, std::ifstream 2.5x; citm, FILE* 15x; citm, accept() 14x; dump() twitter 6.6x; dump() canada 2.9x; dump(4) citm 4.6x; to_cbor() twitter 4.4x; twitter, memory 3.5x; twitter, FILE* 9.2x; diff() canada 10x; iterate canada 1.96x; copy + destroy citm 1.11x; == citm 1.01x. Parsing Writing Reading C​BOR Values - -1× - -2× - -3× - -4× - -5× - -6× - -7× - -8× - -9× - -10× + +1× + +2× + +3× + +4× + +5× + +6× + +7× + +8× + +9× + +10× + +11× + +12× + +13× + +14× + +15× -11× +16× twitter.json -twitter.json: 3.1× -3.1× +twitter.json: 3.5× +3.5× citm_catalog.json -citm_catalog.json: 4.2× -4.2× +citm_catalog.json: 5.1× +5.1× canada.json -canada.json: 3.4× -3.4× +canada.json: 4.1× +4.1× canada.json, indented -canada.json, indented: 6.5× -6.5× +canada.json, indented: 7.4× +7.4× citm, ordered_json -citm, ordered_json: 6.8× -6.8× +citm, ordered_json: 8.2× +8.2× twitter, std::ifstream -twitter, std::ifstream: 2.5× -2.5× +twitter, std::ifstream: 2.5× +2.5× citm, FILE* -citm, FILE*: 4.7× -4.7× +citm, FILE*: 15× +15× citm, accept() -citm, accept(): 7.1× -7.1× +citm, accept(): 14× +14× dump() twitter -dump() twitter: 6.7× -6.7× +dump() twitter: 6.6× +6.6× dump() canada -dump() canada: 3.0× -3.0× +dump() canada: 2.9× +2.9× dump(4) citm -dump(4) citm: 4.7× -4.7× +dump(4) citm: 4.6× +4.6× to_cbor() twitter -to_cbor() twitter: 4.6× -4.6× +to_cbor() twitter: 4.4× +4.4× twitter, memory -twitter, memory: 3.4× -3.4× +twitter, memory: 3.5× +3.5× twitter, FILE* -twitter, FILE*: 6.6× -6.6× +twitter, FILE*: 9.2× +9.2× diff() canada -diff() canada: 10× -10× +diff() canada: 10× +10× iterate canada -iterate canada: 2.7× -2.7× +iterate canada: 1.96× +1.96× copy + destroy citm -copy + destroy citm: 1.13× -1.13× +copy + destroy citm: 1.11× +1.11× == citm -== citm: 1.06× -1.06× - +== citm: 1.01× +1.01× + speedup over 3.12.0 (3.12.0 = 1×), more is better diff --git a/docs/mkdocs/docs/images/perf_blog_price.svg b/docs/mkdocs/docs/images/perf_blog_price.svg index 575485d56..e067880af 100644 --- a/docs/mkdocs/docs/images/perf_blog_price.svg +++ b/docs/mkdocs/docs/images/perf_blog_price.svg @@ -1,6 +1,6 @@ Compile time of two programs with 3.13.0, alone, with a precompiled header and as a module, compared with 3.12.0 -Horizontal bars of the change in compile time against 3.12.0, less is better. Apple clang 21, -O0 (debug), count_numbers, 3.13.0: +38%; Apple clang 21, -O0 (debug), count_numbers, 3.13.0, precompiled header: -28%; Apple clang 21, -O0 (debug), count_numbers, 3.13.0, module: -4%; Apple clang 21, -O0 (debug), server_config, 3.13.0: +34%; Apple clang 21, -O0 (debug), server_config, 3.13.0, precompiled header: -23%; Apple clang 21, -O0 (debug), server_config, 3.13.0, module: +2%; Apple clang 21, -O2, count_numbers, 3.13.0: +49%; Apple clang 21, -O2, count_numbers, 3.13.0, precompiled header: +5%; Apple clang 21, -O2, count_numbers, 3.13.0, module: +21%; Apple clang 21, -O2, server_config, 3.13.0: +45%; Apple clang 21, -O2, server_config, 3.13.0, precompiled header: +10%; Apple clang 21, -O2, server_config, 3.13.0, module: +24%; G​CC 16, -O0 (debug), count_numbers, 3.13.0: +62%; G​CC 16, -O0 (debug), count_numbers, 3.13.0, precompiled header: +10%; G​CC 16, -O0 (debug), count_numbers, 3.13.0, module: +8%; G​CC 16, -O0 (debug), server_config, 3.13.0: +47%; G​CC 16, -O0 (debug), server_config, 3.13.0, precompiled header: +14%; G​CC 16, -O0 (debug), server_config, 3.13.0, module: +15%; G​CC 16, -O2, count_numbers, 3.13.0: +58%; G​CC 16, -O2, count_numbers, 3.13.0, precompiled header: +28%; G​CC 16, -O2, count_numbers, 3.13.0, module: +25%; G​CC 16, -O2, server_config, 3.13.0: +51%; G​CC 16, -O2, server_config, 3.13.0, precompiled header: +28%; G​CC 16, -O2, server_config, 3.13.0, module: +30%. +Horizontal bars of the change in compile time against 3.12.0, less is better. Apple clang 21, -O0 (debug), count_numbers, 3.13.0: +36%; Apple clang 21, -O0 (debug), count_numbers, 3.13.0, precompiled header: -23%; Apple clang 21, -O0 (debug), count_numbers, 3.13.0, module: -5%; Apple clang 21, -O0 (debug), server_config, 3.13.0: +36%; Apple clang 21, -O0 (debug), server_config, 3.13.0, precompiled header: -20%; Apple clang 21, -O0 (debug), server_config, 3.13.0, module: +8%; Apple clang 21, -O2, count_numbers, 3.13.0: +43%; Apple clang 21, -O2, count_numbers, 3.13.0, precompiled header: -1%; Apple clang 21, -O2, count_numbers, 3.13.0, module: +12%; Apple clang 21, -O2, server_config, 3.13.0: +42%; Apple clang 21, -O2, server_config, 3.13.0, precompiled header: +12%; Apple clang 21, -O2, server_config, 3.13.0, module: +22%; G​CC 16, -O0 (debug), count_numbers, 3.13.0: +68%; G​CC 16, -O0 (debug), count_numbers, 3.13.0, precompiled header: +12%; G​CC 16, -O0 (debug), count_numbers, 3.13.0, module: +13%; G​CC 16, -O0 (debug), server_config, 3.13.0: +50%; G​CC 16, -O0 (debug), server_config, 3.13.0, precompiled header: +15%; G​CC 16, -O0 (debug), server_config, 3.13.0, module: +16%; G​CC 16, -O2, count_numbers, 3.13.0: +60%; G​CC 16, -O2, count_numbers, 3.13.0, precompiled header: +28%; G​CC 16, -O2, count_numbers, 3.13.0, module: +27%; G​CC 16, -O2, server_config, 3.13.0: +52%; G​CC 16, -O2, server_config, 3.13.0, precompiled header: +29%; G​CC 16, -O2, server_config, 3.13.0, module: +31%. 3.13.0 @@ -15,19 +15,19 @@ count_numbers -count_numbers, Apple clang 21, -O0 (debug), 3.13.0: 1,320 ms against 955 ms with 3.12.0 (+38%) -+38% -count_numbers, Apple clang 21, -O0 (debug), 3.13.0, precompiled header: 688 ms against 955 ms with 3.12.0 (−28%) -−28% -count_numbers, Apple clang 21, -O0 (debug), 3.13.0, module: 918 ms against 955 ms with 3.12.0 (−4%) -−4% +count_numbers, Apple clang 21, -O0 (debug), 3.13.0: 1,131 ms against 831 ms with 3.12.0 (+36%) ++36% +count_numbers, Apple clang 21, -O0 (debug), 3.13.0, precompiled header: 639 ms against 831 ms with 3.12.0 (−23%) +−23% +count_numbers, Apple clang 21, -O0 (debug), 3.13.0, module: 790 ms against 831 ms with 3.12.0 (−5%) +−5% server_config -server_config, Apple clang 21, -O0 (debug), 3.13.0: 1,496 ms against 1,113 ms with 3.12.0 (+34%) -+34% -server_config, Apple clang 21, -O0 (debug), 3.13.0, precompiled header: 863 ms against 1,113 ms with 3.12.0 (−23%) -−23% -server_config, Apple clang 21, -O0 (debug), 3.13.0, module: 1,136 ms against 1,113 ms with 3.12.0 (+2%) -+2% +server_config, Apple clang 21, -O0 (debug), 3.13.0: 1,312 ms against 963 ms with 3.12.0 (+36%) ++36% +server_config, Apple clang 21, -O0 (debug), 3.13.0, precompiled header: 774 ms against 963 ms with 3.12.0 (−20%) +−20% +server_config, Apple clang 21, -O0 (debug), 3.13.0, module: 1,036 ms against 963 ms with 3.12.0 (+8%) ++8% Apple clang 21, -O2 @@ -35,19 +35,19 @@ count_numbers -count_numbers, Apple clang 21, -O2, 3.13.0: 2,081 ms against 1,393 ms with 3.12.0 (+49%) -+49% -count_numbers, Apple clang 21, -O2, 3.13.0, precompiled header: 1,458 ms against 1,393 ms with 3.12.0 (+5%) -+5% -count_numbers, Apple clang 21, -O2, 3.13.0, module: 1,685 ms against 1,393 ms with 3.12.0 (+21%) -+21% +count_numbers, Apple clang 21, -O2, 3.13.0: 1,898 ms against 1,328 ms with 3.12.0 (+43%) ++43% +count_numbers, Apple clang 21, -O2, 3.13.0, precompiled header: 1,312 ms against 1,328 ms with 3.12.0 (−1%) +−1% +count_numbers, Apple clang 21, -O2, 3.13.0, module: 1,491 ms against 1,328 ms with 3.12.0 (+12%) ++12% server_config -server_config, Apple clang 21, -O2, 3.13.0: 2,546 ms against 1,754 ms with 3.12.0 (+45%) -+45% -server_config, Apple clang 21, -O2, 3.13.0, precompiled header: 1,925 ms against 1,754 ms with 3.12.0 (+10%) -+10% -server_config, Apple clang 21, -O2, 3.13.0, module: 2,169 ms against 1,754 ms with 3.12.0 (+24%) -+24% +server_config, Apple clang 21, -O2, 3.13.0: 2,251 ms against 1,584 ms with 3.12.0 (+42%) ++42% +server_config, Apple clang 21, -O2, 3.13.0, precompiled header: 1,779 ms against 1,584 ms with 3.12.0 (+12%) ++12% +server_config, Apple clang 21, -O2, 3.13.0, module: 1,926 ms against 1,584 ms with 3.12.0 (+22%) ++22% G​CC 16, -O0 (debug) @@ -55,19 +55,19 @@ count_numbers -count_numbers, G​CC 16, -O0 (debug), 3.13.0: 2,548 ms against 1,569 ms with 3.12.0 (+62%) -+62% -count_numbers, G​CC 16, -O0 (debug), 3.13.0, precompiled header: 1,725 ms against 1,569 ms with 3.12.0 (+10%) -+10% -count_numbers, G​CC 16, -O0 (debug), 3.13.0, module: 1,700 ms against 1,569 ms with 3.12.0 (+8%) -+8% +count_numbers, G​CC 16, -O0 (debug), 3.13.0: 2,385 ms against 1,416 ms with 3.12.0 (+68%) ++68% +count_numbers, G​CC 16, -O0 (debug), 3.13.0, precompiled header: 1,593 ms against 1,416 ms with 3.12.0 (+12%) ++12% +count_numbers, G​CC 16, -O0 (debug), 3.13.0, module: 1,604 ms against 1,416 ms with 3.12.0 (+13%) ++13% server_config -server_config, G​CC 16, -O0 (debug), 3.13.0: 2,985 ms against 2,025 ms with 3.12.0 (+47%) -+47% -server_config, G​CC 16, -O0 (debug), 3.13.0, precompiled header: 2,302 ms against 2,025 ms with 3.12.0 (+14%) -+14% -server_config, G​CC 16, -O0 (debug), 3.13.0, module: 2,326 ms against 2,025 ms with 3.12.0 (+15%) -+15% +server_config, G​CC 16, -O0 (debug), 3.13.0: 2,820 ms against 1,878 ms with 3.12.0 (+50%) ++50% +server_config, G​CC 16, -O0 (debug), 3.13.0, precompiled header: 2,152 ms against 1,878 ms with 3.12.0 (+15%) ++15% +server_config, G​CC 16, -O0 (debug), 3.13.0, module: 2,180 ms against 1,878 ms with 3.12.0 (+16%) ++16% G​CC 16, -O2 @@ -75,19 +75,19 @@ count_numbers -count_numbers, G​CC 16, -O2, 3.13.0: 3,702 ms against 2,336 ms with 3.12.0 (+58%) -+58% -count_numbers, G​CC 16, -O2, 3.13.0, precompiled header: 2,987 ms against 2,336 ms with 3.12.0 (+28%) +count_numbers, G​CC 16, -O2, 3.13.0: 3,464 ms against 2,159 ms with 3.12.0 (+60%) ++60% +count_numbers, G​CC 16, -O2, 3.13.0, precompiled header: 2,765 ms against 2,159 ms with 3.12.0 (+28%) +28% -count_numbers, G​CC 16, -O2, 3.13.0, module: 2,913 ms against 2,336 ms with 3.12.0 (+25%) -+25% +count_numbers, G​CC 16, -O2, 3.13.0, module: 2,740 ms against 2,159 ms with 3.12.0 (+27%) ++27% server_config -server_config, G​CC 16, -O2, 3.13.0: 4,714 ms against 3,122 ms with 3.12.0 (+51%) -+51% -server_config, G​CC 16, -O2, 3.13.0, precompiled header: 4,006 ms against 3,122 ms with 3.12.0 (+28%) -+28% -server_config, G​CC 16, -O2, 3.13.0, module: 4,055 ms against 3,122 ms with 3.12.0 (+30%) -+30% +server_config, G​CC 16, -O2, 3.13.0: 4,388 ms against 2,878 ms with 3.12.0 (+52%) ++52% +server_config, G​CC 16, -O2, 3.13.0, precompiled header: 3,722 ms against 2,878 ms with 3.12.0 (+29%) ++29% +server_config, G​CC 16, -O2, 3.13.0, module: 3,774 ms against 2,878 ms with 3.12.0 (+31%) ++31% −40% −20% diff --git a/docs/mkdocs/docs/images/perf_blog_timeline_accept_twitter.svg b/docs/mkdocs/docs/images/perf_blog_timeline_accept_twitter.svg index 49c77004d..5cb981ad9 100644 --- a/docs/mkdocs/docs/images/perf_blog_timeline_accept_twitter.svg +++ b/docs/mkdocs/docs/images/perf_blog_timeline_accept_twitter.svg @@ -1,45 +1,53 @@ accept() twitter.json: speedup over 3.12.0 by commit -accept() twitter.json: speedup over 3.12.0 at each of 353 commits, ending at 5.1x. Labeled steps, by theme: 4, 1, 4, 4, 2, 2. +accept() twitter.json: speedup over 3.12.0 at each of 360 commits, ending at 10x. Labeled steps, by theme: 4, 1, 4, 4, 2, 2, 1. accept() twitter.json 1× - -2× - -4× + +2× + +4× + +8× -8× +16× 3.12.0 - -Sep 2026 - -Oct - -#5234: 1.22× - - -4 -#5283: 2.6× - - -1 -#5592: 2.9× - - -4 -#5809: 3.7× -#5810: 4.0× - - -4 - -2 -#5853: 4.9× - - -2 + +Sep 2026 + +Oct + +Nov + +#5234: 1.22× + + +4 +#5283: 2.6× + + +1 +#5592: 2.9× + + +4 +#5809: 3.7× +#5810: 4.0× + + +4 + +2 +#5853: 4.9× + + +2 +#6031: 10× + + +1 speedup over 3.12.0 (log scale), more is better diff --git a/docs/mkdocs/docs/images/perf_blog_timeline_dump_canada.svg b/docs/mkdocs/docs/images/perf_blog_timeline_dump_canada.svg index 91fc0e9b0..6b25402ef 100644 --- a/docs/mkdocs/docs/images/perf_blog_timeline_dump_canada.svg +++ b/docs/mkdocs/docs/images/perf_blog_timeline_dump_canada.svg @@ -1,6 +1,6 @@ dump() canada.json: speedup over 3.12.0 by commit -dump() canada.json: speedup over 3.12.0 at each of 353 commits, ending at 3.3x. Labeled steps, by theme: 6, 3. +dump() canada.json: speedup over 3.12.0 at each of 360 commits, ending at 3.2x. Labeled steps, by theme: 6, 3. dump() canada.json 1× @@ -12,19 +12,21 @@ 8× 3.12.0 - -Sep 2026 - -Oct - -#5285: 1.09× - - -6 -#5634: 3.1× - - -3 + +Sep 2026 + +Oct + +Nov + +#5285: 1.09× + + +6 +#5634: 3.1× + + +3 speedup over 3.12.0 (log scale), more is better diff --git a/docs/mkdocs/docs/images/perf_blog_timeline_dump_twitter.svg b/docs/mkdocs/docs/images/perf_blog_timeline_dump_twitter.svg index 81ad49dae..3c9fc4e12 100644 --- a/docs/mkdocs/docs/images/perf_blog_timeline_dump_twitter.svg +++ b/docs/mkdocs/docs/images/perf_blog_timeline_dump_twitter.svg @@ -1,6 +1,6 @@ dump() twitter.json: speedup over 3.12.0 by commit -dump() twitter.json: speedup over 3.12.0 at each of 353 commits, ending at 6.8x. Labeled steps, by theme: 6, 2, 2, 2. +dump() twitter.json: speedup over 3.12.0 at each of 360 commits, ending at 6.8x. Labeled steps, by theme: 6, 2, 2, 2. dump() twitter.json 1× @@ -14,24 +14,26 @@ 16× 3.12.0 - -Sep 2026 - -Oct - -#5285: 3.3× - - -6 -#5738: 3.8× - - -2 -#5878: 4.5× -#5883: 6.8× - - -2 + +Sep 2026 + +Oct + +Nov + +#5285: 3.3× + + +6 +#5738: 3.8× + + +2 +#5878: 4.5× +#5883: 6.8× + + +2 speedup over 3.12.0 (log scale), more is better diff --git a/docs/mkdocs/docs/images/perf_blog_timeline_from_cbor_twitter.svg b/docs/mkdocs/docs/images/perf_blog_timeline_from_cbor_twitter.svg index 278255d93..df50215a3 100644 --- a/docs/mkdocs/docs/images/perf_blog_timeline_from_cbor_twitter.svg +++ b/docs/mkdocs/docs/images/perf_blog_timeline_from_cbor_twitter.svg @@ -1,6 +1,6 @@ from_cbor() twitter: speedup over 3.12.0 by commit -from_cbor() twitter: speedup over 3.12.0 at each of 353 commits, ending at 2.6x. Labeled steps, by theme: 1, 4, U, U. +from_cbor() twitter: speedup over 3.12.0 at each of 360 commits, ending at 2.8x. Labeled steps, by theme: 1, 4, U, U, 4. from_cbor() twitter 1× @@ -10,27 +10,33 @@ 4× 3.12.0 - -Sep 2026 - -Oct - -#5233: 1.47× - - -1 -#5501: 2.2× - - -4 -#5185: 1.76× - - -U -#5746: 2.3× - - -U + +Sep 2026 + +Oct + +Nov + +#5233: 1.47× + + +1 +#5501: 2.2× + + +4 +#5185: 1.76× + + +U +#5746: 2.3× + + +U +#6028: 2.8× + + +4 speedup over 3.12.0 (log scale), more is better diff --git a/docs/mkdocs/docs/images/perf_blog_timeline_parse_canada.svg b/docs/mkdocs/docs/images/perf_blog_timeline_parse_canada.svg index b325a346d..2c38213c8 100644 --- a/docs/mkdocs/docs/images/perf_blog_timeline_parse_canada.svg +++ b/docs/mkdocs/docs/images/perf_blog_timeline_parse_canada.svg @@ -1,44 +1,52 @@ parse() canada.json: speedup over 3.12.0 by commit -parse() canada.json: speedup over 3.12.0 at each of 353 commits, ending at 2.8x. Labeled steps, by theme: 4, 1, 3, 3, 3, 4. +parse() canada.json: speedup over 3.12.0 at each of 360 commits, ending at 3.3x. Labeled steps, by theme: 4, 1, 3, 3, 3, 4, 1. parse() canada.json 1× - -2× + +2× + +4× -4× +8× 3.12.0 - -Sep 2026 - -Oct - -#5234: 1.11× - - -4 -#5283: 1.47× - - -1 -#5617: 1.48× - - -3 -#5738: 1.95× - - -3 -#5851: 2.2× - - -3 -#5882: 2.8× - - -4 + +Sep 2026 + +Oct + +Nov + +#5234: 1.11× + + +4 +#5283: 1.47× + + +1 +#5617: 1.48× + + +3 +#5738: 1.95× + + +3 +#5851: 2.2× + + +3 +#5882: 2.8× + + +4 +#6031: 3.3× + + +1 speedup over 3.12.0 (log scale), more is better diff --git a/docs/mkdocs/docs/images/perf_blog_timeline_parse_citm.svg b/docs/mkdocs/docs/images/perf_blog_timeline_parse_citm.svg index d4eec81df..455215fef 100644 --- a/docs/mkdocs/docs/images/perf_blog_timeline_parse_citm.svg +++ b/docs/mkdocs/docs/images/perf_blog_timeline_parse_citm.svg @@ -1,6 +1,6 @@ parse() citm_catalog.json: speedup over 3.12.0 by commit -parse() citm_catalog.json: speedup over 3.12.0 at each of 353 commits, ending at 3.3x. Labeled steps, by theme: 4, 1, 4, 4, 2, 4. +parse() citm_catalog.json: speedup over 3.12.0 at each of 360 commits, ending at 3.8x. Labeled steps, by theme: 4, 1, 4, 4, 2, 4, 1. parse() citm_catalog.json 1× @@ -12,34 +12,40 @@ 8× 3.12.0 - -Sep 2026 - -Oct - -#5234: 1.55× - - -4 -#5283: 1.95× - - -1 -#5592: 2.2× - - -4 -#5809: 2.4× -#5810: 2.8× - - -4 - -2 -#5882: 3.3× - - -4 + +Sep 2026 + +Oct + +Nov + +#5234: 1.55× + + +4 +#5283: 1.95× + + +1 +#5592: 2.2× + + +4 +#5809: 2.4× +#5810: 2.8× + + +4 + +2 +#5882: 3.3× + + +4 +#6031: 3.8× + + +1 speedup over 3.12.0 (log scale), more is better diff --git a/docs/mkdocs/docs/images/perf_blog_timeline_parse_twitter_ifstream.svg b/docs/mkdocs/docs/images/perf_blog_timeline_parse_twitter_ifstream.svg index 4abcdc305..af85037ea 100644 --- a/docs/mkdocs/docs/images/perf_blog_timeline_parse_twitter_ifstream.svg +++ b/docs/mkdocs/docs/images/perf_blog_timeline_parse_twitter_ifstream.svg @@ -1,6 +1,6 @@ parse() twitter.json, std::ifstream: speedup over 3.12.0 by commit -parse() twitter.json, std::ifstream: speedup over 3.12.0 at each of 353 commits, ending at 2.2x. Labeled steps, by theme: 1, 1. +parse() twitter.json, std::ifstream: speedup over 3.12.0 at each of 360 commits, ending at 2.2x. Labeled steps, by theme: 1, 1. parse() twitter.json, std::ifstream 1× @@ -10,19 +10,21 @@ 4× 3.12.0 - -Sep 2026 - -Oct - -#5828: 1.97× - - -1 -#5884: 2.2× - - -1 + +Sep 2026 + +Oct + +Nov + +#5828: 1.97× + + +1 +#5884: 2.2× + + +1 speedup over 3.12.0 (log scale), more is better diff --git a/docs/mkdocs/docs/images/perf_blog_timeline_to_cbor_twitter.svg b/docs/mkdocs/docs/images/perf_blog_timeline_to_cbor_twitter.svg index ce9e9a202..49e4e9884 100644 --- a/docs/mkdocs/docs/images/perf_blog_timeline_to_cbor_twitter.svg +++ b/docs/mkdocs/docs/images/perf_blog_timeline_to_cbor_twitter.svg @@ -1,6 +1,6 @@ to_cbor() twitter: speedup over 3.12.0 by commit -to_cbor() twitter: speedup over 3.12.0 at each of 353 commits, ending at 5.0x. Labeled steps, by theme: 4, 6, 6. +to_cbor() twitter: speedup over 3.12.0 at each of 360 commits, ending at 5.1x. Labeled steps, by theme: 4, 6, 6. to_cbor() twitter 1× @@ -12,23 +12,25 @@ 8× 3.12.0 - -Sep 2026 - -Oct - -#5328: 2.2× - - -4 -#5824: 3.5× - - -6 -#5885: 5.1× - - -6 + +Sep 2026 + +Oct + +Nov + +#5328: 2.2× + + +4 +#5824: 3.5× + + +6 +#5885: 5.1× + + +6 speedup over 3.12.0 (log scale), more is better diff --git a/docs/mkdocs/docs/images/perf_blog_usecases_mac.svg b/docs/mkdocs/docs/images/perf_blog_usecases_mac.svg index ed3f9bcae..85c7d008d 100644 --- a/docs/mkdocs/docs/images/perf_blog_usecases_mac.svg +++ b/docs/mkdocs/docs/images/perf_blog_usecases_mac.svg @@ -1,6 +1,6 @@ Use cases: time of each library relative to the fastest, Apple M1 Max -Table of relative times, libraries by use case. nlohmann/json json_document validate: 1.00; nlohmann/json json_document sum: 1.00; nlohmann/json json_document select: 1.00; nlohmann/json json_document edit: 1.00 (0.85 doing less, N); nlohmann/json json_document minify: 1.00 (0.85 doing less, N); nlohmann/json json_document write: 1.00 (0.71 doing less, N); yyjson validate: 1.37; yyjson sum: 1.11; yyjson select: 1.25; yyjson edit: 1.45; yyjson minify: 1.23 (1.16 doing less, N); yyjson write: 1.26; simdjson validate: 1.52; simdjson sum: 1.20; simdjson select: 1.33 (0.75 doing less, P); simdjson edit: n/a; simdjson minify: 1.73 (0.18 doing less, P); simdjson write: 2.41; sonic-rs (Rust) validate: 1.93; sonic-rs (Rust) sum: 1.53; sonic-rs (Rust) select: 1.83; sonic-rs (Rust) edit: 2.08; sonic-rs (Rust) minify: 1.93; sonic-rs (Rust) write: 2.38; sonic-cpp validate: no fully validating way (2.53 doing less, U); sonic-cpp sum: no fully validating way (1.86 doing less, U); sonic-cpp select: no fully validating way (2.31 doing less, U); sonic-cpp edit: no fully validating way (1.68 doing less, U); sonic-cpp minify: no fully validating way (2.03 doing less, U); sonic-cpp write: 1.59; simd-json (Rust) validate: 2.07; simd-json (Rust) sum: 1.62; simd-json (Rust) select: 2.38; simd-json (Rust) edit: 2.84; simd-json (Rust) minify: 3.40; simd-json (Rust) write: 3.10; Glaze validate: 2.04; Glaze sum: 3.85; Glaze select: 1.79 (0.82 doing less, P); Glaze edit: 4.41; Glaze minify: 5.19 (1.03 doing less, P); Glaze write: 2.23; Boost.J​SON validate: 2.56; Boost.J​SON sum: 1.99; Boost.J​SON select: 3.27; Boost.J​SON edit: 3.21; Boost.J​SON minify: 3.87; Boost.J​SON write: 3.75; serde_json (Rust) validate: 2.46 (2.23 doing less, U); serde_json (Rust) sum: 2.59; serde_json (Rust) select: 2.39 (2.24 doing less, U); serde_json (Rust) edit: 4.99; serde_json (Rust) minify: 5.85; serde_json (Rust) write: 2.95; nlohmann/json json validate: 2.71; nlohmann/json json sum: 1.96; nlohmann/json json select: 6.87; nlohmann/json json edit: 3.73; nlohmann/json json minify: 4.89; nlohmann/json json write: 2.10; RapidJSON validate: 4.72 (3.09 doing less, U); RapidJSON sum: 4.15 (2.85 doing less, U); RapidJSON select: 5.91 (3.82 doing less, U); RapidJSON edit: 4.82 (3.77 doing less, U); RapidJSON minify: 4.86 (3.60 doing less, U N); RapidJSON write: 5.88. +Table of relative times, libraries by use case. nlohmann/json json_document validate: 1.00; nlohmann/json json_document sum: 1.00; nlohmann/json json_document select: 1.00; nlohmann/json json_document edit: 1.00 (0.85 doing less, N); nlohmann/json json_document minify: 1.00 (0.84 doing less, N); nlohmann/json json_document write: 1.00 (0.69 doing less, N); yyjson validate: 1.41; yyjson sum: 1.14; yyjson select: 1.30; yyjson edit: 1.48; yyjson minify: 1.26 (1.18 doing less, N); yyjson write: 1.23; simdjson validate: 1.52; simdjson sum: 1.21; simdjson select: 1.34 (0.76 doing less, P); simdjson edit: n/a; simdjson minify: 1.73 (0.18 doing less, P); simdjson write: 2.41; sonic-rs (Rust) validate: 1.91; sonic-rs (Rust) sum: 1.54; sonic-rs (Rust) select: 1.85; sonic-rs (Rust) edit: 2.10; sonic-rs (Rust) minify: 1.93; sonic-rs (Rust) write: 2.34; sonic-cpp validate: no fully validating way (2.50 doing less, U); sonic-cpp sum: no fully validating way (1.86 doing less, U); sonic-cpp select: no fully validating way (2.34 doing less, U); sonic-cpp edit: no fully validating way (1.70 doing less, U); sonic-cpp minify: no fully validating way (2.03 doing less, U); sonic-cpp write: 1.61; simd-json (Rust) validate: 2.05; simd-json (Rust) sum: 1.63; simd-json (Rust) select: 2.39; simd-json (Rust) edit: 2.85; simd-json (Rust) minify: 3.40; simd-json (Rust) write: 3.05; nlohmann/json json validate: 1.38; nlohmann/json json sum: 1.34; nlohmann/json json select: 6.09; nlohmann/json json edit: 3.22; nlohmann/json json minify: 4.39; nlohmann/json json write: 2.03; Glaze validate: 2.03; Glaze sum: 3.88; Glaze select: 1.81 (0.81 doing less, P); Glaze edit: 4.44; Glaze minify: 5.23 (1.05 doing less, P); Glaze write: 2.19; Boost.J​SON validate: 2.54; Boost.J​SON sum: 2.02; Boost.J​SON select: 3.31; Boost.J​SON edit: 3.23; Boost.J​SON minify: 3.89; Boost.J​SON write: 3.67; serde_json (Rust) validate: 2.44 (2.21 doing less, U); serde_json (Rust) sum: 2.60; serde_json (Rust) select: 2.41 (2.26 doing less, U); serde_json (Rust) edit: 5.02; serde_json (Rust) minify: 5.85; serde_json (Rust) write: 2.90; RapidJSON validate: 4.67 (3.09 doing less, U); RapidJSON sum: 4.18 (2.89 doing less, U); RapidJSON select: 6.02 (3.93 doing less, U); RapidJSON edit: 4.85 (3.83 doing less, U); RapidJSON minify: 4.85 (3.66 doing less, U N); RapidJSON write: 5.74. validate sum select @@ -8,359 +8,359 @@ minify write nlohmann/json json_document - + 1.00 - + 1.00 - + 1.00 - + 1.00 - + 0.85 N - + 1.00 - + -0.85 +0.84 N - + 1.00 - + -0.71 +0.69 N yyjson - + -1.37 +1.41 - + -1.11 +1.14 - + -1.25 +1.30 - + -1.45 +1.48 - + -1.23 +1.26 - + -1.16 +1.18 N - + -1.26 +1.23 simdjson - + 1.52 - + -1.20 +1.21 - + -1.33 +1.34 - + -0.75 +0.76 P n/a - + 1.73 - + 0.18 P - + 2.41 sonic-rs (Rust) - + -1.93 +1.91 - + -1.53 +1.54 - + -1.83 +1.85 - + -2.08 +2.10 1.93 - + -2.38 +2.34 sonic-cpp - - -2.53 + + +2.50 U - + 1.86 U - + -2.31 +2.34 U - + -1.68 +1.70 U - + 2.03 U - + -1.59 +1.61 simd-json (Rust) - + -2.07 +2.05 - + -1.62 +1.63 - + -2.38 +2.39 - + -2.84 +2.85 3.40 - + -3.10 +3.05 -Glaze - - -2.04 +nlohmann/json json + + +1.38 - - -3.85 + + +1.34 - - -1.79 + + +6.09 - - -0.82 -P - - + -4.41 +3.22 - - -5.19 + + +4.39 - - -1.03 -P - - + -2.23 +2.03 -Boost.J​SON - - -2.56 +Glaze + + +2.03 - - -1.99 + + +3.88 - - -3.27 + + +1.81 - + + +0.81 +P + + -3.21 +4.44 - - -3.87 + + +5.23 - - -3.75 + + +1.05 +P -serde_json (Rust) - - -2.46 + + +2.19 - - -2.23 -U +Boost.J​SON + + +2.54 - - -2.59 + + +2.02 - - -2.39 + + +3.31 - - -2.24 -U - - + -4.99 +3.23 + + + +3.89 + + + +3.67 + +serde_json (Rust) + + +2.44 + + + +2.21 +U + + + +2.60 + + + +2.41 + + + +2.26 +U + + + +5.02 - -5.85 + +5.85 - - -2.95 - -nlohmann/json json - - -2.71 - - - -1.96 - - - -6.87 - - - -3.73 - - - -4.89 - - - -2.10 + + +2.90 RapidJSON - + -4.72 +4.67 - + 3.09 U - + -4.15 +4.18 - + -2.85 +2.89 U - + -5.91 +6.02 - + -3.82 +3.93 U - + -4.82 +4.85 - + -3.77 +3.83 U - + -4.86 +4.85 - + -3.60 +3.66 U N - + -5.88 +5.74 time relative to the fastest fully validating library, less is better diff --git a/docs/mkdocs/docs/images/perf_blog_usecases_x86-clang.svg b/docs/mkdocs/docs/images/perf_blog_usecases_x86-clang.svg index 8bcd534b3..5617643c1 100644 --- a/docs/mkdocs/docs/images/perf_blog_usecases_x86-clang.svg +++ b/docs/mkdocs/docs/images/perf_blog_usecases_x86-clang.svg @@ -1,6 +1,6 @@ Use cases: time of each library relative to the fastest, x86-64 with Clang 23 -Table of relative times, libraries by use case. nlohmann/json json_document validate: 1.00; nlohmann/json json_document sum: 1.00; nlohmann/json json_document select: 1.00; nlohmann/json json_document edit: 1.00 (0.81 doing less, N); nlohmann/json json_document minify: 1.00 (0.83 doing less, N); nlohmann/json json_document write: 1.00 (0.69 doing less, N); yyjson validate: 1.87; yyjson sum: 1.00; yyjson select: 1.23; yyjson edit: 1.43; yyjson minify: 1.16 (1.00 doing less, N); yyjson write: 1.14; sonic-cpp validate: no fully validating way (2.32 doing less, U); sonic-cpp sum: no fully validating way (1.20 doing less, U); sonic-cpp select: no fully validating way (1.53 doing less, U); sonic-cpp edit: no fully validating way (1.24 doing less, U); sonic-cpp minify: no fully validating way (1.38 doing less, U); sonic-cpp write: 1.28; simdjson validate: 2.03; simdjson sum: 1.13; simdjson select: 1.32 (0.57 doing less, P); simdjson edit: n/a; simdjson minify: 1.58 (0.18 doing less, P); simdjson write: 2.00; sonic-rs (Rust) validate: 1.88; sonic-rs (Rust) sum: 1.07; sonic-rs (Rust) select: 1.39; sonic-rs (Rust) edit: 1.90; sonic-rs (Rust) minify: 1.73; sonic-rs (Rust) write: 1.94; Boost.J​SON validate: 1.79; Boost.J​SON sum: 1.12; Boost.J​SON select: 2.24; Boost.J​SON edit: 2.39; Boost.J​SON minify: 2.68; Boost.J​SON write: 2.31; simd-json (Rust) validate: 3.52; simd-json (Rust) sum: 1.80; simd-json (Rust) select: 2.64; simd-json (Rust) edit: 2.88; simd-json (Rust) minify: 3.38; simd-json (Rust) write: 2.21; serde_json (Rust) validate: 2.33 (2.08 doing less, U); serde_json (Rust) sum: 2.22; serde_json (Rust) select: 1.77; serde_json (Rust) edit: 4.54; serde_json (Rust) minify: 4.92; serde_json (Rust) write: 2.15; Glaze validate: 2.23; Glaze sum: 4.03 (3.78 doing less, P); Glaze select: 1.43 (0.62 doing less, P); Glaze edit: 5.53; Glaze minify: 5.77 (0.70 doing less, P); Glaze write: 1.90; nlohmann/json json validate: 2.77; nlohmann/json json sum: 1.44; nlohmann/json json select: 7.56; nlohmann/json json edit: 3.99; nlohmann/json json minify: 4.91; nlohmann/json json write: 1.86; RapidJSON validate: 4.94 (3.76 doing less, U); RapidJSON sum: 2.98 (2.28 doing less, U); RapidJSON select: 4.20 (3.27 doing less, U); RapidJSON edit: 3.06 (2.60 doing less, U); RapidJSON minify: 3.61 (2.65 doing less, U N); RapidJSON write: 2.79. +Table of relative times, libraries by use case. nlohmann/json json_document validate: 1.00; nlohmann/json json_document sum: 1.05; nlohmann/json json_document select: 1.00; nlohmann/json json_document edit: 1.00 (0.81 doing less, N); nlohmann/json json_document minify: 1.00 (0.83 doing less, N); nlohmann/json json_document write: 1.00 (0.71 doing less, N); yyjson validate: 2.21; yyjson sum: 1.23; yyjson select: 1.40; yyjson edit: 1.48; yyjson minify: 1.27 (1.09 doing less, N); yyjson write: 1.16; sonic-cpp validate: no fully validating way (2.32 doing less, U); sonic-cpp sum: no fully validating way (1.26 doing less, U); sonic-cpp select: no fully validating way (1.50 doing less, U); sonic-cpp edit: no fully validating way (1.21 doing less, U); sonic-cpp minify: no fully validating way (1.36 doing less, U); sonic-cpp write: 1.33; simdjson validate: 2.06; simdjson sum: 1.19; simdjson select: 1.33 (0.56 doing less, P); simdjson edit: n/a; simdjson minify: 1.55 (0.18 doing less, P); simdjson write: 2.07; sonic-rs (Rust) validate: 1.90; sonic-rs (Rust) sum: 1.13; sonic-rs (Rust) select: 1.37; sonic-rs (Rust) edit: 1.90; sonic-rs (Rust) minify: 1.75; sonic-rs (Rust) write: 2.01; Boost.J​SON validate: 1.80; Boost.J​SON sum: 1.17; Boost.J​SON select: 2.19; Boost.J​SON edit: 2.37; Boost.J​SON minify: 2.65; Boost.J​SON write: 2.38; nlohmann/json json validate: 1.43; nlohmann/json json sum: 1.00; nlohmann/json json select: 6.54; nlohmann/json json edit: 3.53; nlohmann/json json minify: 4.31; nlohmann/json json write: 1.88; simd-json (Rust) validate: 3.57; simd-json (Rust) sum: 1.91; simd-json (Rust) select: 2.61; simd-json (Rust) edit: 2.88; simd-json (Rust) minify: 3.43; simd-json (Rust) write: 2.28; serde_json (Rust) validate: 2.36 (2.11 doing less, U); serde_json (Rust) sum: 2.35; serde_json (Rust) select: 1.75; serde_json (Rust) edit: 4.53; serde_json (Rust) minify: 4.99; serde_json (Rust) write: 2.22; Glaze validate: 2.24; Glaze sum: 4.24 (3.96 doing less, P); Glaze select: 1.39 (0.61 doing less, P); Glaze edit: 5.50; Glaze minify: 5.78 (0.69 doing less, P); Glaze write: 1.95; RapidJSON validate: 5.18 (3.77 doing less, U); RapidJSON sum: 3.25 (2.40 doing less, U); RapidJSON select: 4.45 (3.45 doing less, U); RapidJSON edit: 3.16 (2.68 doing less, U); RapidJSON minify: 3.43 (2.57 doing less, U N); RapidJSON write: 2.86. validate sum select @@ -8,359 +8,359 @@ minify write nlohmann/json json_document - + 1.00 - + -1.00 +1.05 - + 1.00 - + 1.00 - + 0.81 N - + 1.00 - + 0.83 N - + 1.00 - + -0.69 +0.71 N yyjson - + -1.87 +2.21 - - -1.00 + + +1.23 - + -1.23 +1.40 - + -1.43 +1.48 - + -1.16 +1.27 - + -1.00 +1.09 N - - -1.14 + + +1.16 sonic-cpp - + 2.32 U - + -1.20 +1.26 U - - -1.53 + + +1.50 U - + -1.24 +1.21 U - + -1.38 +1.36 U - + -1.28 +1.33 simdjson - + -2.03 +2.06 - - -1.13 + + +1.19 - + -1.32 +1.33 - + -0.57 +0.56 P n/a - + -1.58 +1.55 - + 0.18 P - + -2.00 +2.07 sonic-rs (Rust) - + -1.88 +1.90 - + -1.07 +1.13 - + -1.39 +1.37 1.90 - + -1.73 +1.75 - + -1.94 +2.01 Boost.J​SON - + -1.79 +1.80 - - -1.12 + + +1.17 - + -2.24 +2.19 - + -2.39 +2.37 - + -2.68 +2.65 - + -2.31 +2.38 -simd-json (Rust) - - -3.52 +nlohmann/json json + + +1.43 - - -1.80 + + +1.00 - - -2.64 + + +6.54 + + + +3.53 + + + +4.31 + + + +1.88 + +simd-json (Rust) + + +3.57 + + + +1.91 + + + +2.61 - -2.88 - - - -3.38 - - - -2.21 - -serde_json (Rust) - - -2.33 - - - -2.08 -U - - - -2.22 - - - -1.77 - - -4.54 +2.88 - + -4.92 +3.43 - + -2.15 +2.28 -Glaze - - -2.23 +serde_json (Rust) + + +2.36 - - -4.03 + + +2.11 +U - - -3.78 -P + + +2.35 - - -1.43 + + +1.75 - - -0.62 -P + + +4.53 - - -5.53 + + +4.99 - - -5.77 - - - -0.70 -P - - + -1.90 +2.22 -nlohmann/json json - - -2.77 +Glaze + + +2.24 - - -1.44 + + +4.24 - - -7.56 + + +3.96 +P - - -3.99 + + +1.39 - - -4.91 + + +0.61 +P - + + +5.50 + + + +5.78 + + + +0.69 +P + + -1.86 +1.95 RapidJSON - - -4.94 + + +5.18 - + -3.76 +3.77 U - + -2.98 +3.25 - + -2.28 +2.40 U - + -4.20 +4.45 - + -3.27 +3.45 U - + -3.06 +3.16 - + -2.60 +2.68 U - + -3.61 +3.43 - + -2.65 +2.57 U N - + -2.79 +2.86 time relative to the fastest fully validating library, less is better diff --git a/docs/mkdocs/docs/images/perf_blog_usecases_x86-gcc.svg b/docs/mkdocs/docs/images/perf_blog_usecases_x86-gcc.svg index c95d72a12..40c9cb59d 100644 --- a/docs/mkdocs/docs/images/perf_blog_usecases_x86-gcc.svg +++ b/docs/mkdocs/docs/images/perf_blog_usecases_x86-gcc.svg @@ -1,6 +1,6 @@ Use cases: time of each library relative to the fastest, x86-64 with G​CC 16.2 -Table of relative times, libraries by use case. nlohmann/json json_document validate: 1.00; nlohmann/json json_document sum: 1.08; nlohmann/json json_document select: 1.00; nlohmann/json json_document edit: 1.00 (0.79 doing less, N); nlohmann/json json_document minify: 1.00 (0.80 doing less, N); nlohmann/json json_document write: 1.00 (0.64 doing less, N); yyjson validate: 1.94; yyjson sum: 1.14; yyjson select: 1.18; yyjson edit: 1.37; yyjson minify: 1.17 (0.95 doing less, N); yyjson write: 1.11; sonic-cpp validate: no fully validating way (2.32 doing less, U); sonic-cpp sum: no fully validating way (1.24 doing less, U); sonic-cpp select: no fully validating way (1.45 doing less, U); sonic-cpp edit: no fully validating way (1.21 doing less, U); sonic-cpp minify: no fully validating way (1.36 doing less, U); sonic-cpp write: 1.45; simdjson validate: 2.11; simdjson sum: 1.00; simdjson select: 1.27 (0.54 doing less, P); simdjson edit: n/a; simdjson minify: 1.54 (0.17 doing less, P); simdjson write: 2.10; sonic-rs (Rust) validate: 1.93; sonic-rs (Rust) sum: 1.13; sonic-rs (Rust) select: 1.34; sonic-rs (Rust) edit: 1.90; sonic-rs (Rust) minify: 1.71; sonic-rs (Rust) write: 2.04; Boost.J​SON validate: 1.99; Boost.J​SON sum: 1.27; Boost.J​SON select: 2.20; Boost.J​SON edit: 2.30; Boost.J​SON minify: 2.65; Boost.J​SON write: 2.36; simd-json (Rust) validate: 3.62; simd-json (Rust) sum: 1.91; simd-json (Rust) select: 2.56; simd-json (Rust) edit: 2.87; simd-json (Rust) minify: 3.35; simd-json (Rust) write: 2.32; RapidJSON validate: 3.71 (3.41 doing less, U); RapidJSON sum: 2.23 (2.09 doing less, U); RapidJSON select: 2.91 (2.73 doing less, U); RapidJSON edit: 2.41 (2.34 doing less, U); RapidJSON minify: 2.68 (2.42 doing less, U N); RapidJSON write: 2.97; serde_json (Rust) validate: 2.39 (2.14 doing less, U); serde_json (Rust) sum: 2.36; serde_json (Rust) select: 1.71; serde_json (Rust) edit: 4.53; serde_json (Rust) minify: 4.89; serde_json (Rust) write: 2.25; Glaze validate: 2.86; Glaze sum: 4.16; Glaze select: 1.79 (0.58 doing less, P); Glaze edit: 4.47; Glaze minify: 4.81 (0.78 doing less, P); Glaze write: 1.96; nlohmann/json json validate: 2.96; nlohmann/json json sum: 1.70; nlohmann/json json select: 7.12; nlohmann/json json edit: 3.83; nlohmann/json json minify: 4.79; nlohmann/json json write: 1.91. +Table of relative times, libraries by use case. nlohmann/json json_document validate: 1.00; nlohmann/json json_document sum: 1.10; nlohmann/json json_document select: 1.00; nlohmann/json json_document edit: 1.00 (0.78 doing less, N); nlohmann/json json_document minify: 1.00 (0.78 doing less, N); nlohmann/json json_document write: 1.00 (0.64 doing less, N); yyjson validate: 2.23; yyjson sum: 1.31; yyjson select: 1.37; yyjson edit: 1.43; yyjson minify: 1.24 (0.99 doing less, N); yyjson write: 1.08; sonic-cpp validate: no fully validating way (2.32 doing less, U); sonic-cpp sum: no fully validating way (1.26 doing less, U); sonic-cpp select: no fully validating way (1.43 doing less, U); sonic-cpp edit: no fully validating way (1.18 doing less, U); sonic-cpp minify: no fully validating way (1.33 doing less, U); sonic-cpp write: 1.49; simdjson validate: 2.08; simdjson sum: 1.00; simdjson select: 1.29 (0.55 doing less, P); simdjson edit: n/a; simdjson minify: 1.49 (0.17 doing less, P); simdjson write: 2.09; sonic-rs (Rust) validate: 1.98; sonic-rs (Rust) sum: 1.14; sonic-rs (Rust) select: 1.36; sonic-rs (Rust) edit: 1.87; sonic-rs (Rust) minify: 1.68; sonic-rs (Rust) write: 2.05; Boost.J​SON validate: 1.98; Boost.J​SON sum: 1.29; Boost.J​SON select: 2.21; Boost.J​SON edit: 2.33; Boost.J​SON minify: 2.54; Boost.J​SON write: 2.33; nlohmann/json json validate: 1.69; nlohmann/json json sum: 1.17; nlohmann/json json select: 6.20; nlohmann/json json edit: 3.42; nlohmann/json json minify: 4.07; nlohmann/json json write: 1.84; simd-json (Rust) validate: 3.71; simd-json (Rust) sum: 1.93; simd-json (Rust) select: 2.59; simd-json (Rust) edit: 2.83; simd-json (Rust) minify: 3.30; simd-json (Rust) write: 2.34; serde_json (Rust) validate: 2.46 (2.19 doing less, U); serde_json (Rust) sum: 2.38; serde_json (Rust) select: 1.74; serde_json (Rust) edit: 4.45; serde_json (Rust) minify: 4.80; serde_json (Rust) write: 2.27; RapidJSON validate: 3.86 (3.48 doing less, U); RapidJSON sum: 2.35 (2.15 doing less, U); RapidJSON select: 3.17 (3.02 doing less, U); RapidJSON edit: 2.49 (2.40 doing less, U); RapidJSON minify: 2.58 (2.36 doing less, U N); RapidJSON write: 2.94; Glaze validate: 2.87; Glaze sum: 4.05; Glaze select: 1.71 (0.59 doing less, P); Glaze edit: 4.48; Glaze minify: 4.56 (0.75 doing less, P); Glaze write: 1.96. validate sum select @@ -8,354 +8,354 @@ minify write nlohmann/json json_document - + 1.00 - + -1.08 +1.10 - + 1.00 - + 1.00 - + -0.79 +0.78 N - + 1.00 - + -0.80 +0.78 N - + 1.00 - + 0.64 N yyjson - + -1.94 +2.23 - - -1.14 + + +1.31 - + -1.18 +1.37 - + -1.37 +1.43 - + -1.17 +1.24 - + -0.95 +0.99 N - + -1.11 +1.08 sonic-cpp - + 2.32 U - + -1.24 +1.26 U - + -1.45 +1.43 U - + -1.21 +1.18 U - + -1.36 +1.33 U - + -1.45 +1.49 simdjson - + -2.11 +2.08 - + 1.00 - + -1.27 +1.29 - + -0.54 +0.55 P n/a - - -1.54 + + +1.49 - + 0.17 P - + -2.10 +2.09 sonic-rs (Rust) - + -1.93 +1.98 - + -1.13 +1.14 - + -1.34 +1.36 - + -1.90 +1.87 - + -1.71 +1.68 - + -2.04 +2.05 Boost.J​SON - + -1.99 +1.98 - + -1.27 +1.29 - + -2.20 +2.21 - + -2.30 +2.33 - + -2.65 +2.54 - + -2.36 +2.33 -simd-json (Rust) - - -3.62 +nlohmann/json json + + +1.69 - - -1.91 + + +1.17 - - -2.56 + + +6.20 - + -2.87 +3.42 - + -3.35 +4.07 - + -2.32 +1.84 -RapidJSON - - -3.71 +simd-json (Rust) + + +3.71 - - -3.41 -U + + +1.93 - - -2.23 + + +2.59 - - -2.09 -U + + +2.83 - - -2.91 + + +3.30 - - -2.73 -U - - - -2.41 - - - -2.34 -U - - - -2.68 - - - -2.42 -U N - - - -2.97 + + +2.34 serde_json (Rust) - + -2.39 +2.46 - + -2.14 +2.19 U - + -2.36 +2.38 - + -1.71 +1.74 - + -4.53 +4.45 - + -4.89 +4.80 - + -2.25 +2.27 -Glaze - - -2.86 +RapidJSON + + +3.86 - - -4.16 + + +3.48 +U - - -1.79 + + +2.35 - - -0.58 -P + + +2.15 +U - - -4.47 + + +3.17 - + + +3.02 +U + + + +2.49 + + + +2.40 +U + + -4.81 +2.58 - - -0.78 -P + + +2.36 +U N - - -1.96 + + +2.94 -nlohmann/json json - +Glaze + -2.96 +2.87 - - -1.70 + + +4.05 - - -7.12 + + +1.71 - + + +0.59 +P + + -3.83 +4.48 - - -4.79 + + +4.56 - + + +0.75 +P + + -1.91 +1.96 time relative to the fastest fully validating library, less is better diff --git a/docs/mkdocs/docs/images/perf_blog_usecases_x86-gcc13.svg b/docs/mkdocs/docs/images/perf_blog_usecases_x86-gcc13.svg index ebb039306..7dbf7e6a2 100644 --- a/docs/mkdocs/docs/images/perf_blog_usecases_x86-gcc13.svg +++ b/docs/mkdocs/docs/images/perf_blog_usecases_x86-gcc13.svg @@ -1,6 +1,6 @@ Use cases: time of each library relative to the fastest, x86-64 with G​CC 13 -Table of relative times, libraries by use case. nlohmann/json json_document validate: 1.00; nlohmann/json json_document sum: 1.08; nlohmann/json json_document select: 1.00; nlohmann/json json_document edit: 1.00 (0.83 doing less, N); nlohmann/json json_document minify: 1.00 (0.83 doing less, N); nlohmann/json json_document write: 1.00 (0.71 doing less, N); yyjson validate: 1.81; yyjson sum: 1.28; yyjson select: 1.22; yyjson edit: 1.49; yyjson minify: 1.27 (0.97 doing less, N); yyjson write: 1.14; sonic-cpp validate: no fully validating way (2.24 doing less, U); sonic-cpp sum: no fully validating way (1.28 doing less, U); sonic-cpp select: no fully validating way (1.53 doing less, U); sonic-cpp edit: no fully validating way (1.26 doing less, U); sonic-cpp minify: no fully validating way (1.42 doing less, U); sonic-cpp write: 1.50; simdjson validate: 2.01; simdjson sum: 1.00; simdjson select: 1.35 (0.57 doing less, P); simdjson edit: n/a; simdjson minify: 1.58 (0.22 doing less, P); simdjson write: 2.07; sonic-rs (Rust) validate: 1.79; sonic-rs (Rust) sum: 1.11; sonic-rs (Rust) select: 1.37; sonic-rs (Rust) edit: 1.91; sonic-rs (Rust) minify: 1.73; sonic-rs (Rust) write: 2.07; Boost.J​SON validate: 1.88; Boost.J​SON sum: 1.33; Boost.J​SON select: 2.30; Boost.J​SON edit: 2.55; Boost.J​SON minify: 2.92; Boost.J​SON write: 2.56; simd-json (Rust) validate: 3.35; simd-json (Rust) sum: 1.88; simd-json (Rust) select: 2.61; simd-json (Rust) edit: 2.89; simd-json (Rust) minify: 3.39; simd-json (Rust) write: 2.35; serde_json (Rust) validate: 2.22 (1.98 doing less, U); serde_json (Rust) sum: 2.32; serde_json (Rust) select: 1.75; serde_json (Rust) edit: 4.55; serde_json (Rust) minify: 4.94; serde_json (Rust) write: 2.28; Glaze validate: 2.21; Glaze sum: 4.04; Glaze select: 1.44 (0.60 doing less, P); Glaze edit: 4.85; Glaze minify: 5.10 (0.73 doing less, P); Glaze write: 1.84; nlohmann/json json validate: 2.74; nlohmann/json json sum: 1.67; nlohmann/json json select: 7.24; nlohmann/json json edit: 3.81; nlohmann/json json minify: 4.79; nlohmann/json json write: 1.99; RapidJSON validate: 4.50 (3.40 doing less, U); RapidJSON sum: 2.98 (2.29 doing less, U); RapidJSON select: 3.84 (3.06 doing less, U); RapidJSON edit: 2.92 (2.58 doing less, U); RapidJSON minify: 3.64 (2.64 doing less, U N); RapidJSON write: 3.11. +Table of relative times, libraries by use case. nlohmann/json json_document validate: 1.00; nlohmann/json json_document sum: 1.10; nlohmann/json json_document select: 1.00; nlohmann/json json_document edit: 1.00 (0.82 doing less, N); nlohmann/json json_document minify: 1.00 (0.81 doing less, N); nlohmann/json json_document write: 1.00 (0.71 doing less, N); yyjson validate: 2.06; yyjson sum: 1.44; yyjson select: 1.37; yyjson edit: 1.57; yyjson minify: 1.37 (1.03 doing less, N); yyjson write: 1.08; sonic-cpp validate: no fully validating way (2.21 doing less, U); sonic-cpp sum: no fully validating way (1.28 doing less, U); sonic-cpp select: no fully validating way (1.48 doing less, U); sonic-cpp edit: no fully validating way (1.22 doing less, U); sonic-cpp minify: no fully validating way (1.40 doing less, U); sonic-cpp write: 1.50; simdjson validate: 1.93; simdjson sum: 1.00; simdjson select: 1.29 (0.56 doing less, P); simdjson edit: n/a; simdjson minify: 1.55 (0.21 doing less, P); simdjson write: 2.09; sonic-rs (Rust) validate: 1.77; sonic-rs (Rust) sum: 1.13; sonic-rs (Rust) select: 1.33; sonic-rs (Rust) edit: 1.86; sonic-rs (Rust) minify: 1.71; sonic-rs (Rust) write: 2.00; Boost.J​SON validate: 1.83; Boost.J​SON sum: 1.30; Boost.J​SON select: 2.23; Boost.J​SON edit: 2.45; Boost.J​SON minify: 2.83; Boost.J​SON write: 2.50; nlohmann/json json validate: 1.34; nlohmann/json json sum: 1.04; nlohmann/json json select: 6.05; nlohmann/json json edit: 3.37; nlohmann/json json minify: 4.13; nlohmann/json json write: 1.85; simd-json (Rust) validate: 3.31; simd-json (Rust) sum: 1.91; simd-json (Rust) select: 2.54; simd-json (Rust) edit: 2.82; simd-json (Rust) minify: 3.35; simd-json (Rust) write: 2.28; serde_json (Rust) validate: 2.19 (1.96 doing less, U); serde_json (Rust) sum: 2.35; serde_json (Rust) select: 1.70; serde_json (Rust) edit: 4.44; serde_json (Rust) minify: 4.88; serde_json (Rust) write: 2.21; Glaze validate: 2.05; Glaze sum: 4.06 (3.93 doing less, P); Glaze select: 1.39 (0.58 doing less, P); Glaze edit: 4.71; Glaze minify: 4.96 (0.70 doing less, P); Glaze write: 1.80; RapidJSON validate: 3.88 (3.36 doing less, U); RapidJSON sum: 2.67 (2.34 doing less, U); RapidJSON select: 3.39 (3.12 doing less, U); RapidJSON edit: 2.65 (2.52 doing less, U); RapidJSON minify: 3.64 (2.61 doing less, U N); RapidJSON write: 2.95. validate sum select @@ -8,354 +8,359 @@ minify write nlohmann/json json_document - + 1.00 - + -1.08 +1.10 - + 1.00 - + 1.00 - + -0.83 +0.82 N - + 1.00 - + -0.83 +0.81 N - + 1.00 - + 0.71 N yyjson - + -1.81 +2.06 - + -1.28 +1.44 - + -1.22 +1.37 - - -1.49 + + +1.57 - + -1.27 +1.37 - + -0.97 +1.03 N - + -1.14 +1.08 sonic-cpp - + -2.24 +2.21 U - + 1.28 U - - -1.53 + + +1.48 U - + -1.26 +1.22 U - + -1.42 +1.40 U - + 1.50 simdjson - + -2.01 +1.93 - + 1.00 - + -1.35 +1.29 - + -0.57 +0.56 P n/a - + -1.58 +1.55 - + -0.22 +0.21 P - + -2.07 +2.09 sonic-rs (Rust) - + -1.79 +1.77 - + -1.11 +1.13 - + -1.37 +1.33 - + -1.91 +1.86 - + -1.73 +1.71 - + -2.07 +2.00 Boost.J​SON - + -1.88 +1.83 - + -1.33 +1.30 - + -2.30 +2.23 - - -2.55 + + +2.45 - + -2.92 +2.83 - - -2.56 + + +2.50 -simd-json (Rust) - - -3.35 +nlohmann/json json + + +1.34 - - -1.88 + + +1.04 - - -2.61 + + +6.05 - + -2.89 +3.37 - + -3.39 +4.13 - + -2.35 +1.85 -serde_json (Rust) - - -2.22 +simd-json (Rust) + + +3.31 - - -1.98 -U - - + -2.32 +1.91 - - -1.75 + + +2.54 - + -4.55 +2.82 - + -4.94 +3.35 - + 2.28 -Glaze - - -2.21 +serde_json (Rust) + + +2.19 - - -4.04 + + +1.96 +U - - -1.44 + + +2.35 - - -0.60 -P + + +1.70 - + -4.85 +4.44 - - -5.10 + + +4.88 - - -0.73 -P - - + -1.84 +2.21 -nlohmann/json json - - -2.74 +Glaze + + +2.05 - - -1.67 + + +4.06 - - -7.24 + + +3.93 +P - + + +1.39 + + + +0.58 +P + + -3.81 +4.71 - - -4.79 + + +4.96 - + + +0.70 +P + + -1.99 +1.80 RapidJSON - + -4.50 +3.88 - + -3.40 +3.36 U - + -2.98 +2.67 - + -2.29 +2.34 U - + -3.84 +3.39 - + -3.06 +3.12 U - + -2.92 +2.65 - + -2.58 +2.52 U - + 3.64 - + -2.64 +2.61 U N - + -3.11 +2.95 time relative to the fastest fully validating library, less is better diff --git a/docs/mkdocs/scripts/figures/data/perf_heldout_validate.json b/docs/mkdocs/scripts/figures/data/perf_heldout_validate.json index ef9e601ca..19da50a13 100644 --- a/docs/mkdocs/scripts/figures/data/perf_heldout_validate.json +++ b/docs/mkdocs/scripts/figures/data/perf_heldout_validate.json @@ -1,25 +1,33 @@ { "mac": { "apache_builds": { - "Boost.JSON": { - "us": 110.1, - "variant": "SAX" - }, - "Glaze": { - "us": 85.4, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 261.9, - "variant": "SAX (string stream)" + "nlohmann json_document": { + "us": 39.0, + "variant": "accept" }, "nlohmann json": { - "us": 108.5, + "us": 60.5, "variant": "accept" }, - "nlohmann json_document": { - "us": 38.7, - "variant": "accept" + "yyjson": { + "us": 54.3, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 36.1, + "variant": "DOM" + }, + "Glaze": { + "us": 86.7, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 109.7, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 265.9, + "variant": "SAX (string stream)" }, "serde_json": { "us": 87.5, @@ -29,40 +37,40 @@ "us": 55.8, "variant": "tape (copy)" }, - "simdjson": { - "us": 36.0, - "variant": "DOM" - }, "sonic-rs": { "us": 63.2, "variant": "Value" - }, - "yyjson": { - "us": 54.5, - "variant": "read" } }, "github_events": { - "Boost.JSON": { - "us": 57.3, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 35.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 141.8, - "variant": "SAX (string stream, default precision)" - }, - "nlohmann json": { - "us": 41.7, - "variant": "accept" - }, "nlohmann json_document": { "us": 14.2, "variant": "accept" }, + "nlohmann json": { + "us": 22.8, + "variant": "accept" + }, + "yyjson": { + "us": 18.9, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 18.2, + "variant": "DOM" + }, + "Glaze": { + "us": 34.7, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 57.9, + "variant": "SAX" + }, + "RapidJSON": { + "us": 142.4, + "variant": "SAX (string stream)" + }, "serde_json": { "us": 35.8, "variant": "from_utf8 + IgnoredAny" @@ -71,40 +79,40 @@ "us": 27.9, "variant": "tape (copy)" }, - "simdjson": { - "us": 17.9, - "variant": "DOM" - }, "sonic-rs": { "us": 24.5, "variant": "Value" - }, - "yyjson": { - "us": 19.0, - "variant": "read" } }, "google_maps_api_compact_response": { - "Boost.JSON": { - "us": 11.8, - "variant": "SAX" + "nlohmann json_document": { + "us": 5.5, + "variant": "accept" + }, + "nlohmann json": { + "us": 8.4, + "variant": "accept" + }, + "yyjson": { + "us": 6.3, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 7.7, + "variant": "DOM" }, "Glaze": { "us": 12.8, "variant": "validate_json" }, + "Boost.JSON": { + "us": 11.6, + "variant": "SAX (numbers: none)" + }, "RapidJSON": { - "us": 26.5, + "us": 27.0, "variant": "SAX (default precision)" }, - "nlohmann json": { - "us": 18.1, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 5.5, - "variant": "accept" - }, "serde_json": { "us": 14.5, "variant": "from_utf8 + IgnoredAny" @@ -113,40 +121,40 @@ "us": 10.5, "variant": "tape (copy)" }, - "simdjson": { - "us": 7.6, - "variant": "DOM" - }, "sonic-rs": { "us": 8.7, "variant": "Value" - }, - "yyjson": { - "us": 6.4, - "variant": "read" } }, "google_maps_api_response": { - "Boost.JSON": { - "us": 19.3, - "variant": "SAX (numbers: none)" + "nlohmann json_document": { + "us": 8.6, + "variant": "accept" + }, + "nlohmann json": { + "us": 14.6, + "variant": "accept" + }, + "yyjson": { + "us": 9.4, + "variant": "read" + }, + "simdjson": { + "us": 9.5, + "variant": "DOM" }, "Glaze": { "us": 17.7, "variant": "validate_json" }, + "Boost.JSON": { + "us": 19.1, + "variant": "SAX (numbers: none)" + }, "RapidJSON": { - "us": 36.6, + "us": 36.9, "variant": "SAX (string stream, default precision)" }, - "nlohmann json": { - "us": 24.5, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 8.7, - "variant": "accept" - }, "serde_json": { "us": 20.7, "variant": "from_utf8 + IgnoredAny" @@ -155,39 +163,39 @@ "us": 13.4, "variant": "tape (copy)" }, - "simdjson": { - "us": 9.4, - "variant": "DOM" - }, "sonic-rs": { "us": 14.7, "variant": "Value" - }, - "yyjson": { - "us": 9.5, - "variant": "read" } }, "gsoc-2018": { - "Boost.JSON": { - "us": 2792.0, - "variant": "SAX" - }, - "Glaze": { - "us": 1027.4, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 7114.9, - "variant": "SAX (string stream)" + "nlohmann json_document": { + "us": 446.6, + "variant": "accept" }, "nlohmann json": { - "us": 940.9, + "us": 604.3, "variant": "accept" }, - "nlohmann json_document": { - "us": 457.7, - "variant": "accept" + "yyjson": { + "us": 935.9, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 850.6, + "variant": "DOM" + }, + "Glaze": { + "us": 1048.6, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 2796.8, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 7071.0, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 1034.0, @@ -197,39 +205,39 @@ "us": 1246.0, "variant": "tape (copy)" }, - "simdjson": { - "us": 842.1, - "variant": "DOM" - }, "sonic-rs": { "us": 758.0, "variant": "Value" - }, - "yyjson": { - "us": 940.0, - "variant": "insitu (copy)" } }, "instruments": { - "Boost.JSON": { - "us": 155.8, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 136.8, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 366.2, - "variant": "SAX (string stream)" + "nlohmann json_document": { + "us": 71.9, + "variant": "accept" }, "nlohmann json": { - "us": 206.4, + "us": 120.5, "variant": "accept" }, - "nlohmann json_document": { - "us": 71.5, - "variant": "accept" + "yyjson": { + "us": 78.2, + "variant": "read" + }, + "simdjson": { + "us": 83.4, + "variant": "DOM" + }, + "Glaze": { + "us": 136.0, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 157.1, + "variant": "SAX" + }, + "RapidJSON": { + "us": 365.0, + "variant": "SAX (string stream)" }, "serde_json": { "us": 160.0, @@ -239,39 +247,39 @@ "us": 110.0, "variant": "tape (copy)" }, - "simdjson": { - "us": 83.1, - "variant": "DOM" - }, "sonic-rs": { "us": 125.2, "variant": "Value" - }, - "yyjson": { - "us": 79.1, - "variant": "insitu (copy)" } }, "marine_ik": { - "Boost.JSON": { - "us": 2530.0, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 2292.5, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 3625.6, - "variant": "SAX (default precision)" + "nlohmann json_document": { + "us": 1413.6, + "variant": "accept" }, "nlohmann json": { - "us": 4140.6, + "us": 2149.4, "variant": "accept" }, - "nlohmann json_document": { - "us": 1358.3, - "variant": "accept" + "yyjson": { + "us": 2366.2, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 2429.9, + "variant": "DOM" + }, + "Glaze": { + "us": 2298.1, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 2482.7, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 3595.6, + "variant": "SAX (default precision)" }, "serde_json": { "us": 2841.0, @@ -281,39 +289,39 @@ "us": 3150.2, "variant": "tape (copy)" }, - "simdjson": { - "us": 2428.0, - "variant": "DOM" - }, "sonic-rs": { "us": 2910.2, "variant": "Value" - }, - "yyjson": { - "us": 2402.7, - "variant": "insitu (copy)" } }, "mesh": { - "Boost.JSON": { - "us": 591.5, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 510.4, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 775.0, - "variant": "SAX (string stream, default precision)" + "nlohmann json_document": { + "us": 366.8, + "variant": "accept" }, "nlohmann json": { - "us": 1038.1, + "us": 640.9, "variant": "accept" }, - "nlohmann json_document": { - "us": 345.7, - "variant": "accept" + "yyjson": { + "us": 557.6, + "variant": "read" + }, + "simdjson": { + "us": 625.0, + "variant": "DOM" + }, + "Glaze": { + "us": 510.9, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 576.9, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 773.8, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 607.3, @@ -323,39 +331,39 @@ "us": 729.2, "variant": "tape (copy)" }, - "simdjson": { - "us": 621.1, - "variant": "DOM" - }, "sonic-rs": { "us": 768.4, "variant": "Value" - }, - "yyjson": { - "us": 557.3, - "variant": "read" } }, "mesh.pretty": { - "Boost.JSON": { - "us": 947.1, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 823.9, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1387.1, - "variant": "SAX (string stream, default precision)" + "nlohmann json_document": { + "us": 722.6, + "variant": "accept" }, "nlohmann json": { - "us": 1337.5, + "us": 838.1, "variant": "accept" }, - "nlohmann json_document": { - "us": 707.2, - "variant": "accept" + "yyjson": { + "us": 940.4, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 848.4, + "variant": "DOM" + }, + "Glaze": { + "us": 820.8, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 935.0, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1390.1, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 1129.2, @@ -365,40 +373,40 @@ "us": 1083.0, "variant": "tape (copy)" }, - "simdjson": { - "us": 848.6, - "variant": "DOM" - }, "sonic-rs": { "us": 1160.6, "variant": "Value" - }, - "yyjson": { - "us": 952.0, - "variant": "read" } }, "numbers": { + "nlohmann json_document": { + "us": 63.4, + "variant": "accept" + }, + "nlohmann json": { + "us": 76.1, + "variant": "accept" + }, + "yyjson": { + "us": 103.1, + "variant": "read" + }, + "simdjson": { + "us": 116.7, + "variant": "DOM" + }, + "Glaze": { + "us": 87.9, + "variant": "validate_json" + }, "Boost.JSON": { "us": 88.2, "variant": "SAX (numbers: none)" }, - "Glaze": { - "us": 88.9, - "variant": "validate_json" - }, "RapidJSON": { - "us": 132.6, + "us": 132.3, "variant": "SAX (string stream, default precision)" }, - "nlohmann json": { - "us": 148.6, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 59.3, - "variant": "accept" - }, "serde_json": { "us": 101.5, "variant": "from_utf8 + IgnoredAny" @@ -407,39 +415,39 @@ "us": 129.2, "variant": "tape (copy)" }, - "simdjson": { - "us": 116.3, - "variant": "DOM" - }, "sonic-rs": { "us": 135.6, "variant": "IgnoredAny" - }, - "yyjson": { - "us": 103.1, - "variant": "read" } }, "random": { - "Boost.JSON": { - "us": 591.4, - "variant": "SAX" - }, - "Glaze": { - "us": 439.8, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1199.8, - "variant": "SAX (string stream)" + "nlohmann json_document": { + "us": 207.2, + "variant": "accept" }, "nlohmann json": { - "us": 703.4, + "us": 388.8, "variant": "accept" }, - "nlohmann json_document": { - "us": 206.9, - "variant": "accept" + "yyjson": { + "us": 310.5, + "variant": "read" + }, + "simdjson": { + "us": 251.9, + "variant": "DOM" + }, + "Glaze": { + "us": 438.7, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 594.5, + "variant": "SAX" + }, + "RapidJSON": { + "us": 1204.8, + "variant": "SAX (string stream)" }, "serde_json": { "us": 619.9, @@ -449,40 +457,40 @@ "us": 335.4, "variant": "tape (copy)" }, - "simdjson": { - "us": 256.2, - "variant": "DOM" - }, "sonic-rs": { "us": 265.5, "variant": "Value" - }, - "yyjson": { - "us": 316.3, - "variant": "read" } }, "repeat": { - "Boost.JSON": { - "us": 10.5, - "variant": "SAX" + "nlohmann json_document": { + "us": 2.6, + "variant": "accept" + }, + "nlohmann json": { + "us": 5.3, + "variant": "accept" + }, + "yyjson": { + "us": 4.3, + "variant": "read" + }, + "simdjson": { + "us": 4.0, + "variant": "DOM" }, "Glaze": { "us": 6.9, "variant": "validate_json" }, + "Boost.JSON": { + "us": 10.5, + "variant": "SAX (numbers: none)" + }, "RapidJSON": { "us": 14.3, "variant": "SAX (string stream)" }, - "nlohmann json": { - "us": 8.8, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 2.6, - "variant": "accept" - }, "serde_json": { "us": 9.6, "variant": "from_utf8 + IgnoredAny" @@ -491,39 +499,39 @@ "us": 5.7, "variant": "tape (copy)" }, - "simdjson": { - "us": 4.0, - "variant": "DOM" - }, "sonic-rs": { "us": 5.6, "variant": "Value" - }, - "yyjson": { - "us": 4.3, - "variant": "read" } }, "semanticscholar-corpus": { - "Boost.JSON": { - "us": 8111.6, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 4538.8, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 20587.5, - "variant": "SAX" + "nlohmann json_document": { + "us": 2162.7, + "variant": "accept" }, "nlohmann json": { - "us": 5144.6, + "us": 2709.7, "variant": "accept" }, - "nlohmann json_document": { - "us": 2180.8, - "variant": "accept" + "yyjson": { + "us": 3549.5, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 3412.0, + "variant": "DOM" + }, + "Glaze": { + "us": 4564.4, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 8174.0, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 20621.4, + "variant": "SAX (default precision)" }, "serde_json": { "us": 4768.2, @@ -533,39 +541,39 @@ "us": 4728.2, "variant": "tape (copy)" }, - "simdjson": { - "us": 3356.2, - "variant": "DOM" - }, "sonic-rs": { "us": 2766.9, "variant": "Value" - }, - "yyjson": { - "us": 3572.0, - "variant": "insitu (copy)" } }, "tree-pretty": { - "Boost.JSON": { - "us": 24.1, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 22.0, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 54.0, - "variant": "SAX (string stream, default precision)" + "nlohmann json_document": { + "us": 10.7, + "variant": "accept" }, "nlohmann json": { - "us": 31.7, + "us": 17.4, "variant": "accept" }, - "nlohmann json_document": { - "us": 10.5, - "variant": "accept" + "yyjson": { + "us": 11.2, + "variant": "read" + }, + "simdjson": { + "us": 11.4, + "variant": "DOM" + }, + "Glaze": { + "us": 22.2, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 24.5, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 53.3, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 26.3, @@ -575,40 +583,40 @@ "us": 17.9, "variant": "tape (copy)" }, - "simdjson": { - "us": 11.3, - "variant": "DOM" - }, "sonic-rs": { "us": 17.1, "variant": "Value" - }, - "yyjson": { - "us": 11.3, - "variant": "read" } }, "twitter_api_compact_response": { - "Boost.JSON": { - "us": 9.0, - "variant": "SAX" - }, - "Glaze": { - "us": 5.5, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 24.3, - "variant": "SAX (string stream, default precision)" - }, - "nlohmann json": { - "us": 8.5, - "variant": "accept" - }, "nlohmann json_document": { "us": 3.0, "variant": "accept" }, + "nlohmann json": { + "us": 3.7, + "variant": "accept" + }, + "yyjson": { + "us": 3.3, + "variant": "read" + }, + "simdjson": { + "us": 3.6, + "variant": "DOM" + }, + "Glaze": { + "us": 5.6, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 9.0, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 24.4, + "variant": "SAX (default precision)" + }, "serde_json": { "us": 6.7, "variant": "from_utf8 + IgnoredAny" @@ -617,39 +625,39 @@ "us": 5.3, "variant": "tape (copy)" }, - "simdjson": { - "us": 3.5, - "variant": "DOM" - }, "sonic-rs": { "us": 4.7, "variant": "Value" - }, - "yyjson": { - "us": 3.3, - "variant": "read" } }, "twitter_api_response": { - "Boost.JSON": { - "us": 11.7, - "variant": "SAX" - }, - "Glaze": { - "us": 7.7, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 29.7, - "variant": "SAX (string stream, default precision)" + "nlohmann json_document": { + "us": 4.1, + "variant": "accept" }, "nlohmann json": { - "us": 11.3, + "us": 5.5, "variant": "accept" }, - "nlohmann json_document": { - "us": 4.0, - "variant": "accept" + "yyjson": { + "us": 4.3, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 4.5, + "variant": "DOM" + }, + "Glaze": { + "us": 7.9, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 11.8, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 30.4, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 9.2, @@ -659,39 +667,39 @@ "us": 6.7, "variant": "tape (copy)" }, - "simdjson": { - "us": 4.3, - "variant": "DOM" - }, "sonic-rs": { "us": 7.7, "variant": "Value" - }, - "yyjson": { - "us": 4.3, - "variant": "read" } }, "twitter_timeline": { - "Boost.JSON": { - "us": 39.6, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 29.4, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 100.1, - "variant": "SAX (default precision)" + "nlohmann json_document": { + "us": 15.1, + "variant": "accept" }, "nlohmann json": { - "us": 44.0, + "us": 20.2, "variant": "accept" }, - "nlohmann json_document": { - "us": 15.0, - "variant": "accept" + "yyjson": { + "us": 15.3, + "variant": "read" + }, + "simdjson": { + "us": 18.2, + "variant": "DOM" + }, + "Glaze": { + "us": 29.2, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 39.8, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 100.6, + "variant": "SAX (default precision)" }, "serde_json": { "us": 33.5, @@ -701,39 +709,39 @@ "us": 29.0, "variant": "tape (copy)" }, - "simdjson": { - "us": 17.6, - "variant": "DOM" - }, "sonic-rs": { "us": 26.4, "variant": "Value" - }, - "yyjson": { - "us": 15.5, - "variant": "insitu (copy)" } }, "twitterescaped": { - "Boost.JSON": { - "us": 552.2, - "variant": "SAX" - }, - "Glaze": { - "us": 469.8, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1182.0, - "variant": "SAX (default precision)" + "nlohmann json_document": { + "us": 203.2, + "variant": "accept" }, "nlohmann json": { - "us": 679.7, + "us": 361.6, "variant": "accept" }, - "nlohmann json_document": { - "us": 201.8, - "variant": "accept" + "yyjson": { + "us": 216.4, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 263.3, + "variant": "DOM" + }, + "Glaze": { + "us": 476.2, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 554.3, + "variant": "SAX" + }, + "RapidJSON": { + "us": 1195.8, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 397.9, @@ -743,39 +751,39 @@ "us": 537.4, "variant": "tape (copy)" }, - "simdjson": { - "us": 265.6, - "variant": "DOM" - }, "sonic-rs": { "us": 313.3, "variant": "Value" - }, - "yyjson": { - "us": 217.6, - "variant": "read" } }, "update-center": { - "Boost.JSON": { - "us": 539.8, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 414.1, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1321.5, - "variant": "SAX" + "nlohmann json_document": { + "us": 193.9, + "variant": "accept" }, "nlohmann json": { - "us": 441.2, + "us": 228.6, "variant": "accept" }, - "nlohmann json_document": { - "us": 194.5, - "variant": "accept" + "yyjson": { + "us": 243.3, + "variant": "read" + }, + "simdjson": { + "us": 240.8, + "variant": "DOM" + }, + "Glaze": { + "us": 422.5, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 542.6, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1322.4, + "variant": "SAX (raw numbers)" }, "serde_json": { "us": 406.5, @@ -785,2418 +793,2410 @@ "us": 313.2, "variant": "tape (copy)" }, - "simdjson": { - "us": 239.9, - "variant": "DOM" - }, "sonic-rs": { "us": 221.2, "variant": "Value" - }, - "yyjson": { - "us": 239.7, - "variant": "read (raw numbers)" } } }, "x86-clang": { "apache_builds": { - "Boost.JSON": { - "us": 103.5, - "variant": "SAX" - }, - "Glaze": { - "us": 133.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 350.5, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 54.0, + "variant": "accept" }, "nlohmann json": { - "us": 120.8, + "us": 77.5, "variant": "accept" }, - "nlohmann json_document": { - "us": 54.6, - "variant": "accept" + "yyjson": { + "us": 86.2, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 63.2, + "variant": "DOM" + }, + "Glaze": { + "us": 136.5, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 103.4, + "variant": "SAX" + }, + "RapidJSON": { + "us": 351.1, + "variant": "insitu (copy)" }, "serde_json": { "us": 105.1, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 135.6, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 62.8, - "variant": "DOM" - }, "sonic-rs": { "us": 88.3, "variant": "Value" }, - "yyjson": { - "us": 85.4, - "variant": "read" + "simd-json": { + "us": 135.6, + "variant": "tape (copy)" } }, "github_events": { - "Boost.JSON": { - "us": 39.2, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 59.8, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 182.1, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 22.0, + "variant": "accept" }, "nlohmann json": { - "us": 56.9, + "us": 29.4, "variant": "accept" }, - "nlohmann json_document": { - "us": 22.6, - "variant": "accept" + "yyjson": { + "us": 35.4, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 28.5, + "variant": "DOM" + }, + "Glaze": { + "us": 62.3, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 39.6, + "variant": "SAX" + }, + "RapidJSON": { + "us": 183.7, + "variant": "insitu (copy)" }, "serde_json": { "us": 49.2, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 55.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 28.3, - "variant": "DOM" - }, "sonic-rs": { "us": 40.9, "variant": "Value" }, - "yyjson": { - "us": 33.5, - "variant": "read" + "simd-json": { + "us": 55.1, + "variant": "tape (copy)" } }, "google_maps_api_compact_response": { - "Boost.JSON": { - "us": 14.7, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 19.6, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 43.1, - "variant": "SAX (default precision)" - }, - "nlohmann json": { - "us": 25.5, - "variant": "accept" - }, "nlohmann json_document": { "us": 9.7, "variant": "accept" }, + "nlohmann json": { + "us": 12.6, + "variant": "accept" + }, + "yyjson": { + "us": 11.4, + "variant": "read" + }, + "simdjson": { + "us": 13.3, + "variant": "DOM" + }, + "Glaze": { + "us": 20.0, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 15.3, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 46.2, + "variant": "SAX (default precision)" + }, "serde_json": { "us": 16.8, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 23.9, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 12.9, - "variant": "DOM" - }, "sonic-rs": { "us": 13.8, "variant": "IgnoredAny" }, - "yyjson": { - "us": 10.7, - "variant": "read" + "simd-json": { + "us": 23.9, + "variant": "tape (copy)" } }, "google_maps_api_response": { - "Boost.JSON": { - "us": 26.4, - "variant": "SAX" - }, - "Glaze": { - "us": 27.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 53.9, - "variant": "SAX (default precision)" + "nlohmann json_document": { + "us": 14.8, + "variant": "accept" }, "nlohmann json": { - "us": 33.5, + "us": 20.6, "variant": "accept" }, - "nlohmann json_document": { - "us": 14.1, - "variant": "accept" + "yyjson": { + "us": 17.9, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 15.5, + "variant": "DOM" + }, + "Glaze": { + "us": 28.2, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 28.5, + "variant": "SAX" + }, + "RapidJSON": { + "us": 57.5, + "variant": "SAX (default precision)" }, "serde_json": { "us": 27.6, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 30.6, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 14.5, - "variant": "DOM" - }, "sonic-rs": { "us": 23.2, "variant": "Value" }, - "yyjson": { - "us": 17.1, - "variant": "insitu (copy)" + "simd-json": { + "us": 30.6, + "variant": "tape (copy)" } }, "gsoc-2018": { - "Boost.JSON": { - "us": 1007.5, - "variant": "SAX" - }, - "Glaze": { - "us": 1854.7, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 8248.5, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 677.4, + "variant": "accept" }, "nlohmann json": { - "us": 1280.8, + "us": 808.5, "variant": "accept" }, - "nlohmann json_document": { - "us": 703.5, - "variant": "accept" + "yyjson": { + "us": 1835.9, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 1201.1, + "variant": "DOM" + }, + "Glaze": { + "us": 1982.0, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 1009.6, + "variant": "SAX" + }, + "RapidJSON": { + "us": 8414.0, + "variant": "insitu (copy)" }, "serde_json": { "us": 1498.2, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 2236.9, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 1186.2, - "variant": "DOM" - }, "sonic-rs": { "us": 1134.0, "variant": "IgnoredAny" }, - "yyjson": { - "us": 1837.1, - "variant": "read" + "simd-json": { + "us": 2236.9, + "variant": "tape (copy)" } }, "instruments": { - "Boost.JSON": { - "us": 218.8, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 204.7, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 531.6, - "variant": "SAX (default precision)" + "nlohmann json_document": { + "us": 113.7, + "variant": "accept" }, "nlohmann json": { - "us": 277.8, + "us": 160.7, "variant": "accept" }, - "nlohmann json_document": { - "us": 116.3, - "variant": "accept" + "yyjson": { + "us": 154.8, + "variant": "read" + }, + "simdjson": { + "us": 125.9, + "variant": "DOM" + }, + "Glaze": { + "us": 220.2, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 222.0, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 565.9, + "variant": "insitu (copy)" }, "serde_json": { "us": 212.4, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 290.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 126.8, - "variant": "DOM" - }, "sonic-rs": { "us": 229.3, "variant": "IgnoredAny" }, - "yyjson": { - "us": 152.2, - "variant": "read" + "simd-json": { + "us": 290.1, + "variant": "tape (copy)" } }, "marine_ik": { - "Boost.JSON": { - "us": 2905.6, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 3265.5, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 5252.5, - "variant": "SAX (string stream, default precision)" + "nlohmann json_document": { + "us": 2128.6, + "variant": "accept" }, "nlohmann json": { - "us": 6658.6, + "us": 3388.1, "variant": "accept" }, - "nlohmann json_document": { - "us": 2137.5, - "variant": "accept" + "yyjson": { + "us": 4017.5, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 4486.4, + "variant": "DOM" + }, + "Glaze": { + "us": 3211.8, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 2911.8, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 5253.8, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 4072.2, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 6669.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 4447.6, - "variant": "DOM" - }, "sonic-rs": { "us": 4661.1, "variant": "IgnoredAny" }, - "yyjson": { - "us": 4052.9, - "variant": "read" + "simd-json": { + "us": 6669.1, + "variant": "tape (copy)" } }, "mesh": { - "Boost.JSON": { - "us": 989.9, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 711.9, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1357.4, - "variant": "SAX (string stream, default precision)" + "nlohmann json_document": { + "us": 493.4, + "variant": "accept" }, "nlohmann json": { - "us": 1804.1, + "us": 961.5, "variant": "accept" }, - "nlohmann json_document": { - "us": 493.5, - "variant": "accept" + "yyjson": { + "us": 1029.7, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 1190.9, + "variant": "DOM" + }, + "Glaze": { + "us": 762.2, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 988.7, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1318.3, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 910.5, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 1691.7, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 1208.9, - "variant": "DOM" - }, "sonic-rs": { "us": 1221.0, "variant": "IgnoredAny" }, - "yyjson": { - "us": 1033.2, - "variant": "read" + "simd-json": { + "us": 1691.7, + "variant": "tape (copy)" } }, "mesh.pretty": { - "Boost.JSON": { - "us": 1145.4, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 1155.7, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 2100.1, - "variant": "SAX (string stream, default precision)" + "nlohmann json_document": { + "us": 1155.4, + "variant": "accept" }, "nlohmann json": { - "us": 2025.6, + "us": 1304.9, "variant": "accept" }, - "nlohmann json_document": { - "us": 1101.0, - "variant": "accept" + "yyjson": { + "us": 1869.2, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 1458.4, + "variant": "DOM" + }, + "Glaze": { + "us": 1202.3, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 1153.9, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 2127.5, + "variant": "SAX (default precision)" }, "serde_json": { "us": 1483.7, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 2119.0, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 1453.5, - "variant": "DOM" - }, "sonic-rs": { "us": 1558.0, "variant": "IgnoredAny" }, - "yyjson": { - "us": 1819.0, - "variant": "insitu (copy)" + "simd-json": { + "us": 2119.0, + "variant": "tape (copy)" } }, "numbers": { - "Boost.JSON": { - "us": 79.6, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 125.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 273.3, - "variant": "SAX (string stream, default precision)" + "nlohmann json_document": { + "us": 71.8, + "variant": "accept" }, "nlohmann json": { - "us": 247.3, + "us": 129.6, "variant": "accept" }, - "nlohmann json_document": { - "us": 71.6, - "variant": "accept" + "yyjson": { + "us": 184.7, + "variant": "read" + }, + "simdjson": { + "us": 206.9, + "variant": "DOM" + }, + "Glaze": { + "us": 135.5, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 74.9, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 281.5, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 163.8, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 261.5, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 197.2, - "variant": "DOM" - }, "sonic-rs": { "us": 161.8, "variant": "IgnoredAny" }, - "yyjson": { - "us": 178.6, - "variant": "read" + "simd-json": { + "us": 261.5, + "variant": "tape (copy)" } }, "random": { - "Boost.JSON": { - "us": 877.6, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 658.7, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1755.9, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 347.6, + "variant": "accept" }, "nlohmann json": { - "us": 929.7, + "us": 496.0, "variant": "accept" }, - "nlohmann json_document": { - "us": 351.7, - "variant": "accept" + "yyjson": { + "us": 525.1, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 406.2, + "variant": "DOM" + }, + "Glaze": { + "us": 667.0, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 887.5, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1770.7, + "variant": "insitu (copy)" }, "serde_json": { "us": 772.3, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 840.2, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 406.7, - "variant": "DOM" - }, "sonic-rs": { "us": 502.9, "variant": "Value" }, - "yyjson": { - "us": 525.8, - "variant": "insitu (copy)" + "simd-json": { + "us": 840.2, + "variant": "tape (copy)" } }, "repeat": { - "Boost.JSON": { - "us": 14.0, - "variant": "SAX" - }, - "Glaze": { - "us": 10.8, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 21.2, - "variant": "SAX (default precision)" + "nlohmann json_document": { + "us": 5.0, + "variant": "accept" }, "nlohmann json": { - "us": 11.2, + "us": 6.3, "variant": "accept" }, - "nlohmann json_document": { - "us": 5.4, - "variant": "accept" + "yyjson": { + "us": 7.8, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 5.8, + "variant": "DOM" + }, + "Glaze": { + "us": 9.8, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 13.4, + "variant": "SAX" + }, + "RapidJSON": { + "us": 19.6, + "variant": "SAX (default precision)" }, "serde_json": { "us": 12.6, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 11.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 5.9, - "variant": "DOM" - }, "sonic-rs": { "us": 7.6, "variant": "Value" }, - "yyjson": { - "us": 8.0, - "variant": "read" + "simd-json": { + "us": 11.1, + "variant": "tape (copy)" } }, "semanticscholar-corpus": { - "Boost.JSON": { - "us": 5393.9, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 7948.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 27685.7, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 3164.9, + "variant": "accept" }, "nlohmann json": { - "us": 7751.9, + "us": 3760.1, "variant": "accept" }, - "nlohmann json_document": { - "us": 3290.4, - "variant": "accept" + "yyjson": { + "us": 6136.0, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 7348.8, + "variant": "DOM" + }, + "Glaze": { + "us": 8036.7, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 5265.8, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 26363.5, + "variant": "insitu (copy)" }, "serde_json": { "us": 6204.0, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 9501.2, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 7595.2, - "variant": "DOM" - }, "sonic-rs": { "us": 4777.5, "variant": "IgnoredAny" }, - "yyjson": { - "us": 6209.1, - "variant": "read" + "simd-json": { + "us": 9501.2, + "variant": "tape (copy)" } }, "tree-pretty": { - "Boost.JSON": { - "us": 34.1, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 37.8, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 72.2, - "variant": "SAX (default precision)" + "nlohmann json_document": { + "us": 18.2, + "variant": "accept" }, "nlohmann json": { - "us": 46.5, + "us": 25.4, "variant": "accept" }, - "nlohmann json_document": { - "us": 18.3, - "variant": "accept" + "yyjson": { + "us": 19.5, + "variant": "read" + }, + "simdjson": { + "us": 18.7, + "variant": "DOM" + }, + "Glaze": { + "us": 36.3, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 33.9, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 71.9, + "variant": "SAX (default precision)" }, "serde_json": { "us": 37.3, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 36.8, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 18.8, - "variant": "DOM" - }, "sonic-rs": { "us": 29.1, "variant": "Value" }, - "yyjson": { - "us": 19.5, - "variant": "read" + "simd-json": { + "us": 36.8, + "variant": "tape (copy)" } }, "twitter_api_compact_response": { - "Boost.JSON": { - "us": 6.7, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 10.0, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 33.6, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 4.1, + "variant": "accept" }, "nlohmann json": { - "us": 12.5, + "us": 5.2, "variant": "accept" }, - "nlohmann json_document": { - "us": 4.2, - "variant": "accept" + "yyjson": { + "us": 5.8, + "variant": "read" + }, + "simdjson": { + "us": 5.8, + "variant": "DOM" + }, + "Glaze": { + "us": 10.6, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 6.6, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 35.5, + "variant": "insitu (copy)" }, "serde_json": { "us": 7.8, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 11.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 5.8, - "variant": "DOM" - }, "sonic-rs": { "us": 6.7, "variant": "IgnoredAny" }, - "yyjson": { - "us": 5.8, - "variant": "read" + "simd-json": { + "us": 11.1, + "variant": "tape (copy)" } }, "twitter_api_response": { - "Boost.JSON": { - "us": 10.8, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 13.9, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 41.0, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 16.0, - "variant": "accept" - }, "nlohmann json_document": { "us": 5.7, "variant": "accept" }, - "serde_json": { - "us": 12.2, - "variant": "from_utf8 + IgnoredAny" + "nlohmann json": { + "us": 7.8, + "variant": "accept" }, - "simd-json": { - "us": 13.3, - "variant": "tape (copy)" + "yyjson": { + "us": 7.8, + "variant": "read" }, "simdjson": { "us": 7.0, "variant": "DOM" }, + "Glaze": { + "us": 13.9, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 10.9, + "variant": "SAX" + }, + "RapidJSON": { + "us": 42.6, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 12.2, + "variant": "from_utf8 + IgnoredAny" + }, "sonic-rs": { "us": 11.2, "variant": "IgnoredAny" }, - "yyjson": { - "us": 7.8, - "variant": "read" + "simd-json": { + "us": 13.3, + "variant": "tape (copy)" } }, "twitter_timeline": { - "Boost.JSON": { - "us": 40.7, - "variant": "SAX" - }, - "Glaze": { - "us": 49.2, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 142.3, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 23.2, + "variant": "accept" }, "nlohmann json": { - "us": 70.3, + "us": 29.8, "variant": "accept" }, - "nlohmann json_document": { - "us": 23.5, - "variant": "accept" - }, - "serde_json": { - "us": 45.6, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 54.3, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 30.3, - "variant": "DOM" - }, - "sonic-rs": { - "us": 43.0, - "variant": "IgnoredAny" - }, "yyjson": { "us": 27.8, "variant": "insitu (copy)" - } - }, - "twitterescaped": { - "Boost.JSON": { - "us": 608.2, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 713.0, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1767.7, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 962.0, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 312.4, - "variant": "accept" - }, - "serde_json": { - "us": 702.6, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 856.4, - "variant": "tape (copy)" }, "simdjson": { - "us": 407.8, + "us": 29.4, "variant": "DOM" }, - "sonic-rs": { - "us": 628.9, - "variant": "Value" - }, - "yyjson": { - "us": 443.2, - "variant": "insitu (copy)" - } - }, - "update-center": { - "Boost.JSON": { - "us": 342.2, - "variant": "SAX" - }, - "Glaze": { - "us": 671.7, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1826.3, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 610.8, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 263.1, - "variant": "accept" - }, - "serde_json": { - "us": 490.6, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 650.9, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 336.1, - "variant": "DOM" - }, - "sonic-rs": { - "us": 383.6, - "variant": "Value" - }, - "yyjson": { - "us": 447.4, - "variant": "read" - } - } - }, - "x86-gcc": { - "apache_builds": { - "Boost.JSON": { - "us": 107.9, - "variant": "SAX" - }, - "Glaze": { - "us": 152.0, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 218.8, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 140.0, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 54.4, - "variant": "accept" - }, - "serde_json": { - "us": 105.1, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 135.6, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 60.2, - "variant": "DOM" - }, - "sonic-rs": { - "us": 88.3, - "variant": "Value" - }, - "yyjson": { - "us": 87.6, - "variant": "read (raw numbers)" - } - }, - "github_events": { - "Boost.JSON": { - "us": 40.5, - "variant": "SAX" - }, - "Glaze": { - "us": 72.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 112.5, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 56.7, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 21.1, - "variant": "accept" - }, - "serde_json": { - "us": 49.2, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 55.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 27.3, - "variant": "DOM" - }, - "sonic-rs": { - "us": 40.9, - "variant": "Value" - }, - "yyjson": { - "us": 35.5, - "variant": "read" - } - }, - "google_maps_api_compact_response": { - "Boost.JSON": { - "us": 15.3, - "variant": "SAX" - }, - "Glaze": { - "us": 21.5, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 24.7, - "variant": "SAX (string stream, default precision)" - }, - "nlohmann json": { - "us": 26.7, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 8.9, - "variant": "accept" - }, - "serde_json": { - "us": 16.8, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 23.9, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 12.4, - "variant": "DOM" - }, - "sonic-rs": { - "us": 13.8, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 11.0, - "variant": "read" - } - }, - "google_maps_api_response": { - "Boost.JSON": { - "us": 26.9, - "variant": "SAX" - }, - "Glaze": { - "us": 34.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 34.9, - "variant": "SAX (string stream, default precision)" - }, - "nlohmann json": { - "us": 36.0, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 13.7, - "variant": "accept" - }, - "serde_json": { - "us": 27.6, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 30.6, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 13.8, - "variant": "DOM" - }, - "sonic-rs": { - "us": 23.2, - "variant": "Value" - }, - "yyjson": { - "us": 17.5, - "variant": "read" - } - }, - "gsoc-2018": { - "Boost.JSON": { - "us": 1063.2, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 2067.9, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 4555.7, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 1317.1, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 698.7, - "variant": "accept" - }, - "serde_json": { - "us": 1498.2, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 2236.9, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 1171.7, - "variant": "DOM" - }, - "sonic-rs": { - "us": 1134.0, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 1876.5, - "variant": "read (raw numbers)" - } - }, - "instruments": { - "Boost.JSON": { - "us": 218.3, - "variant": "SAX" - }, - "Glaze": { - "us": 265.0, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 357.3, - "variant": "SAX (string stream, default precision)" - }, - "nlohmann json": { - "us": 301.6, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 107.2, - "variant": "accept" - }, - "serde_json": { - "us": 212.4, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 290.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 117.0, - "variant": "DOM" - }, - "sonic-rs": { - "us": 229.3, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 158.0, - "variant": "read" - } - }, - "marine_ik": { - "Boost.JSON": { - "us": 2936.2, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 4986.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 5353.3, - "variant": "SAX (string stream, default precision)" - }, - "nlohmann json": { - "us": 7267.5, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 1883.9, - "variant": "accept" - }, - "serde_json": { - "us": 4072.2, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 6669.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 4193.5, - "variant": "DOM" - }, - "sonic-rs": { - "us": 4661.1, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 4094.9, - "variant": "read (raw numbers)" - } - }, - "mesh": { - "Boost.JSON": { - "us": 954.5, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 1065.1, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1381.1, - "variant": "SAX (string stream, default precision)" - }, - "nlohmann json": { - "us": 1867.2, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 399.6, - "variant": "accept" - }, - "serde_json": { - "us": 910.5, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 1691.7, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 1103.6, - "variant": "DOM" - }, - "sonic-rs": { - "us": 1221.0, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 1059.7, - "variant": "read (raw numbers)" - } - }, - "mesh.pretty": { - "Boost.JSON": { - "us": 1046.2, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 1822.9, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1889.2, - "variant": "SAX (default precision)" - }, - "nlohmann json": { - "us": 2329.2, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 967.1, - "variant": "accept" - }, - "serde_json": { - "us": 1483.7, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 2119.0, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 1340.0, - "variant": "DOM" - }, - "sonic-rs": { - "us": 1558.0, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 1651.7, - "variant": "read (raw numbers)" - } - }, - "numbers": { - "Boost.JSON": { - "us": 81.6, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 146.8, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 238.2, - "variant": "SAX (string stream, default precision)" - }, - "nlohmann json": { - "us": 275.1, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 63.0, - "variant": "accept" - }, - "serde_json": { - "us": 163.8, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 261.5, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 195.1, - "variant": "DOM" - }, - "sonic-rs": { - "us": 161.8, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 171.1, - "variant": "read (raw numbers)" - } - }, - "random": { - "Boost.JSON": { - "us": 896.6, - "variant": "SAX" - }, - "Glaze": { - "us": 743.7, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1079.9, - "variant": "SAX (string stream, default precision)" - }, - "nlohmann json": { - "us": 1020.4, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 350.4, - "variant": "accept" - }, - "serde_json": { - "us": 772.3, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 840.2, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 398.9, - "variant": "DOM" - }, - "sonic-rs": { - "us": 502.9, - "variant": "Value" - }, - "yyjson": { - "us": 572.4, - "variant": "insitu (copy)" - } - }, - "repeat": { - "Boost.JSON": { - "us": 13.4, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 15.9, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 14.3, - "variant": "SAX (string stream)" - }, - "nlohmann json": { - "us": 13.5, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 5.1, - "variant": "accept" - }, - "serde_json": { - "us": 12.6, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 11.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 6.2, - "variant": "DOM" - }, - "sonic-rs": { - "us": 7.6, - "variant": "Value" - }, - "yyjson": { - "us": 8.3, - "variant": "read" - } - }, - "semanticscholar-corpus": { - "Boost.JSON": { - "us": 5631.3, - "variant": "SAX" - }, - "Glaze": { - "us": 8153.6, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 14768.7, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 6955.2, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 3095.4, - "variant": "accept" - }, - "serde_json": { - "us": 6204.0, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 9501.2, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 7535.9, - "variant": "DOM" - }, - "sonic-rs": { - "us": 4777.5, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 6311.8, - "variant": "insitu (copy)" - } - }, - "tree-pretty": { - "Boost.JSON": { - "us": 35.4, - "variant": "SAX" - }, "Glaze": { "us": 48.9, "variant": "validate_json" }, - "RapidJSON": { - "us": 62.8, - "variant": "SAX (string stream, default precision)" - }, - "nlohmann json": { - "us": 48.0, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 16.9, - "variant": "accept" - }, - "serde_json": { - "us": 37.3, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 36.8, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 17.6, - "variant": "DOM" - }, - "sonic-rs": { - "us": 29.1, - "variant": "Value" - }, - "yyjson": { - "us": 21.4, - "variant": "insitu (copy)" - } - }, - "twitter_api_compact_response": { "Boost.JSON": { - "us": 7.1, + "us": 38.9, "variant": "SAX (numbers: none)" }, - "Glaze": { - "us": 10.3, - "variant": "validate_json" - }, "RapidJSON": { - "us": 18.9, + "us": 137.7, "variant": "insitu (copy)" }, - "nlohmann json": { - "us": 11.8, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 4.0, - "variant": "accept" - }, - "serde_json": { - "us": 7.8, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 11.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 5.7, - "variant": "DOM" - }, - "sonic-rs": { - "us": 6.7, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 5.8, - "variant": "insitu (copy)" - } - }, - "twitter_api_response": { - "Boost.JSON": { - "us": 11.0, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 16.6, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 26.9, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 16.5, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 5.5, - "variant": "accept" - }, - "serde_json": { - "us": 12.2, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 13.3, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 6.8, - "variant": "DOM" - }, - "sonic-rs": { - "us": 11.2, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 8.0, - "variant": "read" - } - }, - "twitter_timeline": { - "Boost.JSON": { - "us": 42.8, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 57.1, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 83.7, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 60.5, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 23.1, - "variant": "accept" - }, "serde_json": { "us": 45.6, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 54.3, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 29.8, - "variant": "DOM" - }, "sonic-rs": { "us": 43.0, "variant": "IgnoredAny" }, - "yyjson": { - "us": 28.9, - "variant": "read (raw numbers)" + "simd-json": { + "us": 54.3, + "variant": "tape (copy)" } }, "twitterescaped": { - "Boost.JSON": { - "us": 669.8, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 753.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1109.2, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 305.3, + "variant": "accept" }, "nlohmann json": { - "us": 908.9, + "us": 479.4, "variant": "accept" }, - "nlohmann json_document": { - "us": 306.8, - "variant": "accept" + "yyjson": { + "us": 442.9, + "variant": "read" + }, + "simdjson": { + "us": 409.1, + "variant": "DOM" + }, + "Glaze": { + "us": 723.5, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 613.8, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1733.5, + "variant": "insitu (copy)" }, "serde_json": { "us": 702.6, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 856.4, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 401.4, - "variant": "DOM" - }, "sonic-rs": { "us": 628.9, "variant": "Value" }, - "yyjson": { - "us": 474.3, - "variant": "read" + "simd-json": { + "us": 856.4, + "variant": "tape (copy)" } }, "update-center": { - "Boost.JSON": { - "us": 366.2, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 719.0, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1010.5, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 260.8, + "variant": "accept" }, "nlohmann json": { - "us": 580.2, + "us": 313.3, "variant": "accept" }, - "nlohmann json_document": { - "us": 256.4, - "variant": "accept" + "yyjson": { + "us": 449.6, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 356.2, + "variant": "DOM" + }, + "Glaze": { + "us": 714.0, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 341.2, + "variant": "SAX" + }, + "RapidJSON": { + "us": 1969.1, + "variant": "insitu (copy)" }, "serde_json": { "us": 490.6, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 650.9, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 325.6, - "variant": "DOM" - }, "sonic-rs": { "us": 383.6, "variant": "Value" }, - "yyjson": { - "us": 459.2, - "variant": "read" + "simd-json": { + "us": 650.9, + "variant": "tape (copy)" } } }, - "x86-gcc13": { + "x86-gcc": { "apache_builds": { - "Boost.JSON": { - "us": 110.3, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 134.8, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 314.3, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 54.5, + "variant": "accept" }, "nlohmann json": { - "us": 125.9, + "us": 102.0, "variant": "accept" }, - "nlohmann json_document": { - "us": 57.4, - "variant": "accept" + "yyjson": { + "us": 88.3, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 60.4, + "variant": "DOM" + }, + "Glaze": { + "us": 151.7, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 107.9, + "variant": "SAX" + }, + "RapidJSON": { + "us": 213.6, + "variant": "insitu (copy)" }, "serde_json": { "us": 105.1, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 135.6, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 62.4, - "variant": "DOM" - }, "sonic-rs": { "us": 88.3, "variant": "Value" }, - "yyjson": { - "us": 87.8, - "variant": "read" + "simd-json": { + "us": 135.6, + "variant": "tape (copy)" } }, "github_events": { - "Boost.JSON": { - "us": 42.4, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 63.1, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 166.0, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 21.5, + "variant": "accept" }, "nlohmann json": { - "us": 55.2, + "us": 30.6, "variant": "accept" }, - "nlohmann json_document": { - "us": 21.8, - "variant": "accept" + "yyjson": { + "us": 37.9, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 27.6, + "variant": "DOM" + }, + "Glaze": { + "us": 72.9, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 41.1, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 114.9, + "variant": "insitu (copy)" }, "serde_json": { "us": 49.2, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 55.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 27.8, - "variant": "DOM" - }, "sonic-rs": { "us": 40.9, "variant": "Value" }, - "yyjson": { - "us": 35.3, - "variant": "insitu (copy)" + "simd-json": { + "us": 55.1, + "variant": "tape (copy)" } }, "google_maps_api_compact_response": { - "Boost.JSON": { - "us": 16.8, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 18.9, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 39.3, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 10.1, + "variant": "accept" }, "nlohmann json": { - "us": 26.4, + "us": 12.2, "variant": "accept" }, - "nlohmann json_document": { - "us": 9.4, - "variant": "accept" + "yyjson": { + "us": 11.0, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 12.6, + "variant": "DOM" + }, + "Glaze": { + "us": 21.6, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 15.3, + "variant": "SAX" + }, + "RapidJSON": { + "us": 27.1, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 16.8, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 23.9, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 13.3, - "variant": "DOM" - }, "sonic-rs": { "us": 13.8, "variant": "IgnoredAny" }, - "yyjson": { - "us": 11.3, - "variant": "read" + "simd-json": { + "us": 23.9, + "variant": "tape (copy)" } }, "google_maps_api_response": { - "Boost.JSON": { - "us": 27.7, - "variant": "SAX" - }, - "Glaze": { - "us": 27.4, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 50.5, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 13.9, + "variant": "accept" }, "nlohmann json": { - "us": 34.9, + "us": 28.4, "variant": "accept" }, - "nlohmann json_document": { - "us": 15.0, - "variant": "accept" + "yyjson": { + "us": 17.8, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 13.9, + "variant": "DOM" + }, + "Glaze": { + "us": 34.9, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 27.2, + "variant": "SAX" + }, + "RapidJSON": { + "us": 36.8, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 27.6, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 30.6, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 14.7, - "variant": "DOM" - }, "sonic-rs": { "us": 23.2, "variant": "Value" }, - "yyjson": { - "us": 17.9, - "variant": "insitu (copy)" + "simd-json": { + "us": 30.6, + "variant": "tape (copy)" } }, "gsoc-2018": { - "Boost.JSON": { - "us": 1107.8, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 1802.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 7484.8, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 674.6, + "variant": "accept" }, "nlohmann json": { - "us": 1251.3, + "us": 860.2, "variant": "accept" }, - "nlohmann json_document": { - "us": 713.0, - "variant": "accept" + "yyjson": { + "us": 1848.1, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 1171.9, + "variant": "DOM" + }, + "Glaze": { + "us": 1958.6, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 1061.5, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 4475.0, + "variant": "insitu (copy)" }, "serde_json": { "us": 1498.2, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 2236.9, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 1174.1, - "variant": "DOM" - }, "sonic-rs": { "us": 1134.0, "variant": "IgnoredAny" }, - "yyjson": { - "us": 1848.0, - "variant": "read" + "simd-json": { + "us": 2236.9, + "variant": "tape (copy)" } }, "instruments": { - "Boost.JSON": { - "us": 228.5, - "variant": "SAX" - }, - "Glaze": { - "us": 211.4, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 492.5, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 106.7, + "variant": "accept" }, "nlohmann json": { - "us": 286.5, + "us": 219.8, "variant": "accept" }, - "nlohmann json_document": { - "us": 115.2, - "variant": "accept" + "yyjson": { + "us": 159.6, + "variant": "read" + }, + "simdjson": { + "us": 116.7, + "variant": "DOM" + }, + "Glaze": { + "us": 269.3, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 218.9, + "variant": "SAX" + }, + "RapidJSON": { + "us": 388.1, + "variant": "SAX (string stream)" }, "serde_json": { "us": 212.4, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 290.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 125.4, - "variant": "DOM" - }, "sonic-rs": { "us": 229.3, "variant": "IgnoredAny" }, - "yyjson": { - "us": 162.9, - "variant": "insitu (copy)" + "simd-json": { + "us": 290.1, + "variant": "tape (copy)" } }, "marine_ik": { - "Boost.JSON": { - "us": 2904.2, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 3706.9, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 5805.4, - "variant": "SAX (default precision)" + "nlohmann json_document": { + "us": 1888.7, + "variant": "accept" }, "nlohmann json": { - "us": 6931.7, + "us": 3642.4, "variant": "accept" }, - "nlohmann json_document": { - "us": 2131.0, - "variant": "accept" + "yyjson": { + "us": 3999.8, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 4270.6, + "variant": "DOM" + }, + "Glaze": { + "us": 5003.8, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 2951.2, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 5338.3, + "variant": "SAX (default precision)" }, "serde_json": { "us": 4072.2, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 6669.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 4381.3, - "variant": "DOM" - }, "sonic-rs": { "us": 4661.1, "variant": "IgnoredAny" }, - "yyjson": { - "us": 4173.8, - "variant": "read (raw numbers)" + "simd-json": { + "us": 6669.1, + "variant": "tape (copy)" } }, "mesh": { - "Boost.JSON": { - "us": 992.3, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 718.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1460.7, - "variant": "SAX (string stream, default precision)" + "nlohmann json_document": { + "us": 400.3, + "variant": "accept" }, "nlohmann json": { - "us": 1875.7, + "us": 1245.5, "variant": "accept" }, - "nlohmann json_document": { - "us": 433.4, - "variant": "accept" + "yyjson": { + "us": 1051.7, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 1104.5, + "variant": "DOM" + }, + "Glaze": { + "us": 1062.6, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 988.1, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1373.3, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 910.5, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 1691.7, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 1171.5, - "variant": "DOM" - }, "sonic-rs": { "us": 1221.0, "variant": "IgnoredAny" }, - "yyjson": { - "us": 1120.2, - "variant": "read (raw numbers)" + "simd-json": { + "us": 1691.7, + "variant": "tape (copy)" } }, "mesh.pretty": { - "Boost.JSON": { - "us": 1061.8, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 1269.4, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1934.3, - "variant": "SAX (default precision)" + "nlohmann json_document": { + "us": 972.9, + "variant": "accept" }, "nlohmann json": { - "us": 2283.0, + "us": 1604.4, "variant": "accept" }, - "nlohmann json_document": { - "us": 939.0, - "variant": "accept" + "yyjson": { + "us": 1664.1, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 1338.0, + "variant": "DOM" + }, + "Glaze": { + "us": 1826.4, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 1048.6, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1893.5, + "variant": "SAX (default precision)" }, "serde_json": { "us": 1483.7, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 2119.0, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 1379.5, - "variant": "DOM" - }, "sonic-rs": { "us": 1558.0, "variant": "IgnoredAny" }, - "yyjson": { - "us": 1728.8, - "variant": "read (raw numbers)" + "simd-json": { + "us": 2119.0, + "variant": "tape (copy)" } }, "numbers": { - "Boost.JSON": { - "us": 79.8, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 116.0, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 284.2, - "variant": "SAX (default precision)" + "nlohmann json_document": { + "us": 66.6, + "variant": "accept" }, "nlohmann json": { - "us": 270.5, + "us": 150.6, "variant": "accept" }, - "nlohmann json_document": { - "us": 67.1, - "variant": "accept" + "yyjson": { + "us": 178.8, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 207.1, + "variant": "DOM" + }, + "Glaze": { + "us": 164.0, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 81.6, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 252.2, + "variant": "SAX (string stream, default precision)" }, "serde_json": { "us": 163.8, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 261.5, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 199.2, - "variant": "DOM" - }, "sonic-rs": { "us": 161.8, "variant": "IgnoredAny" }, - "yyjson": { - "us": 178.0, - "variant": "read (raw numbers)" + "simd-json": { + "us": 261.5, + "variant": "tape (copy)" } }, "random": { - "Boost.JSON": { - "us": 960.8, - "variant": "SAX" - }, - "Glaze": { - "us": 667.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1453.5, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 342.1, + "variant": "accept" }, "nlohmann json": { - "us": 979.1, + "us": 560.6, "variant": "accept" }, - "nlohmann json_document": { - "us": 363.7, - "variant": "accept" + "yyjson": { + "us": 568.5, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 396.9, + "variant": "DOM" + }, + "Glaze": { + "us": 743.0, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 888.8, + "variant": "SAX" + }, + "RapidJSON": { + "us": 1079.5, + "variant": "SAX (string stream)" }, "serde_json": { "us": 772.3, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 840.2, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 416.6, - "variant": "DOM" - }, "sonic-rs": { "us": 502.9, "variant": "Value" }, - "yyjson": { - "us": 568.1, - "variant": "insitu (copy)" + "simd-json": { + "us": 840.2, + "variant": "tape (copy)" } }, "repeat": { - "Boost.JSON": { - "us": 14.4, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 11.9, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 17.8, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 5.0, + "variant": "accept" }, "nlohmann json": { - "us": 11.1, + "us": 8.0, "variant": "accept" }, - "nlohmann json_document": { - "us": 5.7, - "variant": "accept" - }, - "serde_json": { - "us": 12.6, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 11.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 6.2, - "variant": "DOM" - }, - "sonic-rs": { - "us": 7.6, - "variant": "Value" - }, "yyjson": { - "us": 9.2, + "us": 8.2, "variant": "read" - } - }, - "semanticscholar-corpus": { - "Boost.JSON": { - "us": 6232.4, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 7583.5, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 24043.7, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 7063.7, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 3214.2, - "variant": "accept" - }, - "serde_json": { - "us": 6204.0, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 9501.2, - "variant": "tape (copy)" }, "simdjson": { - "us": 7505.0, + "us": 5.6, "variant": "DOM" }, - "sonic-rs": { - "us": 4777.5, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 6346.4, - "variant": "insitu (copy)" - } - }, - "tree-pretty": { - "Boost.JSON": { - "us": 36.0, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 37.1, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 81.4, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 45.9, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 17.9, - "variant": "accept" - }, - "serde_json": { - "us": 37.3, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 36.8, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 19.0, - "variant": "DOM" - }, - "sonic-rs": { - "us": 29.1, - "variant": "Value" - }, - "yyjson": { - "us": 21.6, - "variant": "insitu (copy)" - } - }, - "twitter_api_compact_response": { - "Boost.JSON": { - "us": 7.9, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 9.5, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 29.5, - "variant": "insitu (copy)" - }, - "nlohmann json": { - "us": 11.6, - "variant": "accept" - }, - "nlohmann json_document": { - "us": 4.1, - "variant": "accept" - }, - "serde_json": { - "us": 7.8, - "variant": "from_utf8 + IgnoredAny" - }, - "simd-json": { - "us": 11.1, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 6.1, - "variant": "DOM" - }, - "sonic-rs": { - "us": 6.7, - "variant": "IgnoredAny" - }, - "yyjson": { - "us": 6.0, - "variant": "read" - } - }, - "twitter_api_response": { - "Boost.JSON": { - "us": 11.8, - "variant": "SAX (numbers: none)" - }, "Glaze": { "us": 13.9, "variant": "validate_json" }, + "Boost.JSON": { + "us": 13.1, + "variant": "SAX" + }, "RapidJSON": { - "us": 37.2, - "variant": "insitu (copy)" + "us": 14.0, + "variant": "SAX (string stream)" + }, + "serde_json": { + "us": 12.6, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 7.6, + "variant": "Value" + }, + "simd-json": { + "us": 11.1, + "variant": "tape (copy)" + } + }, + "semanticscholar-corpus": { + "nlohmann json_document": { + "us": 3023.4, + "variant": "accept" }, "nlohmann json": { - "us": 16.4, + "us": 3504.2, "variant": "accept" }, + "yyjson": { + "us": 6291.0, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 7439.2, + "variant": "DOM" + }, + "Glaze": { + "us": 8140.0, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 5563.6, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 14559.4, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 6204.0, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 4777.5, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 9501.2, + "variant": "tape (copy)" + } + }, + "tree-pretty": { "nlohmann json_document": { - "us": 5.8, + "us": 16.7, "variant": "accept" }, + "nlohmann json": { + "us": 33.1, + "variant": "accept" + }, + "yyjson": { + "us": 21.4, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 17.7, + "variant": "DOM" + }, + "Glaze": { + "us": 48.8, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 35.0, + "variant": "SAX" + }, + "RapidJSON": { + "us": 64.1, + "variant": "SAX (string stream, default precision)" + }, + "serde_json": { + "us": 37.3, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 29.1, + "variant": "Value" + }, + "simd-json": { + "us": 36.8, + "variant": "tape (copy)" + } + }, + "twitter_api_compact_response": { + "nlohmann json_document": { + "us": 3.9, + "variant": "accept" + }, + "nlohmann json": { + "us": 4.9, + "variant": "accept" + }, + "yyjson": { + "us": 5.9, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 5.9, + "variant": "DOM" + }, + "Glaze": { + "us": 10.4, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 7.1, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 19.8, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 7.8, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 6.7, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 11.1, + "variant": "tape (copy)" + } + }, + "twitter_api_response": { + "nlohmann json_document": { + "us": 5.5, + "variant": "accept" + }, + "nlohmann json": { + "us": 8.3, + "variant": "accept" + }, + "yyjson": { + "us": 8.1, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 6.8, + "variant": "DOM" + }, + "Glaze": { + "us": 17.5, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 11.1, + "variant": "SAX" + }, + "RapidJSON": { + "us": 28.7, + "variant": "insitu (copy)" + }, "serde_json": { "us": 12.2, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 13.3, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 7.0, - "variant": "DOM" - }, "sonic-rs": { "us": 11.2, "variant": "IgnoredAny" }, - "yyjson": { - "us": 7.8, - "variant": "insitu (copy)" + "simd-json": { + "us": 13.3, + "variant": "tape (copy)" } }, "twitter_timeline": { - "Boost.JSON": { - "us": 46.1, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 49.0, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 125.4, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 22.6, + "variant": "accept" }, "nlohmann json": { - "us": 61.3, + "us": 27.0, "variant": "accept" }, - "nlohmann json_document": { - "us": 23.6, - "variant": "accept" + "yyjson": { + "us": 27.7, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 28.7, + "variant": "DOM" + }, + "Glaze": { + "us": 54.4, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 41.6, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 83.8, + "variant": "insitu (copy)" }, "serde_json": { "us": 45.6, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 54.3, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 30.3, - "variant": "DOM" - }, "sonic-rs": { "us": 43.0, "variant": "IgnoredAny" }, - "yyjson": { - "us": 28.7, - "variant": "insitu (copy)" + "simd-json": { + "us": 54.3, + "variant": "tape (copy)" } }, "twitterescaped": { - "Boost.JSON": { - "us": 689.9, - "variant": "SAX (numbers: none)" - }, - "Glaze": { - "us": 735.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1459.9, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 303.2, + "variant": "accept" }, "nlohmann json": { - "us": 877.4, + "us": 451.7, "variant": "accept" }, - "nlohmann json_document": { - "us": 310.5, - "variant": "accept" + "yyjson": { + "us": 472.0, + "variant": "read" + }, + "simdjson": { + "us": 400.8, + "variant": "DOM" + }, + "Glaze": { + "us": 752.2, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 632.4, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1110.3, + "variant": "insitu (copy)" }, "serde_json": { "us": 702.6, "variant": "from_utf8 + IgnoredAny" }, - "simd-json": { - "us": 856.4, - "variant": "tape (copy)" - }, - "simdjson": { - "us": 442.8, - "variant": "DOM" - }, "sonic-rs": { "us": 628.9, "variant": "Value" }, - "yyjson": { - "us": 500.9, - "variant": "read" + "simd-json": { + "us": 856.4, + "variant": "tape (copy)" } }, "update-center": { - "Boost.JSON": { - "us": 406.2, - "variant": "SAX" - }, - "Glaze": { - "us": 681.3, - "variant": "validate_json" - }, - "RapidJSON": { - "us": 1555.0, - "variant": "insitu (copy)" + "nlohmann json_document": { + "us": 252.0, + "variant": "accept" }, "nlohmann json": { - "us": 578.8, + "us": 314.7, "variant": "accept" }, - "nlohmann json_document": { - "us": 261.3, - "variant": "accept" + "yyjson": { + "us": 479.3, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 328.0, + "variant": "DOM" + }, + "Glaze": { + "us": 778.5, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 389.5, + "variant": "SAX" + }, + "RapidJSON": { + "us": 1093.2, + "variant": "insitu (copy)" }, "serde_json": { "us": 490.6, "variant": "from_utf8 + IgnoredAny" }, + "sonic-rs": { + "us": 383.6, + "variant": "Value" + }, "simd-json": { "us": 650.9, "variant": "tape (copy)" + } + } + }, + "x86-gcc13": { + "apache_builds": { + "nlohmann json_document": { + "us": 56.9, + "variant": "accept" + }, + "nlohmann json": { + "us": 85.2, + "variant": "accept" + }, + "yyjson": { + "us": 88.6, + "variant": "read (raw numbers)" }, "simdjson": { - "us": 332.3, + "us": 62.5, "variant": "DOM" }, + "Glaze": { + "us": 134.9, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 110.4, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 214.9, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 105.1, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 88.3, + "variant": "Value" + }, + "simd-json": { + "us": 135.6, + "variant": "tape (copy)" + } + }, + "github_events": { + "nlohmann json_document": { + "us": 22.1, + "variant": "accept" + }, + "nlohmann json": { + "us": 28.3, + "variant": "accept" + }, + "yyjson": { + "us": 36.1, + "variant": "read" + }, + "simdjson": { + "us": 28.2, + "variant": "DOM" + }, + "Glaze": { + "us": 62.3, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 42.4, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 111.6, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 49.2, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 40.9, + "variant": "Value" + }, + "simd-json": { + "us": 55.1, + "variant": "tape (copy)" + } + }, + "google_maps_api_compact_response": { + "nlohmann json_document": { + "us": 9.3, + "variant": "accept" + }, + "nlohmann json": { + "us": 10.8, + "variant": "accept" + }, + "yyjson": { + "us": 11.3, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 13.1, + "variant": "DOM" + }, + "Glaze": { + "us": 18.5, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 17.0, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 28.1, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 16.8, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 13.8, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 23.9, + "variant": "tape (copy)" + } + }, + "google_maps_api_response": { + "nlohmann json_document": { + "us": 15.6, + "variant": "accept" + }, + "nlohmann json": { + "us": 24.8, + "variant": "accept" + }, + "yyjson": { + "us": 18.1, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 14.7, + "variant": "DOM" + }, + "Glaze": { + "us": 28.3, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 28.8, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 42.1, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 27.6, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 23.2, + "variant": "Value" + }, + "simd-json": { + "us": 30.6, + "variant": "tape (copy)" + } + }, + "gsoc-2018": { + "nlohmann json_document": { + "us": 720.2, + "variant": "accept" + }, + "nlohmann json": { + "us": 889.9, + "variant": "accept" + }, + "yyjson": { + "us": 1858.1, + "variant": "read" + }, + "simdjson": { + "us": 1237.4, + "variant": "DOM" + }, + "Glaze": { + "us": 1819.1, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 1106.1, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 4722.4, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 1498.2, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 1134.0, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 2236.9, + "variant": "tape (copy)" + } + }, + "instruments": { + "nlohmann json_document": { + "us": 118.6, + "variant": "accept" + }, + "nlohmann json": { + "us": 188.4, + "variant": "accept" + }, + "yyjson": { + "us": 164.5, + "variant": "read" + }, + "simdjson": { + "us": 125.8, + "variant": "DOM" + }, + "Glaze": { + "us": 212.3, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 229.6, + "variant": "SAX" + }, + "RapidJSON": { + "us": 407.8, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 212.4, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 229.3, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 290.1, + "variant": "tape (copy)" + } + }, + "marine_ik": { + "nlohmann json_document": { + "us": 2221.1, + "variant": "accept" + }, + "nlohmann json": { + "us": 3740.8, + "variant": "accept" + }, + "yyjson": { + "us": 4330.3, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 4321.0, + "variant": "DOM" + }, + "Glaze": { + "us": 3462.6, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 2933.8, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 5981.5, + "variant": "SAX (string stream, default precision)" + }, + "serde_json": { + "us": 4072.2, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 4661.1, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 6669.1, + "variant": "tape (copy)" + } + }, + "mesh": { + "nlohmann json_document": { + "us": 449.0, + "variant": "accept" + }, + "nlohmann json": { + "us": 1111.9, + "variant": "accept" + }, + "yyjson": { + "us": 1117.9, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 1173.1, + "variant": "DOM" + }, + "Glaze": { + "us": 713.6, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 984.3, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1493.5, + "variant": "SAX (string stream, default precision)" + }, + "serde_json": { + "us": 910.5, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 1221.0, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 1691.7, + "variant": "tape (copy)" + } + }, + "mesh.pretty": { + "nlohmann json_document": { + "us": 1152.4, + "variant": "accept" + }, + "nlohmann json": { + "us": 1364.0, + "variant": "accept" + }, + "yyjson": { + "us": 1690.7, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 1377.1, + "variant": "DOM" + }, + "Glaze": { + "us": 1241.4, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 1043.2, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1870.0, + "variant": "SAX (default precision)" + }, + "serde_json": { + "us": 1483.7, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 1558.0, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 2119.0, + "variant": "tape (copy)" + } + }, + "numbers": { + "nlohmann json_document": { + "us": 67.4, + "variant": "accept" + }, + "nlohmann json": { + "us": 146.1, + "variant": "accept" + }, + "yyjson": { + "us": 188.9, + "variant": "read (raw numbers)" + }, + "simdjson": { + "us": 208.6, + "variant": "DOM" + }, + "Glaze": { + "us": 120.7, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 79.9, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 308.1, + "variant": "SAX (default precision)" + }, + "serde_json": { + "us": 163.8, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 161.8, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 261.5, + "variant": "tape (copy)" + } + }, + "random": { + "nlohmann json_document": { + "us": 364.6, + "variant": "accept" + }, + "nlohmann json": { + "us": 477.8, + "variant": "accept" + }, + "yyjson": { + "us": 566.6, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 416.9, + "variant": "DOM" + }, + "Glaze": { + "us": 655.6, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 963.4, + "variant": "SAX" + }, + "RapidJSON": { + "us": 1058.8, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 772.3, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 502.9, + "variant": "Value" + }, + "simd-json": { + "us": 840.2, + "variant": "tape (copy)" + } + }, + "repeat": { + "nlohmann json_document": { + "us": 5.5, + "variant": "accept" + }, + "nlohmann json": { + "us": 6.0, + "variant": "accept" + }, + "yyjson": { + "us": 8.7, + "variant": "read" + }, + "simdjson": { + "us": 6.2, + "variant": "DOM" + }, + "Glaze": { + "us": 10.9, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 14.1, + "variant": "SAX" + }, + "RapidJSON": { + "us": 14.5, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 12.6, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 7.6, + "variant": "Value" + }, + "simd-json": { + "us": 11.1, + "variant": "tape (copy)" + } + }, + "semanticscholar-corpus": { + "nlohmann json_document": { + "us": 3121.2, + "variant": "accept" + }, + "nlohmann json": { + "us": 3501.2, + "variant": "accept" + }, + "yyjson": { + "us": 6309.2, + "variant": "read" + }, + "simdjson": { + "us": 7757.0, + "variant": "DOM" + }, + "Glaze": { + "us": 7540.9, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 6195.2, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 14601.4, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 6204.0, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 4777.5, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 9501.2, + "variant": "tape (copy)" + } + }, + "tree-pretty": { + "nlohmann json_document": { + "us": 17.9, + "variant": "accept" + }, + "nlohmann json": { + "us": 27.4, + "variant": "accept" + }, + "yyjson": { + "us": 21.4, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 19.0, + "variant": "DOM" + }, + "Glaze": { + "us": 37.4, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 35.4, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 68.6, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 37.3, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 29.1, + "variant": "Value" + }, + "simd-json": { + "us": 36.8, + "variant": "tape (copy)" + } + }, + "twitter_api_compact_response": { + "nlohmann json_document": { + "us": 4.0, + "variant": "accept" + }, + "nlohmann json": { + "us": 4.8, + "variant": "accept" + }, + "yyjson": { + "us": 6.1, + "variant": "read" + }, + "simdjson": { + "us": 5.9, + "variant": "DOM" + }, + "Glaze": { + "us": 9.4, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 8.0, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 18.8, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 7.8, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 6.7, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 11.1, + "variant": "tape (copy)" + } + }, + "twitter_api_response": { + "nlohmann json_document": { + "us": 5.6, + "variant": "accept" + }, + "nlohmann json": { + "us": 7.1, + "variant": "accept" + }, + "yyjson": { + "us": 7.9, + "variant": "read" + }, + "simdjson": { + "us": 7.1, + "variant": "DOM" + }, + "Glaze": { + "us": 14.1, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 12.0, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 26.6, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 12.2, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 11.2, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 13.3, + "variant": "tape (copy)" + } + }, + "twitter_timeline": { + "nlohmann json_document": { + "us": 23.4, + "variant": "accept" + }, + "nlohmann json": { + "us": 26.6, + "variant": "accept" + }, + "yyjson": { + "us": 28.5, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 30.0, + "variant": "DOM" + }, + "Glaze": { + "us": 50.0, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 46.1, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 85.3, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 45.6, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 43.0, + "variant": "IgnoredAny" + }, + "simd-json": { + "us": 54.3, + "variant": "tape (copy)" + } + }, + "twitterescaped": { + "nlohmann json_document": { + "us": 309.4, + "variant": "accept" + }, + "nlohmann json": { + "us": 447.3, + "variant": "accept" + }, + "yyjson": { + "us": 497.6, + "variant": "insitu (copy)" + }, + "simdjson": { + "us": 440.2, + "variant": "DOM" + }, + "Glaze": { + "us": 739.4, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 735.8, + "variant": "SAX (numbers: none)" + }, + "RapidJSON": { + "us": 1082.5, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 702.6, + "variant": "from_utf8 + IgnoredAny" + }, + "sonic-rs": { + "us": 628.9, + "variant": "Value" + }, + "simd-json": { + "us": 856.4, + "variant": "tape (copy)" + } + }, + "update-center": { + "nlohmann json_document": { + "us": 258.1, + "variant": "accept" + }, + "nlohmann json": { + "us": 293.9, + "variant": "accept" + }, + "yyjson": { + "us": 462.3, + "variant": "read" + }, + "simdjson": { + "us": 355.2, + "variant": "DOM" + }, + "Glaze": { + "us": 682.3, + "variant": "validate_json" + }, + "Boost.JSON": { + "us": 408.2, + "variant": "SAX" + }, + "RapidJSON": { + "us": 1034.3, + "variant": "insitu (copy)" + }, + "serde_json": { + "us": 490.6, + "variant": "from_utf8 + IgnoredAny" + }, "sonic-rs": { "us": 383.6, "variant": "Value" }, - "yyjson": { - "us": 461.4, - "variant": "read" + "simd-json": { + "us": 650.9, + "variant": "tape (copy)" } } } -} \ No newline at end of file +} diff --git a/docs/mkdocs/scripts/figures/data/perf_suite.csv b/docs/mkdocs/scripts/figures/data/perf_suite.csv index 9ef488544..ccb4d7d57 100644 --- a/docs/mkdocs/scripts/figures/data/perf_suite.csv +++ b/docs/mkdocs/scripts/figures/data/perf_suite.csv @@ -1,183 +1,183 @@ benchmark,unit,3.12.0,3.13.0,speedup -Accept/canada,ns,1.29488e+07,2.3494e+06,5.512 -Accept/citm_catalog,ns,6.53091e+06,923408,7.073 -Accept/floats,ns,1.15702e+08,2.26771e+07,5.102 -Accept/jeopardy,ns,2.20758e+08,5.92935e+07,3.723 -Accept/signed_ints,ns,1.17358e+08,2.82947e+07,4.148 -Accept/small_signed_ints,ns,5.75113e+07,1.80352e+07,3.189 -Accept/twitter,ns,2.51345e+06,483792,5.195 -Accept/unsigned_ints,ns,1.16297e+08,2.97181e+07,3.913 -BinaryToCbor/1024,ns,298.444,107.095,2.787 -BinaryToCbor/128,ns,248.661,116.711,2.131 -BinaryToCbor/16,ns,244.687,49.6325,4.930 -BinaryToCbor/16384,ns,952.115,413.62,2.302 -BinaryToCbor/2048,ns,328.419,125.183,2.624 -BinaryToCbor/256,ns,264.678,90.8937,2.912 -BinaryToCbor/32,ns,251.632,50.4059,4.992 -BinaryToCbor/32768,ns,1541.05,802.721,1.920 -BinaryToCbor/4096,ns,406.957,177.412,2.294 -BinaryToCbor/512,ns,289.876,102.063,2.840 -BinaryToCbor/64,ns,254.928,84.6434,3.012 -BinaryToCbor/8,ns,247.618,49.3761,5.015 -BinaryToCbor/8192,ns,514.281,256.456,2.005 -Copy/canada,ns,3.78116e+06,2.92734e+06,1.292 -Copy/citm_catalog,ns,1.7026e+06,1.51108e+06,1.127 -Copy/twitter,ns,840201,767400,1.095 -CopyAssign/canada,ns,3.86416e+06,2.94449e+06,1.312 -CopyAssign/citm_catalog,ns,1.76529e+06,1.58608e+06,1.113 -CopyAssign/twitter,ns,884985,790724,1.119 -CopyOnly/canada,ns,1.60229e+06,1.57507e+06,1.017 -CopyOnly/citm_catalog,ns,786244,817481,0.962 -CopyOnly/twitter,ns,423631,420649,1.007 -CopyRing/canada,ns,3.86433e+06,2.99657e+06,1.290 -CopyRing/citm_catalog,ns,1.84434e+06,1.60579e+06,1.149 -CopyRing/twitter,ns,951510,818035,1.163 -DestroyOnly/canada,ns,2.22138e+06,1.40157e+06,1.585 -DestroyOnly/citm_catalog,ns,926244,711471,1.302 -DestroyOnly/twitter,ns,416055,336082,1.238 -Diff/canada,ns,3.98055e+07,3.80466e+06,10.462 -Diff/citm_catalog,ns,7.1859e+06,1.12351e+06,6.396 -Diff/twitter,ns,5.11261e+06,661062,7.734 -Dump/canada / -,ns,6.95189e+06,2.33647e+06,2.975 -Dump/canada / 4,ns,9.09882e+06,3.10291e+06,2.932 -Dump/citm_catalog / -,ns,1.42117e+06,295678,4.806 -Dump/citm_catalog / 4,ns,1.98589e+06,422600,4.699 -Dump/floats / -,ns,6.4332e+07,2.37747e+07,2.706 -Dump/floats / 4,ns,7.25695e+07,2.46207e+07,2.947 -Dump/jeopardy / -,ns,2.06771e+08,3.17494e+07,6.513 -Dump/jeopardy / 4,ns,2.27967e+08,3.53626e+07,6.447 -Dump/signed_ints / -,ns,2.40551e+07,1.0736e+07,2.241 -Dump/signed_ints / 4,ns,3.25192e+07,1.1333e+07,2.869 -Dump/small_signed_ints / -,ns,1.81398e+07,8.12457e+06,2.233 -Dump/small_signed_ints / 4,ns,2.55296e+07,8.80796e+06,2.898 -Dump/twitter / -,ns,1.43584e+06,214252,6.702 -Dump/twitter / 4,ns,1.63183e+06,253042,6.449 -Dump/unsigned_ints / -,ns,2.39512e+07,8.11916e+06,2.950 -Dump/unsigned_ints / 4,ns,3.22761e+07,8.58925e+06,3.758 -Equal/canada,ns,473767,349284,1.356 -Equal/citm_catalog,ns,279548,263329,1.062 -Equal/twitter,ns,145555,131450,1.107 -Flatten/canada,ns,2.94475e+07,1.11184e+07,2.649 -Flatten/citm_catalog,ns,6.7155e+06,3.07325e+06,2.185 -Flatten/twitter,ns,3.66077e+06,2.10599e+06,1.738 -FlattenOrdered/citm_catalog,ns,2.62026e+08,1.42645e+06,183.691 -FlattenOrdered/twitter,ns,5.1275e+07,890275,57.595 -FromBinaryBuffer/bjdata / canada,ns,8.81972e+06,4.16727e+06,2.116 -FromBinaryBuffer/bjdata / twitter,ns,3.32045e+06,976266,3.401 -FromBinaryBuffer/bjdata_optimized / canada,ns,9.2386e+06,2.47996e+06,3.725 -FromBinaryBuffer/bjdata_optimized / twitter,ns,3.30526e+06,985625,3.353 -FromBinaryBuffer/bson / canada,ns,1.00372e+07,4.31554e+06,2.326 -FromBinaryBuffer/bson / citm_catalog,ns,4.07611e+06,1.60647e+06,2.537 -FromBinaryBuffer/bson / twitter,ns,3.25635e+06,936933,3.476 -FromBinaryBuffer/cbor / canada,ns,8.89562e+06,2.11517e+06,4.206 -FromBinaryBuffer/cbor / citm_catalog,ns,3.94234e+06,1.45242e+06,2.714 -FromBinaryBuffer/cbor / floats,ns,3.0473e+07,5.47969e+06,5.561 -FromBinaryBuffer/cbor / jeopardy,ns,3.73185e+08,1.14934e+08,3.247 -FromBinaryBuffer/cbor / signed_ints,ns,3.66673e+07,9.88892e+06,3.708 -FromBinaryBuffer/cbor / twitter,ns,3.23196e+06,953415,3.390 -FromBinaryBuffer/msgpack / canada,ns,8.85983e+06,2.12215e+06,4.175 -FromBinaryBuffer/msgpack / citm_catalog,ns,3.84901e+06,1.4503e+06,2.654 -FromBinaryBuffer/msgpack / jeopardy,ns,3.73143e+08,1.11034e+08,3.361 -FromBinaryBuffer/msgpack / twitter,ns,3.2397e+06,954811,3.393 -FromBinaryBuffer/ubjson / canada,ns,8.84059e+06,4.20402e+06,2.103 -FromBinaryBuffer/ubjson / citm_catalog,ns,4.0708e+06,1.78566e+06,2.280 -FromBinaryBuffer/ubjson / jeopardy,ns,3.79093e+08,1.17024e+08,3.239 -FromBinaryBuffer/ubjson / twitter,ns,3.29948e+06,981057,3.363 -FromBinaryBuffer/ubjson_optimized / canada,ns,8.88909e+06,2.42788e+06,3.661 -FromBinaryBuffer/ubjson_optimized / twitter,ns,3.29784e+06,974810,3.383 -FromBinaryFile/bjdata / twitter,ns,1.09208e+07,1.94678e+06,5.610 -FromBinaryFile/bson / twitter,ns,1.07209e+07,1.84971e+06,5.796 -FromBinaryFile/cbor / canada,ns,1.49218e+07,4.48832e+06,3.325 -FromBinaryFile/cbor / twitter,ns,1.03718e+07,1.57388e+06,6.590 -FromBinaryFile/ubjson / canada,ns,1.43414e+07,6.42996e+06,2.230 -FromBinaryFile/ubjson / twitter,ns,1.09266e+07,1.97275e+06,5.539 -FromBinaryShape/containers / bjdata,ns,1.46977e+07,7.23447e+06,2.032 -FromBinaryShape/containers / bson,ns,1.75596e+07,7.88867e+06,2.226 -FromBinaryShape/containers / cbor,ns,1.46488e+07,4.15792e+06,3.523 -FromBinaryShape/containers / msgpack,ns,1.45853e+07,3.89266e+06,3.747 -FromBinaryShape/containers / ubjson,ns,1.49773e+07,7.23987e+06,2.069 -FromBinaryShape/containers / ubjson_optimized,ns,1.54989e+07,4.55976e+06,3.399 -FromBinaryShape/nested / bjdata,ns,96825.9,38335.1,2.526 -FromBinaryShape/nested / bson,ns,101356,42620.2,2.378 -FromBinaryShape/nested / cbor,ns,94929.8,35845.6,2.648 -FromBinaryShape/nested / msgpack,ns,92610.2,35078.3,2.640 -FromBinaryShape/nested / ubjson,ns,96090.6,38285.6,2.510 -FromBinaryShape/scalars / bjdata,ns,2.52616e+07,1.15856e+07,2.180 -FromBinaryShape/scalars / cbor,ns,2.62118e+07,5.88743e+06,4.452 -FromBinaryShape/scalars / msgpack,ns,2.50706e+07,5.65159e+06,4.436 -FromBinaryShape/scalars / ubjson,ns,2.53402e+07,1.16191e+07,2.181 -FromCborChunkedString/10000 chunks,ns,91845.9,82875.5,1.108 -FromMsgpack/canada,ns,1.48853e+07,4.56225e+06,3.263 -FromMsgpack/citm_catalog,ns,9.3559e+06,2.26246e+06,4.135 -FromMsgpack/floats,ns,6.12575e+07,2.86709e+07,2.137 -FromMsgpack/jeopardy,ns,1.16767e+09,1.90153e+08,6.141 -FromMsgpack/signed_ints,ns,6.38812e+07,3.28867e+07,1.942 -FromMsgpack/small_signed_ints,ns,6.44688e+07,3.44227e+07,1.873 -FromMsgpack/twitter,ns,1.02787e+07,1.48541e+06,6.920 -FromMsgpack/unsigned_ints,ns,5.7784e+07,2.83078e+07,2.041 -"GetArray>",ns,2274.63,654.431,3.476 -GetArray>,ns,8288.3,1175.75,7.049 -GetArray>,ns,60017.4,42504.9,1.412 -GetArray>,ns,6785.73,681.915,9.951 -GetMap/citm_catalog,ns,3.60313e+06,2.48546e+06,1.450 -GetVectorDouble/floats,ns,6.83612e+06,656162,10.418 -GetVectorInt/signed_ints,ns,8.22365e+06,3.46495e+06,2.373 -Iterate/canada,ns,897083,328035,2.735 -Iterate/citm_catalog,ns,305421,171245,1.784 -Iterate/twitter,ns,89996.6,61975.8,1.452 -JsonPointerAt/citm_catalog,ns,1.89898e+06,1.17751e+06,1.613 -JsonPointerAt/twitter,ns,817946,611519,1.338 -JsonPointerContains/citm_catalog,ns,2.8177e+06,1.26796e+06,2.222 -JsonPointerContains/twitter,ns,1.33508e+06,628630,2.124 -JsonPointerParse/citm_catalog,ns,5.81355e+06,2.24831e+06,2.586 -JsonPointerParse/twitter,ns,2.47971e+06,1.02159e+06,2.427 -JsonPointerToString/citm_catalog,ns,6.7858e+06,1.93924e+06,3.499 -JsonPointerToString/twitter,ns,2.23096e+06,834416,2.674 -ParseFILE/canada,ns,5.41907e+07,1.46942e+07,3.688 -ParseFILE/citm_catalog,ns,3.59542e+07,7.58092e+06,4.743 -ParseFILE/twitter,ns,1.4087e+07,3.44991e+06,4.083 -ParseFile/canada,ns,1.82792e+07,6.46954e+06,2.825 -ParseFile/citm_catalog,ns,8.12979e+06,2.52336e+06,3.222 -ParseFile/floats,ns,1.31229e+08,4.81407e+07,2.726 -ParseFile/jeopardy,ns,3.38017e+08,1.62098e+08,2.085 -ParseFile/signed_ints,ns,1.28749e+08,4.62304e+07,2.785 -ParseFile/small_signed_ints,ns,6.47398e+07,3.34103e+07,1.938 -ParseFile/twitter,ns,3.43041e+06,1.37495e+06,2.495 -ParseFile/unsigned_ints,ns,1.24001e+08,4.74365e+07,2.614 -ParseIndented/canada / 4,ns,3.4977e+07,5.37149e+06,6.512 -ParseIndented/citm_catalog / 4,ns,7.52423e+06,1.81376e+06,4.148 -ParseIndented/jeopardy / 4,ns,3.45046e+08,1.33383e+08,2.587 -ParseIndented/twitter / 4,ns,3.72283e+06,1.12645e+06,3.305 -ParseStreamValues/ndjson,ns,7.15876e+06,3.76965e+06,1.899 -ParseStreamValues/numbers,ns,1.92619e+06,383138,5.027 -ParseString/canada,ns,1.55213e+07,4.62776e+06,3.354 -ParseString/citm_catalog,ns,7.56417e+06,1.77967e+06,4.250 -ParseString/floats,ns,1.21779e+08,2.83035e+07,4.303 -ParseString/jeopardy,ns,3.16817e+08,1.30897e+08,2.420 -ParseString/signed_ints,ns,1.22931e+08,3.19852e+07,3.843 -ParseString/small_signed_ints,ns,6.2685e+07,2.49764e+07,2.510 -ParseString/twitter,ns,3.2961e+06,1.04867e+06,3.143 -ParseString/unsigned_ints,ns,1.21229e+08,3.29241e+07,3.682 -ParseStringOrdered/canada,ns,1.5388e+07,4.5275e+06,3.399 -ParseStringOrdered/citm_catalog,ns,1.15204e+07,1.68115e+06,6.853 -ParseStringOrdered/jeopardy,ns,3.73533e+08,1.13397e+08,3.294 -ParseStringOrdered/twitter,ns,4.5979e+06,948606,4.847 -Patch/canada,ns,1.03684e+07,3.47719e+06,2.982 -Patch/citm_catalog,ns,2.74522e+06,1.74191e+06,1.576 -Patch/twitter,ns,1.57928e+06,888657,1.777 -SaxParse/canada,ns,1.31023e+07,3.26697e+06,4.011 -SaxParse/citm_catalog,ns,6.54642e+06,966806,6.771 -SaxParse/twitter,ns,2.53102e+06,483052,5.240 -ToCbor/canada,ns,1.41339e+06,556912,2.538 -ToCbor/citm_catalog,ns,1.04743e+06,259178,4.041 -ToCbor/floats,ns,9.04677e+06,1.90094e+06,4.759 -ToCbor/jeopardy,ns,7.39339e+07,2.20678e+07,3.350 -ToCbor/signed_ints,ns,1.15333e+07,2.827e+06,4.080 -ToCbor/small_signed_ints,ns,1.0394e+07,2.47974e+06,4.192 -ToCbor/twitter,ns,658566,143397,4.593 -ToCbor/unsigned_ints,ns,8.17966e+06,2.81588e+06,2.905 -ToJsonStrings/copy,ns,6.12e+06,5.65303e+06,1.083 -ToJsonStrings/move,ns,6.13061e+06,3.13303e+06,1.957 -Unflatten/canada,ns,4.25276e+07,1.10995e+07,3.831 -Unflatten/citm_catalog,ns,1.01866e+07,3.62185e+06,2.813 -Unflatten/twitter,ns,4.74536e+06,2.21103e+06,2.146 +Accept/canada,ns,1.27789e+07,1.34304e+06,9.515 +Accept/citm_catalog,ns,6.47666e+06,474064,13.662 +Accept/floats,ns,1.14227e+08,1.72173e+07,6.634 +Accept/jeopardy,ns,2.18081e+08,2.79002e+07,7.816 +Accept/signed_ints,ns,1.15981e+08,2.33778e+07,4.961 +Accept/small_signed_ints,ns,5.64996e+07,1.31818e+07,4.286 +Accept/twitter,ns,2.48725e+06,234277,10.617 +Accept/unsigned_ints,ns,1.14729e+08,2.28147e+07,5.029 +BinaryToCbor/1024,ns,315.368,108.041,2.919 +BinaryToCbor/128,ns,266.074,114.105,2.332 +BinaryToCbor/16,ns,246.212,49.912,4.933 +BinaryToCbor/16384,ns,950.054,418.045,2.273 +BinaryToCbor/2048,ns,340.213,126.796,2.683 +BinaryToCbor/256,ns,279.79,91.7512,3.049 +BinaryToCbor/32,ns,262.471,50.3433,5.214 +BinaryToCbor/32768,ns,1578.4,837.8,1.884 +BinaryToCbor/4096,ns,431.963,174.276,2.479 +BinaryToCbor/512,ns,296.768,102.073,2.907 +BinaryToCbor/64,ns,259.159,84.2641,3.076 +BinaryToCbor/8,ns,250.574,49.9122,5.020 +BinaryToCbor/8192,ns,527.418,253.616,2.080 +Copy/canada,ns,3.68841e+06,2.9017e+06,1.271 +Copy/citm_catalog,ns,1.64706e+06,1.48507e+06,1.109 +Copy/twitter,ns,810558,728698,1.112 +CopyAssign/canada,ns,3.73912e+06,2.94393e+06,1.270 +CopyAssign/citm_catalog,ns,1.6545e+06,1.53713e+06,1.076 +CopyAssign/twitter,ns,817997,752415,1.087 +CopyOnly/canada,ns,1.53602e+06,1.52075e+06,1.010 +CopyOnly/citm_catalog,ns,754817,794741,0.950 +CopyOnly/twitter,ns,406966,410330,0.992 +CopyRing/canada,ns,3.74734e+06,2.92592e+06,1.281 +CopyRing/citm_catalog,ns,1.7477e+06,1.54757e+06,1.129 +CopyRing/twitter,ns,876191,784261,1.117 +DestroyOnly/canada,ns,2.16216e+06,1.38217e+06,1.564 +DestroyOnly/citm_catalog,ns,895535,681877,1.313 +DestroyOnly/twitter,ns,406450,326620,1.244 +Diff/canada,ns,3.91782e+07,3.75209e+06,10.442 +Diff/citm_catalog,ns,6.91552e+06,1.09211e+06,6.332 +Diff/twitter,ns,4.92965e+06,639734,7.706 +Dump/canada / -,ns,6.70617e+06,2.31399e+06,2.898 +Dump/canada / 4,ns,8.81664e+06,3.03083e+06,2.909 +Dump/citm_catalog / -,ns,1.39132e+06,295525,4.708 +Dump/citm_catalog / 4,ns,1.94729e+06,421536,4.620 +Dump/floats / -,ns,6.35321e+07,2.37757e+07,2.672 +Dump/floats / 4,ns,7.19879e+07,2.4663e+07,2.919 +Dump/jeopardy / -,ns,2.0176e+08,3.0624e+07,6.588 +Dump/jeopardy / 4,ns,2.20493e+08,3.43504e+07,6.419 +Dump/signed_ints / -,ns,2.36853e+07,1.07405e+07,2.205 +Dump/signed_ints / 4,ns,3.2029e+07,1.13731e+07,2.816 +Dump/small_signed_ints / -,ns,1.78623e+07,7.93339e+06,2.252 +Dump/small_signed_ints / 4,ns,2.50508e+07,8.80939e+06,2.844 +Dump/twitter / -,ns,1.40813e+06,213513,6.595 +Dump/twitter / 4,ns,1.59095e+06,249353,6.380 +Dump/unsigned_ints / -,ns,2.35653e+07,8.07378e+06,2.919 +Dump/unsigned_ints / 4,ns,3.17269e+07,8.50708e+06,3.729 +Equal/canada,ns,463162,336269,1.377 +Equal/citm_catalog,ns,264124,260967,1.012 +Equal/twitter,ns,138843,128906,1.077 +Flatten/canada,ns,2.86941e+07,1.1214e+07,2.559 +Flatten/citm_catalog,ns,6.4406e+06,3.00538e+06,2.143 +Flatten/twitter,ns,3.53051e+06,2.05449e+06,1.718 +FlattenOrdered/citm_catalog,ns,2.56371e+08,1.40896e+06,181.958 +FlattenOrdered/twitter,ns,5.00313e+07,863594,57.934 +FromBinaryBuffer/bjdata / canada,ns,8.15141e+06,4.17154e+06,1.954 +FromBinaryBuffer/bjdata / twitter,ns,3.18297e+06,893076,3.564 +FromBinaryBuffer/bjdata_optimized / canada,ns,8.73882e+06,2.42167e+06,3.609 +FromBinaryBuffer/bjdata_optimized / twitter,ns,3.15905e+06,884856,3.570 +FromBinaryBuffer/bson / canada,ns,9.33283e+06,4.27358e+06,2.184 +FromBinaryBuffer/bson / citm_catalog,ns,3.91854e+06,1.61073e+06,2.433 +FromBinaryBuffer/bson / twitter,ns,3.176e+06,910290,3.489 +FromBinaryBuffer/cbor / canada,ns,8.39002e+06,2.08256e+06,4.029 +FromBinaryBuffer/cbor / citm_catalog,ns,3.71495e+06,1.31999e+06,2.814 +FromBinaryBuffer/cbor / floats,ns,2.91606e+07,5.48446e+06,5.317 +FromBinaryBuffer/cbor / jeopardy,ns,3.52964e+08,1.00739e+08,3.504 +FromBinaryBuffer/cbor / signed_ints,ns,3.59874e+07,9.77712e+06,3.681 +FromBinaryBuffer/cbor / twitter,ns,3.08997e+06,878827,3.516 +FromBinaryBuffer/msgpack / canada,ns,8.25869e+06,2.09779e+06,3.937 +FromBinaryBuffer/msgpack / citm_catalog,ns,3.71825e+06,1.28675e+06,2.890 +FromBinaryBuffer/msgpack / jeopardy,ns,3.56624e+08,9.69017e+07,3.680 +FromBinaryBuffer/msgpack / twitter,ns,3.06392e+06,850067,3.604 +FromBinaryBuffer/ubjson / canada,ns,8.12649e+06,4.14411e+06,1.961 +FromBinaryBuffer/ubjson / citm_catalog,ns,3.82184e+06,1.65659e+06,2.307 +FromBinaryBuffer/ubjson / jeopardy,ns,3.65507e+08,1.01303e+08,3.608 +FromBinaryBuffer/ubjson / twitter,ns,3.15221e+06,895746,3.519 +FromBinaryBuffer/ubjson_optimized / canada,ns,8.5126e+06,2.38858e+06,3.564 +FromBinaryBuffer/ubjson_optimized / twitter,ns,3.12199e+06,882166,3.539 +FromBinaryFile/bjdata / twitter,ns,1.04222e+07,1.45214e+06,7.177 +FromBinaryFile/bson / twitter,ns,1.02874e+07,1.23514e+06,8.329 +FromBinaryFile/cbor / canada,ns,1.43434e+07,2.4071e+06,5.959 +FromBinaryFile/cbor / twitter,ns,9.92359e+06,1.075e+06,9.231 +FromBinaryFile/ubjson / canada,ns,1.35516e+07,6.2336e+06,2.174 +FromBinaryFile/ubjson / twitter,ns,1.05159e+07,1.46077e+06,7.199 +FromBinaryShape/containers / bjdata,ns,1.43175e+07,7.24204e+06,1.977 +FromBinaryShape/containers / bson,ns,1.74215e+07,7.97531e+06,2.184 +FromBinaryShape/containers / cbor,ns,1.3898e+07,3.93021e+06,3.536 +FromBinaryShape/containers / msgpack,ns,1.378e+07,3.88449e+06,3.547 +FromBinaryShape/containers / ubjson,ns,1.44223e+07,7.2737e+06,1.983 +FromBinaryShape/containers / ubjson_optimized,ns,1.49736e+07,4.48674e+06,3.337 +FromBinaryShape/nested / bjdata,ns,96363.9,38197.9,2.523 +FromBinaryShape/nested / bson,ns,102515,42496.1,2.412 +FromBinaryShape/nested / cbor,ns,93842.1,35385.5,2.652 +FromBinaryShape/nested / msgpack,ns,92033,34888.5,2.638 +FromBinaryShape/nested / ubjson,ns,96455.9,37922.6,2.543 +FromBinaryShape/scalars / bjdata,ns,2.48048e+07,1.1476e+07,2.161 +FromBinaryShape/scalars / cbor,ns,2.56641e+07,5.68711e+06,4.513 +FromBinaryShape/scalars / msgpack,ns,2.44254e+07,5.56716e+06,4.387 +FromBinaryShape/scalars / ubjson,ns,2.49328e+07,1.15997e+07,2.149 +FromCborChunkedString/10000 chunks,ns,90902.3,61512.6,1.478 +FromMsgpack/canada,ns,1.43596e+07,2.40425e+06,5.973 +FromMsgpack/citm_catalog,ns,9.03526e+06,1.66705e+06,5.420 +FromMsgpack/floats,ns,5.97879e+07,2.82314e+07,2.118 +FromMsgpack/jeopardy,ns,1.14023e+09,1.1207e+08,10.174 +FromMsgpack/signed_ints,ns,6.30943e+07,3.27435e+07,1.927 +FromMsgpack/small_signed_ints,ns,6.34225e+07,3.52538e+07,1.799 +FromMsgpack/twitter,ns,9.99383e+06,1.01241e+06,9.871 +FromMsgpack/unsigned_ints,ns,5.61151e+07,2.82024e+07,1.990 +"GetArray>",ns,2242.43,641.094,3.498 +GetArray>,ns,8157.44,1172.81,6.955 +GetArray>,ns,58833.4,41553,1.416 +GetArray>,ns,6725.67,670.816,10.026 +GetMap/citm_catalog,ns,3.44193e+06,2.43771e+06,1.412 +GetVectorDouble/floats,ns,6.7017e+06,650766,10.298 +GetVectorInt/signed_ints,ns,8.06579e+06,3.40643e+06,2.368 +Iterate/canada,ns,873618,445143,1.963 +Iterate/citm_catalog,ns,301801,157823,1.912 +Iterate/twitter,ns,87345,58936.4,1.482 +JsonPointerAt/citm_catalog,ns,1.85369e+06,1.1599e+06,1.598 +JsonPointerAt/twitter,ns,791487,599585,1.320 +JsonPointerContains/citm_catalog,ns,2.73824e+06,1.25465e+06,2.182 +JsonPointerContains/twitter,ns,1.32403e+06,620312,2.134 +JsonPointerParse/citm_catalog,ns,5.72778e+06,2.21453e+06,2.586 +JsonPointerParse/twitter,ns,2.4672e+06,1.00864e+06,2.446 +JsonPointerToString/citm_catalog,ns,6.65484e+06,1.89788e+06,3.506 +JsonPointerToString/twitter,ns,2.13903e+06,811916,2.635 +ParseFILE/canada,ns,5.29148e+07,6.01689e+06,8.794 +ParseFILE/citm_catalog,ns,3.49593e+07,2.34075e+06,14.935 +ParseFILE/twitter,ns,1.38263e+07,1.34963e+06,10.245 +ParseFile/canada,ns,1.76922e+07,6.22534e+06,2.842 +ParseFile/citm_catalog,ns,7.85962e+06,2.47244e+06,3.179 +ParseFile/floats,ns,1.29413e+08,4.83839e+07,2.675 +ParseFile/jeopardy,ns,3.30328e+08,1.56161e+08,2.115 +ParseFile/signed_ints,ns,1.27675e+08,4.65862e+07,2.741 +ParseFile/small_signed_ints,ns,6.44651e+07,3.33577e+07,1.933 +ParseFile/twitter,ns,3.39729e+06,1.37932e+06,2.463 +ParseFile/unsigned_ints,ns,1.23326e+08,4.73146e+07,2.607 +ParseIndented/canada / 4,ns,3.41603e+07,4.60976e+06,7.410 +ParseIndented/citm_catalog / 4,ns,7.45491e+06,1.45798e+06,5.113 +ParseIndented/jeopardy / 4,ns,3.38801e+08,1.14349e+08,2.963 +ParseIndented/twitter / 4,ns,3.61322e+06,975391,3.704 +ParseStreamValues/ndjson,ns,7.07974e+06,3.7154e+06,1.906 +ParseStreamValues/numbers,ns,1.92884e+06,388042,4.971 +ParseString/canada,ns,1.52389e+07,3.73427e+06,4.081 +ParseString/citm_catalog,ns,7.40128e+06,1.44821e+06,5.111 +ParseString/floats,ns,1.19856e+08,2.49654e+07,4.801 +ParseString/jeopardy,ns,3.03449e+08,1.13053e+08,2.684 +ParseString/signed_ints,ns,1.21175e+08,2.86805e+07,4.225 +ParseString/small_signed_ints,ns,6.07636e+07,1.77037e+07,3.432 +ParseString/twitter,ns,3.21074e+06,920551,3.488 +ParseString/unsigned_ints,ns,1.20011e+08,2.85056e+07,4.210 +ParseStringOrdered/canada,ns,1.52544e+07,3.77964e+06,4.036 +ParseStringOrdered/citm_catalog,ns,1.09927e+07,1.34339e+06,8.183 +ParseStringOrdered/jeopardy,ns,3.60435e+08,9.81296e+07,3.673 +ParseStringOrdered/twitter,ns,4.41151e+06,803859,5.488 +Patch/canada,ns,1.01249e+07,3.41425e+06,2.965 +Patch/citm_catalog,ns,2.54415e+06,1.65413e+06,1.538 +Patch/twitter,ns,1.4932e+06,870217,1.716 +SaxParse/canada,ns,1.28611e+07,2.49889e+06,5.147 +SaxParse/citm_catalog,ns,6.43798e+06,655372,9.823 +SaxParse/twitter,ns,2.48859e+06,334038,7.450 +ToCbor/canada,ns,1.39101e+06,554952,2.507 +ToCbor/citm_catalog,ns,1.0334e+06,260397,3.969 +ToCbor/floats,ns,8.93763e+06,1.84589e+06,4.842 +ToCbor/jeopardy,ns,7.14785e+07,2.10551e+07,3.395 +ToCbor/signed_ints,ns,1.13863e+07,2.74211e+06,4.152 +ToCbor/small_signed_ints,ns,1.02822e+07,2.37622e+06,4.327 +ToCbor/twitter,ns,636979,144369,4.412 +ToCbor/unsigned_ints,ns,8.04576e+06,2.74066e+06,2.936 +ToJsonStrings/copy,ns,5.85988e+06,5.60056e+06,1.046 +ToJsonStrings/move,ns,5.92335e+06,3.04643e+06,1.944 +Unflatten/canada,ns,4.17811e+07,1.08132e+07,3.864 +Unflatten/citm_catalog,ns,9.80315e+06,3.53672e+06,2.772 +Unflatten/twitter,ns,4.56968e+06,2.16566e+06,2.110 diff --git a/docs/mkdocs/scripts/figures/data/perf_timeline.csv b/docs/mkdocs/scripts/figures/data/perf_timeline.csv index 36506c26f..ca4c7f3dc 100644 --- a/docs/mkdocs/scripts/figures/data/perf_timeline.csv +++ b/docs/mkdocs/scripts/figures/data/perf_timeline.csv @@ -351,4 +351,11 @@ index,commit,date,pr,subject,parse_twitter,parse_citm,parse_canada,parse_citm_co 349,b18b6fc7e6,2026-11-02,6013,Build the parser's syntax error prefix with one concat() (#6013),1370.175,2435.337,6098.834,2320.728,1726.256,472.914,210.817,289.786,2292.841,419.186,1306.593,139.277,1481.709,1714.543,177.065,366.270,971.330 350,07876e2292,2026-11-02,6015,json_view: a value that is not found has no bytes in its exception context (#6015),1361.297,2435.980,6080.718,2305.853,1707.733,474.621,210.382,291.568,2337.276,424.783,1329.556,139.590,1450.506,1690.804,178.472,366.370,977.807 351,baba5db36f,2026-11-02,6016,"Fix the MSVC and GCC builds of develop (C4127, -Weffc++) (#6016)",1381.280,2440.908,6116.068,2303.611,1713.472,476.121,210.492,290.105,2319.878,420.598,1318.037,139.554,1471.388,1729.097,177.078,369.621,959.145 -352,candidate,,,develop + open pull requests,1392.967,2469.204,6110.380,2348.760,1730.819,474.089,212.339,290.760,2284.428,420.179,1320.938,137.755,1441.341,1697.486,176.758,364.547,955.117 +352,57b898ef99,2026-11-03,5998,Replace a multibyte decimal point in dump() of a long double (#5998),1376.416,2456.476,6107.073,2325.534,1714.240,471.800,213.484,290.901,2288.426,420.062,1304.744,139.492,1441.231,1696.537,176.981,363.955,944.685 +353,efc437ef6e,2026-11-04,6002,UBJSON/BJData/MessagePack reader: reject a container count equal to SIZE_MAX (#6002),1376.138,2441.279,6136.755,2331.556,1708.185,467.554,210.231,291.606,2314.834,415.023,1321.171,138.603,1456.238,1718.533,176.858,366.713,938.783 +354,42825fba07,2026-11-04,6020,Binary writers: zero only a window ahead of the vector sink's position (#6020),1391.971,2460.961,6101.484,2312.584,1736.846,484.624,211.385,289.579,2309.943,416.103,1316.307,138.308,1464.425,1715.552,179.565,367.624,969.541 +355,1da8735154,2026-11-04,6023,Fix leak and crash when an allocation throws during parsing (#6023),1358.000,2456.832,6148.140,2333.761,1752.168,487.998,213.374,290.735,2324.377,420.402,1316.165,139.748,1460.000,1714.216,179.958,367.953,970.615 +356,e48800f09d,2026-11-04,6001,Binary reader and writer: remove checks that invariants make dead (#6001),1371.292,2434.395,6104.099,2313.769,1711.288,483.297,211.214,288.130,2308.992,416.639,1300.966,138.719,1455.595,1695.539,180.445,370.313,962.574 +357,951271127b,2026-11-07,6028,Binary readers: append strings straight from contiguous input (#6028),1381.807,2431.713,6099.235,2311.519,1694.104,464.615,207.900,288.438,2322.463,418.952,1227.851,138.811,1468.723,1706.816,177.249,369.912,975.798 +358,18138227dc,2026-11-07,6030,Scan the buffer of a FILE in bulk with glibc and the Apple C library (#6030),1379.500,2439.343,6147.771,2308.199,1689.427,482.217,213.967,290.466,2309.747,420.209,1239.525,139.367,1443.438,1731.583,180.401,364.380,975.476 +359,candidate,,,develop + open pull requests,1230.726,2155.896,5188.718,2038.886,1713.280,234.359,212.584,289.591,2313.669,425.788,1234.309,137.017,1444.999,1699.919,179.250,367.586,954.772 diff --git a/docs/mkdocs/scripts/figures/data/perf_usecases_mac.json b/docs/mkdocs/scripts/figures/data/perf_usecases_mac.json index a937d3455..5c82cc46b 100644 --- a/docs/mkdocs/scripts/figures/data/perf_usecases_mac.json +++ b/docs/mkdocs/scripts/figures/data/perf_usecases_mac.json @@ -4,35 +4,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 169.6, + "us": 172.0, "level": "full" }, "best_any": { "variant": "accept", - "us": 169.6, + "us": 172.0, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 176.5, + "us": 178.3, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 176.5, + "us": 178.3, "level": "full" }, "variants": { "accept": { - "us": 169.6, + "us": 172.0, "level": "full" }, "read (reused)": { - "us": 176.5, + "us": 178.3, "level": "full" }, "parse": { - "us": 183.0, + "us": 182.9, "level": "full" } } @@ -40,67 +40,67 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 450.9, + "us": 234.1, "level": "full" }, "best_any": { "variant": "accept", - "us": 450.9, + "us": 234.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 450.9, + "us": 234.1, "level": "full" }, "parse": { - "us": 1357.3, + "us": 1205.8, "level": "full" } } }, "yyjson": { "best": { - "variant": "read", - "us": 181.3, + "variant": "insitu (copy)", + "us": 183.2, "level": "full" }, "best_any": { - "variant": "read", - "us": 181.3, + "variant": "insitu (copy)", + "us": 183.2, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 183.1, + "us": 184.4, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 183.1, + "us": 184.4, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 172.5, - "level": "full" - }, - "read": { - "us": 181.3, - "level": "full" - }, - "read (reused allocator)": { - "us": 183.1, + "us": 169.1, "level": "full" }, "insitu (copy)": { - "us": 183.6, + "us": 183.2, + "level": "full" + }, + "read (reused allocator)": { + "us": 184.4, + "level": "full" + }, + "read": { + "us": 185.2, "level": "full" }, "read (raw numbers)": { - "us": 192.5, + "us": 196.6, "level": "full" } } @@ -108,31 +108,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 211.9, + "us": 215.1, "level": "full" }, "best_any": { "variant": "DOM", - "us": 211.9, + "us": 215.1, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 196.2, + "us": 195.0, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 196.2, + "us": 195.0, "level": "full" }, "variants": { "DOM (reused)": { - "us": 196.2, + "us": 195.0, "level": "full" }, "DOM": { - "us": 211.9, + "us": 215.1, "level": "full" } } @@ -141,14 +141,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 381.5, + "us": 381.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 381.5, + "us": 381.8, "level": "no UTF-8" } } @@ -156,35 +156,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 331.3, + "us": 333.2, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 331.3, + "us": 333.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 331.3, + "us": 333.2, + "level": "full" + }, + "generic (double, strict)": { + "us": 913.2, "level": "full" }, "generic (double)": { - "us": 912.3, + "us": 915.8, "level": "partial" }, - "generic (double, strict)": { - "us": 913.8, - "level": "full" - }, "generic": { - "us": 1271.7, + "us": 1275.5, "level": "partial" }, "generic (strict)": { - "us": 1274.5, + "us": 1285.5, "level": "full" } } @@ -192,143 +192,143 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 534.8, + "us": 539.5, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 534.8, + "us": 539.5, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 533.2, + "us": 542.6, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 533.2, + "us": 542.6, "level": "full" }, "variants": { - "SAX (reused)": { - "us": 533.2, + "SAX (numbers: none)": { + "us": 539.5, "level": "full" }, - "SAX (numbers: none)": { - "us": 534.8, + "SAX (reused)": { + "us": 542.6, "level": "full" }, "SAX": { - "us": 535.0, + "us": 543.8, "level": "full" }, "parse (numbers: none)": { - "us": 859.9, + "us": 867.9, "level": "full" }, "parser (reused)": { - "us": 868.8, + "us": 877.8, "level": "full" }, "parse": { - "us": 870.5, + "us": 881.2, "level": "full" } } }, "RapidJSON": { "best": { - "variant": "SAX (default precision)", - "us": 1311.2, + "variant": "insitu (copy)", + "us": 1317.7, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 694.3, + "us": 706.2, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1348.2, + "us": 1374.7, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1189.3, + "us": 1194.4, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 685.9, + "us": 689.3, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 694.3, + "us": 706.2, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 713.3, + "us": 718.7, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 721.8, + "us": 725.8, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 1144.1, + "us": 1155.0, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1162.4, + "us": 1176.8, "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 1171.8, + "us": 1180.8, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1189.3, + "us": 1194.4, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1198.1, + "us": 1209.3, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1307.4, - "level": "full" - }, - "SAX (default precision)": { - "us": 1311.2, + "us": 1310.8, "level": "full" }, "insitu (copy)": { - "us": 1320.5, + "us": 1317.7, + "level": "full" + }, + "SAX (default precision)": { + "us": 1322.6, "level": "full" }, "SAX": { - "us": 1323.5, - "level": "full" - }, - "SAX (raw numbers)": { - "us": 1335.6, + "us": 1330.0, "level": "full" }, "SAX (string stream, default precision)": { - "us": 1347.0, - "level": "full" - }, - "Document (reused allocator)": { - "us": 1348.2, + "us": 1341.2, "level": "full" }, "SAX (string stream)": { - "us": 1359.5, + "us": 1355.7, + "level": "full" + }, + "SAX (raw numbers)": { + "us": 1362.9, + "level": "full" + }, + "Document (reused allocator)": { + "us": 1374.7, "level": "full" }, "Document": { - "us": 1360.1, + "us": 1381.3, "level": "full" } } @@ -361,30 +361,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 325.7, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 325.7, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 325.7, - "level": "full" - }, - "IgnoredAny": { - "us": 418.6, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "tape (copy)", @@ -420,41 +396,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 325.7, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 325.7, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 325.7, + "level": "full" + }, + "IgnoredAny": { + "us": 418.6, + "level": "full" + } + } } }, "citm_catalog": { "nlohmann json_document": { "best": { "variant": "accept", - "us": 312.9, + "us": 312.7, "level": "full" }, "best_any": { "variant": "accept", - "us": 312.9, + "us": 312.7, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 359.4, + "us": 359.1, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 359.4, + "us": 359.1, "level": "full" }, "variants": { "accept": { - "us": 312.9, + "us": 312.7, "level": "full" }, "read (reused)": { - "us": 359.4, + "us": 359.1, "level": "full" }, "parse": { - "us": 360.3, + "us": 360.5, "level": "full" } } @@ -462,67 +462,67 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 888.0, + "us": 455.9, "level": "full" }, "best_any": { "variant": "accept", - "us": 888.0, + "us": 455.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 888.0, + "us": 455.9, "level": "full" }, "parse": { - "us": 2406.5, + "us": 2112.3, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 476.8, + "variant": "read", + "us": 476.2, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 476.8, + "variant": "read", + "us": 476.2, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 480.0, + "us": 484.7, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 480.0, + "us": 484.7, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 450.8, - "level": "full" - }, - "insitu (copy)": { - "us": 476.8, - "level": "full" - }, - "read (reused allocator)": { - "us": 480.0, + "us": 447.3, "level": "full" }, "read": { - "us": 481.1, + "us": 476.2, + "level": "full" + }, + "insitu (copy)": { + "us": 477.5, + "level": "full" + }, + "read (reused allocator)": { + "us": 484.7, "level": "full" }, "read (raw numbers)": { - "us": 529.1, + "us": 525.5, "level": "full" } } @@ -530,31 +530,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 451.8, + "us": 460.5, "level": "full" }, "best_any": { "variant": "DOM", - "us": 451.8, + "us": 460.5, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 449.3, + "us": 454.6, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 449.3, + "us": 454.6, "level": "full" }, "variants": { "DOM (reused)": { - "us": 449.3, + "us": 454.6, "level": "full" }, "DOM": { - "us": 451.8, + "us": 460.5, "level": "full" } } @@ -578,83 +578,83 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 862.2, + "us": 854.5, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 862.2, + "us": 854.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 862.2, - "level": "full" - }, - "generic (double, strict)": { - "us": 1917.4, + "us": 854.5, "level": "full" }, "generic (double)": { - "us": 1921.0, + "us": 1921.8, "level": "partial" }, - "generic (strict)": { - "us": 2713.3, + "generic (double, strict)": { + "us": 1931.2, "level": "full" }, "generic": { - "us": 2727.9, + "us": 2702.6, "level": "partial" + }, + "generic (strict)": { + "us": 2706.2, + "level": "full" } } }, "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 994.5, + "us": 989.8, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 994.5, + "us": 989.8, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 1019.7, + "us": 1020.1, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 1019.7, + "us": 1020.1, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 994.5, - "level": "full" - }, - "SAX (reused)": { - "us": 1019.7, + "us": 989.8, "level": "full" }, "SAX": { - "us": 1020.7, + "us": 1019.3, + "level": "full" + }, + "SAX (reused)": { + "us": 1020.1, "level": "full" }, "parse (numbers: none)": { - "us": 1462.9, - "level": "full" - }, - "parse": { - "us": 1480.0, + "us": 1467.9, "level": "full" }, "parser (reused)": { - "us": 1480.0, + "us": 1486.9, + "level": "full" + }, + "parse": { + "us": 1489.7, "level": "full" } } @@ -662,95 +662,95 @@ "RapidJSON": { "best": { "variant": "SAX (string stream, default precision)", - "us": 1396.9, + "us": 1391.2, "level": "full" }, "best_any": { "variant": "SAX (string stream, default precision) (no encoding check)", - "us": 1031.8, + "us": 1033.2, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1689.7, + "us": 1698.0, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1621.8, + "us": 1611.8, "level": "no UTF-8" }, "variants": { "SAX (string stream, default precision) (no encoding check)": { - "us": 1031.8, + "us": 1033.2, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 1122.7, + "us": 1114.8, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 1127.3, + "us": 1128.1, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1140.9, + "us": 1162.2, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 1358.3, + "us": 1357.1, "level": "no UTF-8" }, "SAX (string stream, default precision)": { - "us": 1396.9, + "us": 1391.2, "level": "full" }, "SAX (string stream)": { - "us": 1444.8, + "us": 1445.5, "level": "full" }, "SAX (default precision)": { - "us": 1445.3, - "level": "full" - }, - "insitu (copy untimed)": { - "us": 1545.6, + "us": 1447.1, "level": "full" }, "SAX (no encoding check)": { - "us": 1549.8, + "us": 1547.5, "level": "no UTF-8" }, - "insitu (copy)": { - "us": 1569.7, + "insitu (copy untimed)": { + "us": 1549.6, "level": "full" }, - "SAX (raw numbers) (no encoding check)": { - "us": 1605.0, + "insitu (copy)": { + "us": 1583.6, + "level": "full" + }, + "Document (reused allocator) (no encoding check)": { + "us": 1611.8, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1616.2, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 1621.8, + "us": 1614.8, "level": "no UTF-8" }, "SAX": { - "us": 1639.2, + "us": 1658.8, "level": "full" }, + "SAX (raw numbers) (no encoding check)": { + "us": 1659.9, + "level": "no UTF-8" + }, "Document (reused allocator)": { - "us": 1689.7, - "level": "full" - }, - "SAX (raw numbers)": { - "us": 1700.8, + "us": 1698.0, "level": "full" }, "Document": { - "us": 1705.5, + "us": 1703.9, + "level": "full" + }, + "SAX (raw numbers)": { + "us": 1724.8, "level": "full" } } @@ -783,30 +783,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 680.8, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 680.8, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 680.8, - "level": "full" - }, - "IgnoredAny": { - "us": 798.3, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "tape (copy)", @@ -842,41 +818,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 680.8, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 680.8, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 680.8, + "level": "full" + }, + "IgnoredAny": { + "us": 798.3, + "level": "full" + } + } } }, "canada": { "nlohmann json_document": { "best": { "variant": "accept", - "us": 885.8, + "us": 904.8, "level": "full" }, "best_any": { "variant": "accept", - "us": 885.8, + "us": 904.8, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 955.0, + "us": 942.2, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 955.0, + "us": 942.2, "level": "full" }, "variants": { "accept": { - "us": 885.8, + "us": 904.8, "level": "full" }, "read (reused)": { - "us": 955.0, + "us": 942.2, "level": "full" }, "parse": { - "us": 956.1, + "us": 943.0, "level": "full" } } @@ -884,23 +884,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 2405.4, + "us": 1253.0, "level": "full" }, "best_any": { "variant": "accept", - "us": 2405.4, + "us": 1253.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 2405.4, + "us": 1253.0, "level": "full" }, "parse": { - "us": 6000.5, + "us": 5078.3, "level": "full" } } @@ -908,43 +908,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 1492.5, + "us": 1487.2, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 1492.5, + "us": 1487.2, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 1507.7, + "us": 1509.4, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1507.7, + "us": 1509.4, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 1457.0, + "us": 1452.3, "level": "full" }, "insitu (copy)": { - "us": 1492.5, + "us": 1487.2, "level": "full" }, "read": { - "us": 1500.2, + "us": 1496.8, "level": "full" }, "read (reused allocator)": { - "us": 1507.7, + "us": 1509.4, "level": "full" }, "read (raw numbers)": { - "us": 1746.0, + "us": 1724.2, "level": "full" } } @@ -952,31 +952,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 1888.5, + "us": 1889.9, "level": "full" }, "best_any": { "variant": "DOM", - "us": 1888.5, + "us": 1889.9, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 1883.4, + "us": 1888.9, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 1883.4, + "us": 1888.9, "level": "full" }, "variants": { "DOM (reused)": { - "us": 1883.4, + "us": 1888.9, "level": "full" }, "DOM": { - "us": 1888.5, + "us": 1889.9, "level": "full" } } @@ -985,14 +985,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 2577.6, + "us": 2578.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 2577.6, + "us": 2578.8, "level": "no UTF-8" } } @@ -1000,35 +1000,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 1325.9, + "us": 1302.2, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 1325.9, + "us": 1302.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 1325.9, - "level": "full" - }, - "generic (double, strict)": { - "us": 5910.9, + "us": 1302.2, "level": "full" }, "generic (double)": { - "us": 6022.0, + "us": 5870.4, "level": "partial" }, + "generic (double, strict)": { + "us": 5935.6, + "level": "full" + }, "generic (strict)": { - "us": 9316.7, + "us": 9296.8, "level": "full" }, "generic": { - "us": 9317.5, + "us": 9340.5, "level": "partial" } } @@ -1036,47 +1036,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 1466.8, + "us": 1449.2, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 1466.8, + "us": 1449.2, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 3098.2, + "us": 3062.1, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 3098.2, + "us": 3062.1, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 1466.8, + "us": 1449.2, "level": "full" }, "parse (numbers: none)": { - "us": 2095.5, + "us": 2078.1, "level": "full" }, "SAX (reused)": { - "us": 3098.2, + "us": 3062.1, "level": "full" }, "SAX": { - "us": 3109.1, + "us": 3067.0, "level": "full" }, "parser (reused)": { - "us": 3631.0, + "us": 3621.6, "level": "full" }, "parse": { - "us": 3644.0, + "us": 3645.9, "level": "full" } } @@ -1084,96 +1084,96 @@ "RapidJSON": { "best": { "variant": "SAX (string stream, default precision)", - "us": 1982.0, + "us": 1971.0, "level": "full" }, "best_any": { "variant": "SAX (string stream, default precision)", - "us": 1982.0, + "us": 1971.0, "level": "full" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 7345.7, + "us": 7311.7, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator)", - "us": 7345.7, + "us": 7311.7, "level": "full" }, "variants": { "SAX (string stream, default precision)": { - "us": 1982.0, + "us": 1971.0, "level": "full" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 1999.2, + "us": 1984.2, + "level": "no UTF-8" + }, + "SAX (default precision) (no encoding check)": { + "us": 2538.5, "level": "no UTF-8" }, "SAX (default precision)": { - "us": 2484.0, + "us": 2625.3, "level": "full" }, - "SAX (default precision) (no encoding check)": { - "us": 2565.0, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 6261.5, - "level": "no UTF-8" - }, "SAX (string stream)": { - "us": 6280.2, + "us": 6279.2, "level": "full" }, - "insitu (copy untimed)": { - "us": 6735.5, - "level": "full" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 6821.7, + "SAX (string stream) (no encoding check)": { + "us": 6311.3, "level": "no UTF-8" }, - "insitu (copy)": { - "us": 6857.6, + "insitu (copy untimed) (no encoding check)": { + "us": 6754.8, + "level": "no UTF-8" + }, + "insitu (copy untimed)": { + "us": 6764.6, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 6858.0, + "us": 6807.8, "level": "no UTF-8" }, - "SAX (no encoding check)": { - "us": 6980.3, - "level": "no UTF-8" + "insitu (copy)": { + "us": 6892.5, + "level": "full" }, "SAX": { - "us": 6996.5, + "us": 6963.1, "level": "full" }, + "SAX (no encoding check)": { + "us": 6968.1, + "level": "no UTF-8" + }, "Document (reused allocator)": { - "us": 7345.7, - "level": "full" - }, - "Document": { - "us": 7376.6, + "us": 7311.7, "level": "full" }, "Document (no encoding check)": { - "us": 7399.8, + "us": 7337.0, "level": "no UTF-8" }, + "Document": { + "us": 7351.8, + "level": "full" + }, "Document (reused allocator) (no encoding check)": { - "us": 7446.8, + "us": 7380.8, + "level": "no UTF-8" + }, + "SAX (raw numbers) (no encoding check)": { + "us": 9472.8, "level": "no UTF-8" }, "SAX (raw numbers)": { - "us": 9451.3, + "us": 9522.1, "level": "full" - }, - "SAX (raw numbers) (no encoding check)": { - "us": 9522.8, - "level": "no UTF-8" } } }, @@ -1205,30 +1205,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 1939.1, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 1939.1, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 1939.1, - "level": "full" - }, - "IgnoredAny": { - "us": 2086.8, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "tape (copy)", @@ -1264,41 +1240,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 1939.1, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 1939.1, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 1939.1, + "level": "full" + }, + "IgnoredAny": { + "us": 2086.8, + "level": "full" + } + } } }, "jeopardy": { "nlohmann json_document": { "best": { "variant": "accept", - "us": 20873.2, + "us": 20926.3, "level": "full" }, "best_any": { "variant": "accept", - "us": 20873.2, + "us": 20926.3, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 22491.8, + "us": 22589.5, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 22491.8, + "us": 22589.5, "level": "full" }, "variants": { "accept": { - "us": 20873.2, + "us": 20926.3, "level": "full" }, "read (reused)": { - "us": 22491.8, + "us": 22589.5, "level": "full" }, "parse": { - "us": 23091.8, + "us": 23205.4, "level": "full" } } @@ -1306,67 +1306,67 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 55286.0, + "us": 27563.4, "level": "full" }, "best_any": { "variant": "accept", - "us": 55286.0, + "us": 27563.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 55286.0, + "us": 27563.4, "level": "full" }, "parse": { - "us": 166730.9, + "us": 149627.2, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 31498.8, + "variant": "read", + "us": 30921.8, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 31498.8, + "variant": "read", + "us": 30921.8, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 31543.8, + "us": 30936.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 31543.8, + "us": 30936.3, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 30239.6, - "level": "full" - }, - "insitu (copy)": { - "us": 31498.8, - "level": "full" - }, - "read (reused allocator)": { - "us": 31543.8, - "level": "full" - }, - "read (raw numbers)": { - "us": 31545.0, + "us": 29796.4, "level": "full" }, "read": { - "us": 31614.2, + "us": 30921.8, + "level": "full" + }, + "read (reused allocator)": { + "us": 30936.3, + "level": "full" + }, + "insitu (copy)": { + "us": 30984.0, + "level": "full" + }, + "read (raw numbers)": { + "us": 31081.2, "level": "full" } } @@ -1374,31 +1374,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 28843.2, + "us": 28889.7, "level": "full" }, "best_any": { "variant": "DOM", - "us": 28843.2, + "us": 28889.7, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 28444.3, + "us": 28859.5, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 28444.3, + "us": 28859.5, "level": "full" }, "variants": { "DOM (reused)": { - "us": 28444.3, + "us": 28859.5, "level": "full" }, "DOM": { - "us": 28843.2, + "us": 28889.7, "level": "full" } } @@ -1407,14 +1407,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 41617.2, + "us": 40996.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 41617.2, + "us": 40996.5, "level": "no UTF-8" } } @@ -1422,35 +1422,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 45192.2, + "us": 46251.0, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 45192.2, + "us": 46251.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 45192.2, + "us": 46251.0, "level": "full" }, "generic (double)": { - "us": 89467.3, + "us": 90091.9, "level": "partial" }, "generic (double, strict)": { - "us": 89602.5, + "us": 90132.8, "level": "full" }, "generic": { - "us": 131063.1, + "us": 133300.4, "level": "partial" }, "generic (strict)": { - "us": 131198.8, + "us": 133749.5, "level": "full" } } @@ -1458,47 +1458,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 53939.3, + "us": 54480.0, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 53939.3, + "us": 54480.0, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 54415.7, + "us": 54238.3, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 54415.7, + "us": 54238.3, "level": "full" }, "variants": { + "SAX (reused)": { + "us": 54238.3, + "level": "full" + }, "SAX (numbers: none)": { - "us": 53939.3, + "us": 54480.0, "level": "full" }, "SAX": { - "us": 54192.5, - "level": "full" - }, - "SAX (reused)": { - "us": 54415.7, + "us": 54537.5, "level": "full" }, "parser (reused)": { - "us": 88553.8, - "level": "full" - }, - "parse": { - "us": 90383.7, + "us": 89137.2, "level": "full" }, "parse (numbers: none)": { - "us": 90510.6, + "us": 90504.9, + "level": "full" + }, + "parse": { + "us": 91394.0, "level": "full" } } @@ -1506,95 +1506,95 @@ "RapidJSON": { "best": { "variant": "SAX (string stream, default precision)", - "us": 134679.0, + "us": 133695.3, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 64733.5, + "us": 64731.8, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 156135.2, + "us": 156954.4, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 143701.0, + "us": 143505.8, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 63589.0, + "us": 63452.4, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 64733.5, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 71496.2, + "us": 64731.8, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 71771.5, + "us": 71059.4, + "level": "no UTF-8" + }, + "SAX (string stream) (no encoding check)": { + "us": 71655.5, "level": "no UTF-8" }, "SAX (string stream, default precision)": { - "us": 134679.0, + "us": 133695.3, "level": "full" }, "SAX (string stream)": { - "us": 134981.8, + "us": 134438.4, "level": "full" }, - "SAX (no encoding check)": { - "us": 136366.4, + "SAX (raw numbers) (no encoding check)": { + "us": 136328.5, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 136778.8, + "us": 136646.2, "level": "no UTF-8" }, - "SAX (raw numbers) (no encoding check)": { - "us": 137711.7, + "SAX (no encoding check)": { + "us": 136903.5, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 140586.2, + "us": 138550.0, "level": "full" }, "insitu (copy)": { - "us": 141376.9, + "us": 139341.2, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 143701.0, + "us": 143505.8, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 145538.5, + "us": 145901.9, "level": "no UTF-8" }, "SAX": { - "us": 154349.1, - "level": "full" - }, - "SAX (raw numbers)": { - "us": 154625.2, + "us": 154061.0, "level": "full" }, "SAX (default precision)": { - "us": 155243.8, + "us": 154526.9, + "level": "full" + }, + "SAX (raw numbers)": { + "us": 154603.9, "level": "full" }, "Document (reused allocator)": { - "us": 156135.2, + "us": 156954.4, "level": "full" }, "Document": { - "us": 157729.5, + "us": 159044.5, "level": "full" } } @@ -1627,30 +1627,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 31450.0, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 31450.0, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 31450.0, - "level": "full" - }, - "IgnoredAny": { - "us": 47199.4, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "tape (copy)", @@ -1686,6 +1662,30 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 31450.0, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 31450.0, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 31450.0, + "level": "full" + }, + "IgnoredAny": { + "us": 47199.4, + "level": "full" + } + } } }, "status": { @@ -1728,23 +1728,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 2.4, + "us": 1.1, "level": "full" }, "best_any": { "variant": "accept", - "us": 2.4, + "us": 1.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 2.4, + "us": 1.1, "level": "full" }, "parse": { - "us": 7.6, + "us": 6.6, "level": "full" } } @@ -1829,14 +1829,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1.6, + "us": 1.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1.6, + "us": 1.7, "level": "no UTF-8" } } @@ -1872,7 +1872,7 @@ "level": "partial" }, "generic (strict)": { - "us": 6.5, + "us": 6.6, "level": "full" } } @@ -1880,12 +1880,12 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 2.3, + "us": 2.4, "level": "full" }, "best_any": { "variant": "SAX", - "us": 2.3, + "us": 2.4, "level": "full" }, "best_reused": { @@ -1899,16 +1899,16 @@ "level": "full" }, "variants": { - "SAX": { + "SAX (reused)": { "us": 2.3, "level": "full" }, + "SAX": { + "us": 2.4, + "level": "full" + }, "SAX (numbers: none)": { - "us": 2.3, - "level": "full" - }, - "SAX (reused)": { - "us": 2.3, + "us": 2.4, "level": "full" }, "parser (reused)": { @@ -1928,31 +1928,31 @@ "RapidJSON": { "best": { "variant": "SAX (default precision)", - "us": 6.0, + "us": 6.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 2.6, + "us": 2.7, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 6.2, + "us": 6.4, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 5.4, + "us": 5.5, "level": "no UTF-8" }, "variants": { "insitu (copy) (no encoding check)": { - "us": 2.6, + "us": 2.7, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 2.6, + "us": 2.7, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { @@ -1972,26 +1972,18 @@ "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 5.4, + "us": 5.5, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 5.4, + "us": 5.5, "level": "no UTF-8" }, - "SAX (default precision)": { - "us": 6.0, - "level": "full" - }, "Document (no encoding check)": { "us": 6.0, "level": "no UTF-8" }, - "SAX": { - "us": 6.1, - "level": "full" - }, - "SAX (string stream)": { + "SAX (default precision)": { "us": 6.1, "level": "full" }, @@ -1999,7 +1991,11 @@ "us": 6.1, "level": "full" }, - "Document (reused allocator)": { + "SAX": { + "us": 6.2, + "level": "full" + }, + "SAX (string stream)": { "us": 6.2, "level": "full" }, @@ -2007,7 +2003,7 @@ "us": 6.3, "level": "full" }, - "insitu (copy untimed)": { + "Document (reused allocator)": { "us": 6.4, "level": "full" }, @@ -2015,8 +2011,12 @@ "us": 6.5, "level": "full" }, + "insitu (copy untimed)": { + "us": 6.5, + "level": "full" + }, "Document": { - "us": 6.7, + "us": 6.8, "level": "full" } } @@ -2049,30 +2049,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 1.4, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 1.4, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 1.4, - "level": "full" - }, - "IgnoredAny": { - "us": 1.8, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "tape (copy)", @@ -2108,41 +2084,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 1.4, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 1.4, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 1.4, + "level": "full" + }, + "IgnoredAny": { + "us": 1.8, + "level": "full" + } + } } }, "twitter_min": { "nlohmann json_document": { "best": { "variant": "accept", - "us": 149.1, + "us": 151.0, "level": "full" }, "best_any": { "variant": "accept", - "us": 149.1, + "us": 151.0, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 159.6, + "us": 157.7, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 159.6, + "us": 157.7, "level": "full" }, "variants": { "accept": { - "us": 149.1, + "us": 151.0, "level": "full" }, "read (reused)": { - "us": 159.6, + "us": 157.7, "level": "full" }, "parse": { - "us": 161.4, + "us": 164.1, "level": "full" } } @@ -2150,23 +2150,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 398.8, + "us": 185.4, "level": "full" }, "best_any": { "variant": "accept", - "us": 398.8, + "us": 185.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 398.8, + "us": 185.4, "level": "full" }, "parse": { - "us": 1321.2, + "us": 1161.4, "level": "full" } } @@ -2174,43 +2174,43 @@ "yyjson": { "best": { "variant": "read", - "us": 163.5, + "us": 158.3, "level": "full" }, "best_any": { "variant": "read", - "us": 163.5, + "us": 158.3, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 161.0, + "us": 160.1, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 161.0, + "us": 160.1, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 154.3, - "level": "full" - }, - "read (reused allocator)": { - "us": 161.0, + "us": 153.2, "level": "full" }, "read": { - "us": 163.5, + "us": 158.3, + "level": "full" + }, + "read (reused allocator)": { + "us": 160.1, "level": "full" }, "insitu (copy)": { - "us": 165.8, + "us": 162.8, "level": "full" }, "read (raw numbers)": { - "us": 172.4, + "us": 171.1, "level": "full" } } @@ -2218,31 +2218,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 186.5, + "us": 187.9, "level": "full" }, "best_any": { "variant": "DOM", - "us": 186.5, + "us": 187.9, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 168.3, + "us": 172.0, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 168.3, + "us": 172.0, "level": "full" }, "variants": { "DOM (reused)": { - "us": 168.3, + "us": 172.0, "level": "full" }, "DOM": { - "us": 186.5, + "us": 187.9, "level": "full" } } @@ -2251,14 +2251,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 257.0, + "us": 258.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 257.0, + "us": 258.7, "level": "no UTF-8" } } @@ -2266,83 +2266,83 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 272.7, + "us": 275.9, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 272.7, + "us": 275.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 272.7, + "us": 275.9, + "level": "full" + }, + "generic (double, strict)": { + "us": 822.9, "level": "full" }, "generic (double)": { - "us": 825.7, + "us": 830.6, "level": "partial" }, - "generic (double, strict)": { - "us": 830.4, - "level": "full" - }, - "generic (strict)": { - "us": 1166.5, - "level": "full" - }, "generic": { - "us": 1186.7, + "us": 1162.5, "level": "partial" + }, + "generic (strict)": { + "us": 1177.5, + "level": "full" } } }, "Boost.JSON": { "best": { "variant": "SAX", - "us": 455.1, + "us": 464.0, "level": "full" }, "best_any": { "variant": "SAX", - "us": 455.1, + "us": 464.0, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 455.7, + "us": 460.7, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 455.7, + "us": 460.7, "level": "full" }, "variants": { - "SAX": { - "us": 455.1, + "SAX (reused)": { + "us": 460.7, "level": "full" }, - "SAX (reused)": { - "us": 455.7, + "SAX": { + "us": 464.0, "level": "full" }, "SAX (numbers: none)": { - "us": 461.0, + "us": 465.6, "level": "full" }, "parse (numbers: none)": { - "us": 776.7, + "us": 778.6, "level": "full" }, "parser (reused)": { - "us": 779.3, + "us": 779.8, "level": "full" }, "parse": { - "us": 779.8, + "us": 781.4, "level": "full" } } @@ -2350,95 +2350,95 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1082.7, + "us": 1091.0, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 480.8, + "us": 474.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1153.4, + "us": 1184.7, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1012.0, + "us": 1029.5, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 474.2, + "us": 473.8, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 480.8, + "us": 474.5, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 538.5, + "us": 542.9, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 548.1, + "us": 559.9, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 945.8, + "us": 964.6, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 967.8, + "us": 986.4, "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 980.1, + "us": 1006.3, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1012.0, + "us": 1029.5, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1025.5, + "us": 1033.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1077.1, + "us": 1083.0, "level": "full" }, "insitu (copy)": { - "us": 1082.7, - "level": "full" - }, - "SAX (string stream, default precision)": { - "us": 1106.9, - "level": "full" - }, - "SAX (default precision)": { - "us": 1108.3, + "us": 1091.0, "level": "full" }, "SAX (string stream)": { - "us": 1115.1, + "us": 1119.6, + "level": "full" + }, + "SAX (default precision)": { + "us": 1122.7, + "level": "full" + }, + "SAX (string stream, default precision)": { + "us": 1124.9, "level": "full" }, "SAX": { - "us": 1133.3, + "us": 1133.6, "level": "full" }, "SAX (raw numbers)": { - "us": 1148.4, + "us": 1155.3, "level": "full" }, "Document (reused allocator)": { - "us": 1153.4, + "us": 1184.7, "level": "full" }, "Document": { - "us": 1162.1, + "us": 1193.5, "level": "full" } } @@ -2471,30 +2471,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 235.7, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 235.7, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 235.7, - "level": "full" - }, - "IgnoredAny": { - "us": 315.3, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "tape (copy)", @@ -2530,41 +2506,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 235.7, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 235.7, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 235.7, + "level": "full" + }, + "IgnoredAny": { + "us": 315.3, + "level": "full" + } + } } }, "citm_catalog_min": { "nlohmann json_document": { "best": { "variant": "accept", - "us": 193.7, + "us": 195.0, "level": "full" }, "best_any": { "variant": "accept", - "us": 193.7, + "us": 195.0, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 243.8, + "us": 243.6, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 243.8, + "us": 243.6, "level": "full" }, "variants": { "accept": { - "us": 193.7, + "us": 195.0, "level": "full" }, "read (reused)": { - "us": 243.8, + "us": 243.6, "level": "full" }, "parse": { - "us": 244.2, + "us": 246.0, "level": "full" } } @@ -2572,23 +2572,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 678.0, + "us": 279.3, "level": "full" }, "best_any": { "variant": "accept", - "us": 678.0, + "us": 279.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 678.0, + "us": 279.3, "level": "full" }, "parse": { - "us": 2314.4, + "us": 1975.0, "level": "full" } } @@ -2596,43 +2596,43 @@ "yyjson": { "best": { "variant": "read", - "us": 284.2, + "us": 285.1, "level": "full" }, "best_any": { "variant": "read", - "us": 284.2, + "us": 285.1, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 286.7, + "us": 284.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 286.7, + "us": 284.3, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 274.6, - "level": "full" - }, - "read": { - "us": 284.2, - "level": "full" - }, - "insitu (copy)": { - "us": 284.6, + "us": 277.2, "level": "full" }, "read (reused allocator)": { - "us": 286.7, + "us": 284.3, + "level": "full" + }, + "read": { + "us": 285.1, + "level": "full" + }, + "insitu (copy)": { + "us": 285.2, "level": "full" }, "read (raw numbers)": { - "us": 347.5, + "us": 340.6, "level": "full" } } @@ -2640,31 +2640,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 332.8, + "us": 325.8, "level": "full" }, "best_any": { "variant": "DOM", - "us": 332.8, + "us": 325.8, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 325.6, + "us": 323.7, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 325.6, + "us": 323.7, "level": "full" }, "variants": { "DOM (reused)": { - "us": 325.6, + "us": 323.7, "level": "full" }, "DOM": { - "us": 332.8, + "us": 325.8, "level": "full" } } @@ -2673,14 +2673,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 552.5, + "us": 550.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 552.5, + "us": 550.5, "level": "no UTF-8" } } @@ -2688,83 +2688,83 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 470.9, + "us": 469.6, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 470.9, + "us": 469.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 470.9, + "us": 469.6, "level": "full" }, "generic (double)": { - "us": 1580.3, + "us": 1565.8, "level": "partial" }, "generic (double, strict)": { - "us": 1592.4, + "us": 1583.1, + "level": "full" + }, + "generic (strict)": { + "us": 2338.3, "level": "full" }, "generic": { - "us": 2359.8, + "us": 2366.3, "level": "partial" - }, - "generic (strict)": { - "us": 2369.5, - "level": "full" } } }, "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 438.8, + "us": 442.9, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 438.8, + "us": 442.9, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 464.0, + "us": 457.7, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 464.0, + "us": 457.7, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 438.8, - "level": "full" - }, - "SAX": { - "us": 457.3, + "us": 442.9, "level": "full" }, "SAX (reused)": { + "us": 457.7, + "level": "full" + }, + "SAX": { "us": 464.0, "level": "full" }, "parse (numbers: none)": { - "us": 927.2, - "level": "full" - }, - "parser (reused)": { - "us": 945.5, + "us": 931.8, "level": "full" }, "parse": { - "us": 952.3, + "us": 946.5, + "level": "full" + }, + "parser (reused)": { + "us": 956.3, "level": "full" } } @@ -2772,95 +2772,95 @@ "RapidJSON": { "best": { "variant": "SAX (default precision)", - "us": 936.3, + "us": 922.6, "level": "full" }, "best_any": { "variant": "SAX (string stream, default precision) (no encoding check)", - "us": 653.3, + "us": 655.7, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1238.4, + "us": 1246.5, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1151.2, + "us": 1157.7, "level": "no UTF-8" }, "variants": { "SAX (string stream, default precision) (no encoding check)": { - "us": 653.3, + "us": 655.7, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 744.5, + "us": 756.0, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 754.5, + "us": 771.2, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 822.4, + "us": 821.3, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 869.2, + "us": 864.0, "level": "no UTF-8" }, "SAX (default precision)": { - "us": 936.3, + "us": 922.6, "level": "full" }, "SAX (string stream, default precision)": { - "us": 970.2, + "us": 967.6, + "level": "full" + }, + "SAX (string stream)": { + "us": 1048.5, "level": "full" }, "SAX (no encoding check)": { - "us": 1022.5, + "us": 1059.1, "level": "no UTF-8" }, - "SAX (string stream)": { - "us": 1038.3, + "insitu (copy untimed)": { + "us": 1113.6, "level": "full" }, "insitu (copy)": { - "us": 1113.0, - "level": "full" - }, - "insitu (copy untimed)": { - "us": 1114.2, + "us": 1128.7, "level": "full" }, "SAX": { - "us": 1126.3, + "us": 1134.8, "level": "full" }, - "Document (reused allocator) (no encoding check)": { - "us": 1151.2, + "Document (no encoding check)": { + "us": 1153.8, "level": "no UTF-8" }, - "Document (no encoding check)": { - "us": 1152.5, + "Document (reused allocator) (no encoding check)": { + "us": 1157.7, "level": "no UTF-8" }, "Document": { - "us": 1235.8, + "us": 1218.5, "level": "full" }, "Document (reused allocator)": { - "us": 1238.4, + "us": 1246.5, "level": "full" }, "SAX (raw numbers) (no encoding check)": { - "us": 1281.6, + "us": 1358.8, "level": "no UTF-8" }, "SAX (raw numbers)": { - "us": 1337.9, + "us": 1428.7, "level": "full" } } @@ -2893,30 +2893,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 380.5, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 380.5, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 380.5, - "level": "full" - }, - "IgnoredAny": { - "us": 570.4, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "tape (copy)", @@ -2952,6 +2928,30 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 380.5, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 380.5, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 380.5, + "level": "full" + }, + "IgnoredAny": { + "us": 570.4, + "level": "full" + } + } } } }, @@ -2960,35 +2960,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 224.0, + "us": 219.0, "level": "full" }, "best_any": { "variant": "parse", - "us": 224.0, + "us": 219.0, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 223.5, + "us": 220.2, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 223.5, + "us": 220.2, "level": "full" }, "variants": { - "read (reused)": { - "us": 223.5, + "parse": { + "us": 219.0, "level": "full" }, - "parse": { - "us": 224.0, + "read (reused)": { + "us": 220.2, "level": "full" }, "parse_copy": { - "us": 230.6, + "us": 233.0, "level": "full" } } @@ -2996,23 +2996,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 465.2, + "us": 303.0, "level": "full" }, "best_any": { "variant": "sax", - "us": 465.2, + "us": 303.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 465.2, + "us": 303.0, "level": "full" }, "parse": { - "us": 1414.6, + "us": 1266.7, "level": "full" } } @@ -3020,39 +3020,39 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 230.9, + "us": 231.0, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 230.9, + "us": 231.0, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 237.0, + "us": 237.2, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 237.0, + "us": 237.2, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 218.7, + "us": 221.7, "level": "full" }, "insitu (copy)": { - "us": 230.9, + "us": 231.0, "level": "full" }, "read": { - "us": 231.2, + "us": 233.5, "level": "full" }, "read (reused allocator)": { - "us": 237.0, + "us": 237.2, "level": "full" } } @@ -3060,39 +3060,39 @@ "simdjson": { "best": { "variant": "DOM", - "us": 248.8, + "us": 249.3, "level": "full" }, "best_any": { "variant": "DOM", - "us": 248.8, + "us": 249.3, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 247.3, + "us": 247.5, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 247.3, + "us": 247.5, "level": "full" }, "variants": { "On-Demand (reused)": { - "us": 247.3, - "level": "full" - }, - "DOM (reused)": { - "us": 247.4, + "us": 247.5, "level": "full" }, "DOM": { - "us": 248.8, + "us": 249.3, + "level": "full" + }, + "DOM (reused)": { + "us": 249.6, "level": "full" }, "On-Demand": { - "us": 251.1, + "us": 254.2, "level": "full" } } @@ -3101,14 +3101,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 427.8, + "us": 428.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 427.8, + "us": 428.0, "level": "no UTF-8" } } @@ -3116,35 +3116,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 967.9, + "us": 973.5, "level": "full" }, "best_any": { "variant": "generic (double, strict)", - "us": 967.9, + "us": 973.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "generic (double, strict)": { - "us": 967.9, + "us": 973.5, "level": "full" }, "generic (double)": { - "us": 970.8, + "us": 978.5, "level": "partial" }, "generic": { - "us": 1318.0, + "us": 1333.5, "level": "partial" }, "generic (strict)": { - "us": 1326.5, + "us": 1334.0, "level": "full" }, "lazy_json": { - "us": 1955.2, + "us": 1921.7, "level": "partial" } }, @@ -3155,39 +3155,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 535.0, + "us": 538.3, "level": "full" }, "best_any": { "variant": "SAX", - "us": 535.0, + "us": 538.3, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 532.9, + "us": 534.7, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 532.9, + "us": 534.7, "level": "full" }, "variants": { "SAX (reused)": { - "us": 532.9, + "us": 534.7, "level": "full" }, "SAX": { - "us": 535.0, - "level": "full" - }, - "parse": { - "us": 914.4, + "us": 538.3, "level": "full" }, "parser (reused)": { - "us": 915.5, + "us": 910.1, + "level": "full" + }, + "parse": { + "us": 923.7, "level": "full" } } @@ -3195,71 +3195,71 @@ "RapidJSON": { "best": { "variant": "SAX", - "us": 1329.3, + "us": 1332.2, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 735.1, + "us": 738.2, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1401.0, + "us": 1409.8, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1231.2, + "us": 1237.2, "level": "no UTF-8" }, "variants": { - "SAX (string stream) (no encoding check)": { - "us": 735.1, + "insitu (copy untimed) (no encoding check)": { + "us": 737.8, "level": "no UTF-8" }, - "insitu (copy untimed) (no encoding check)": { - "us": 739.2, + "SAX (string stream) (no encoding check)": { + "us": 738.2, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 745.0, + "us": 753.8, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1160.1, + "us": 1160.8, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1231.2, + "us": 1237.2, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1243.0, + "us": 1254.2, "level": "no UTF-8" }, "SAX": { - "us": 1329.3, + "us": 1332.2, "level": "full" }, "insitu (copy untimed)": { - "us": 1355.9, - "level": "full" - }, - "SAX (string stream)": { - "us": 1357.7, + "us": 1355.2, "level": "full" }, "insitu (copy)": { - "us": 1358.5, + "us": 1365.1, "level": "full" }, - "Document (reused allocator)": { - "us": 1401.0, + "SAX (string stream)": { + "us": 1365.5, "level": "full" }, "Document": { - "us": 1405.1, + "us": 1408.2, + "level": "full" + }, + "Document (reused allocator)": { + "us": 1409.8, "level": "full" } } @@ -3288,30 +3288,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "visitor", - "us": 363.8, - "level": "full" - }, - "best_any": { - "variant": "visitor", - "us": 363.8, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "visitor": { - "us": 363.8, - "level": "full" - }, - "Value": { - "us": 464.0, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "visitor (copy)", @@ -3347,41 +3323,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "visitor", + "us": 363.8, + "level": "full" + }, + "best_any": { + "variant": "visitor", + "us": 363.8, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "visitor": { + "us": 363.8, + "level": "full" + }, + "Value": { + "us": 464.0, + "level": "full" + } + } } }, "citm_catalog": { "nlohmann json_document": { "best": { "variant": "parse", - "us": 484.7, + "us": 493.0, "level": "full" }, "best_any": { "variant": "parse", - "us": 484.7, + "us": 493.0, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 483.7, + "us": 486.1, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 483.7, + "us": 486.1, "level": "full" }, "variants": { "read (reused)": { - "us": 483.7, + "us": 486.1, "level": "full" }, "parse": { - "us": 484.7, + "us": 493.0, "level": "full" }, "parse_copy": { - "us": 512.4, + "us": 516.6, "level": "full" } } @@ -3389,63 +3389,63 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 925.3, + "us": 602.3, "level": "full" }, "best_any": { "variant": "sax", - "us": 925.3, + "us": 602.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 925.3, + "us": 602.3, "level": "full" }, "parse": { - "us": 2535.6, + "us": 2251.4, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 581.2, + "variant": "read", + "us": 571.3, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 581.2, + "variant": "read", + "us": 571.3, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 587.0, + "us": 589.7, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 587.0, + "us": 589.7, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 550.7, - "level": "full" - }, - "insitu (copy)": { - "us": 581.2, + "us": 552.5, "level": "full" }, "read": { - "us": 582.7, + "us": 571.3, + "level": "full" + }, + "insitu (copy)": { + "us": 577.8, "level": "full" }, "read (reused allocator)": { - "us": 587.0, + "us": 589.7, "level": "full" } } @@ -3453,39 +3453,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 570.8, + "us": 572.3, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 570.8, + "us": 572.3, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 581.8, + "us": 583.8, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 581.8, + "us": 583.8, "level": "full" }, "variants": { "On-Demand": { - "us": 570.8, + "us": 572.3, "level": "full" }, "On-Demand (reused)": { - "us": 581.8, - "level": "full" - }, - "DOM (reused)": { - "us": 587.2, + "us": 583.8, "level": "full" }, "DOM": { - "us": 590.9, + "us": 593.0, + "level": "full" + }, + "DOM (reused)": { + "us": 595.4, "level": "full" } } @@ -3494,14 +3494,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1086.6, + "us": 1098.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1086.6, + "us": 1098.5, "level": "no UTF-8" } } @@ -3509,35 +3509,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 2048.8, + "us": 2057.3, "level": "full" }, "best_any": { - "variant": "generic (double, strict)", - "us": 2048.8, - "level": "full" + "variant": "generic (double)", + "us": 2045.1, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (double, strict)": { - "us": 2048.8, - "level": "full" - }, "generic (double)": { - "us": 2049.7, + "us": 2045.1, "level": "partial" }, + "generic (double, strict)": { + "us": 2057.3, + "level": "full" + }, "generic": { - "us": 2832.0, + "us": 2837.5, "level": "partial" }, "generic (strict)": { - "us": 2856.2, + "us": 2857.5, "level": "full" }, "lazy_json": { - "us": 7968.5, + "us": 8218.5, "level": "partial" } }, @@ -3548,39 +3548,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 1010.2, + "us": 1027.5, "level": "full" }, "best_any": { "variant": "SAX", - "us": 1010.2, + "us": 1027.5, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 1006.5, + "us": 1008.1, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 1006.5, + "us": 1008.1, "level": "full" }, "variants": { "SAX (reused)": { - "us": 1006.5, + "us": 1008.1, "level": "full" }, "SAX": { - "us": 1010.2, + "us": 1027.5, "level": "full" }, "parse": { - "us": 1574.8, + "us": 1608.1, "level": "full" }, "parser (reused)": { - "us": 1576.3, + "us": 1610.4, "level": "full" } } @@ -3588,71 +3588,71 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 1455.3, + "us": 1471.8, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 1136.2, + "us": 1156.8, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1790.8, + "us": 1825.7, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1712.6, + "us": 1746.0, "level": "no UTF-8" }, "variants": { "SAX (string stream) (no encoding check)": { - "us": 1136.2, + "us": 1156.8, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 1223.3, + "us": 1241.0, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1255.3, + "us": 1279.6, "level": "no UTF-8" }, "SAX (string stream)": { - "us": 1455.3, + "us": 1471.8, "level": "full" }, "SAX (no encoding check)": { - "us": 1565.0, + "us": 1565.6, "level": "no UTF-8" }, - "SAX": { - "us": 1639.8, + "insitu (copy untimed)": { + "us": 1649.0, "level": "full" }, - "insitu (copy untimed)": { - "us": 1657.8, + "SAX": { + "us": 1661.7, "level": "full" }, "insitu (copy)": { - "us": 1670.6, + "us": 1698.7, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 1712.6, + "us": 1746.0, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1716.0, + "us": 1746.4, "level": "no UTF-8" }, - "Document (reused allocator)": { - "us": 1790.8, + "Document": { + "us": 1805.8, "level": "full" }, - "Document": { - "us": 1804.8, + "Document (reused allocator)": { + "us": 1825.7, "level": "full" } } @@ -3681,30 +3681,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "visitor", - "us": 777.5, - "level": "full" - }, - "best_any": { - "variant": "visitor", - "us": 777.5, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "visitor": { - "us": 777.5, - "level": "full" - }, - "Value": { - "us": 1008.5, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "visitor (copy)", @@ -3740,41 +3716,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "visitor", + "us": 777.5, + "level": "full" + }, + "best_any": { + "variant": "visitor", + "us": 777.5, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "visitor": { + "us": 777.5, + "level": "full" + }, + "Value": { + "us": 1008.5, + "level": "full" + } + } } }, "canada": { "nlohmann json_document": { "best": { "variant": "parse", - "us": 1815.8, + "us": 1802.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 1815.8, + "us": 1802.6, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 1814.8, + "us": 1804.9, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 1814.8, + "us": 1804.9, "level": "full" }, "variants": { - "read (reused)": { - "us": 1814.8, + "parse": { + "us": 1802.6, "level": "full" }, - "parse": { - "us": 1815.8, + "read (reused)": { + "us": 1804.9, "level": "full" }, "parse_copy": { - "us": 1861.5, + "us": 1842.5, "level": "full" } } @@ -3782,23 +3782,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 3072.1, + "us": 2207.7, "level": "full" }, "best_any": { "variant": "sax", - "us": 3072.1, + "us": 2207.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 3072.1, + "us": 2207.7, "level": "full" }, "parse": { - "us": 6451.6, + "us": 5477.1, "level": "full" } } @@ -3806,39 +3806,39 @@ "yyjson": { "best": { "variant": "read", - "us": 1948.4, + "us": 1875.0, "level": "full" }, "best_any": { "variant": "read", - "us": 1948.4, + "us": 1875.0, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 1945.0, + "us": 1919.2, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1945.0, + "us": 1919.2, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 1906.5, - "level": "full" - }, - "read (reused allocator)": { - "us": 1945.0, + "us": 1837.7, "level": "full" }, "read": { - "us": 1948.4, + "us": 1875.0, "level": "full" }, "insitu (copy)": { - "us": 1958.3, + "us": 1880.8, + "level": "full" + }, + "read (reused allocator)": { + "us": 1919.2, "level": "full" } } @@ -3846,39 +3846,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 2374.0, + "us": 2397.6, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 2374.0, + "us": 2397.6, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 2379.3, + "us": 2381.3, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 2379.3, + "us": 2381.3, "level": "full" }, "variants": { - "On-Demand": { - "us": 2374.0, + "On-Demand (reused)": { + "us": 2381.3, "level": "full" }, - "On-Demand (reused)": { - "us": 2379.3, + "On-Demand": { + "us": 2397.6, "level": "full" }, "DOM (reused)": { - "us": 2426.8, + "us": 2420.6, "level": "full" }, "DOM": { - "us": 2431.0, + "us": 2427.9, "level": "full" } } @@ -3887,14 +3887,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 2992.6, + "us": 2975.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 2992.6, + "us": 2975.2, "level": "no UTF-8" } } @@ -3902,35 +3902,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 6330.8, + "us": 6337.5, "level": "full" }, "best_any": { - "variant": "generic (double, strict)", - "us": 6330.8, - "level": "full" + "variant": "generic (double)", + "us": 6326.1, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (double, strict)": { - "us": 6330.8, - "level": "full" - }, "generic (double)": { - "us": 6408.4, + "us": 6326.1, "level": "partial" }, - "generic (strict)": { - "us": 9738.4, + "generic (double, strict)": { + "us": 6337.5, "level": "full" }, "generic": { - "us": 9802.6, + "us": 9632.3, "level": "partial" }, + "generic (strict)": { + "us": 9651.4, + "level": "full" + }, "lazy_json": { - "us": 12005.4, + "us": 11982.8, "level": "partial" } }, @@ -3941,39 +3941,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 3066.7, + "us": 3084.4, "level": "full" }, "best_any": { "variant": "SAX", - "us": 3066.7, + "us": 3084.4, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 3067.8, + "us": 3077.8, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 3067.8, + "us": 3077.8, "level": "full" }, "variants": { - "SAX": { - "us": 3066.7, + "SAX (reused)": { + "us": 3077.8, "level": "full" }, - "SAX (reused)": { - "us": 3067.8, + "SAX": { + "us": 3084.4, "level": "full" }, "parser (reused)": { - "us": 4017.5, + "us": 4002.8, "level": "full" }, "parse": { - "us": 4046.4, + "us": 4022.4, "level": "full" } } @@ -3981,71 +3981,71 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 6453.3, + "us": 6448.0, "level": "full" }, "best_any": { - "variant": "SAX (string stream)", - "us": 6453.3, - "level": "full" + "variant": "SAX (string stream) (no encoding check)", + "us": 6432.3, + "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 7705.2, + "us": 7843.1, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 7705.2, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 7705.3, + "level": "no UTF-8" }, "variants": { - "SAX (string stream)": { - "us": 6453.3, - "level": "full" - }, "SAX (string stream) (no encoding check)": { - "us": 6484.0, + "us": 6432.3, "level": "no UTF-8" }, + "SAX (string stream)": { + "us": 6448.0, + "level": "full" + }, "SAX (no encoding check)": { - "us": 7003.9, + "us": 6919.5, "level": "no UTF-8" }, "SAX": { - "us": 7006.7, + "us": 6931.2, "level": "full" }, "insitu (copy untimed) (no encoding check)": { - "us": 7199.5, + "us": 7134.5, "level": "no UTF-8" }, - "insitu (copy)": { - "us": 7201.1, + "insitu (copy untimed)": { + "us": 7194.9, "level": "full" }, - "insitu (copy untimed)": { - "us": 7220.0, + "insitu (copy)": { + "us": 7216.1, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 7258.3, - "level": "no UTF-8" - }, - "Document (reused allocator)": { - "us": 7705.2, - "level": "full" - }, - "Document": { - "us": 7736.4, - "level": "full" - }, - "Document (no encoding check)": { - "us": 7768.0, + "us": 7224.8, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 7820.7, + "us": 7705.3, + "level": "no UTF-8" + }, + "Document": { + "us": 7798.2, + "level": "full" + }, + "Document (reused allocator)": { + "us": 7843.1, + "level": "full" + }, + "Document (no encoding check)": { + "us": 7854.4, "level": "no UTF-8" } } @@ -4074,30 +4074,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "visitor", - "us": 2702.9, - "level": "full" - }, - "best_any": { - "variant": "visitor", - "us": 2702.9, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "visitor": { - "us": 2702.9, - "level": "full" - }, - "Value": { - "us": 3706.6, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "visitor (copy)", @@ -4133,41 +4109,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "visitor", + "us": 2702.9, + "level": "full" + }, + "best_any": { + "variant": "visitor", + "us": 2702.9, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "visitor": { + "us": 2702.9, + "level": "full" + }, + "Value": { + "us": 3706.6, + "level": "full" + } + } } }, "jeopardy": { "nlohmann json_document": { "best": { "variant": "parse", - "us": 28986.8, + "us": 28897.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 28986.8, + "us": 28897.5, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 29025.1, + "us": 28802.2, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 29025.1, + "us": 28802.2, "level": "full" }, "variants": { - "parse": { - "us": 28986.8, + "read (reused)": { + "us": 28802.2, "level": "full" }, - "read (reused)": { - "us": 29025.1, + "parse": { + "us": 28897.5, "level": "full" }, "parse_copy": { - "us": 30541.2, + "us": 30213.5, "level": "full" } } @@ -4175,23 +4175,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 64088.8, + "us": 44687.7, "level": "full" }, "best_any": { "variant": "sax", - "us": 64088.8, + "us": 44687.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 64088.8, + "us": 44687.7, "level": "full" }, "parse": { - "us": 174598.5, + "us": 159072.0, "level": "full" } } @@ -4199,39 +4199,39 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 38250.8, + "us": 37817.0, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 38250.8, + "us": 37817.0, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 38317.9, + "us": 38209.0, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 38317.9, + "us": 38209.0, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 37511.6, + "us": 37055.6, "level": "full" }, "insitu (copy)": { - "us": 38250.8, - "level": "full" - }, - "read (reused allocator)": { - "us": 38317.9, + "us": 37817.0, "level": "full" }, "read": { - "us": 38916.7, + "us": 38163.2, + "level": "full" + }, + "read (reused allocator)": { + "us": 38209.0, "level": "full" } } @@ -4239,39 +4239,39 @@ "simdjson": { "best": { "variant": "DOM", - "us": 35111.1, + "us": 34994.5, "level": "full" }, "best_any": { "variant": "DOM", - "us": 35111.1, + "us": 34994.5, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 35264.0, + "us": 35152.6, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 35264.0, + "us": 35152.6, "level": "full" }, "variants": { "DOM": { - "us": 35111.1, + "us": 34994.5, "level": "full" }, "DOM (reused)": { - "us": 35264.0, + "us": 35152.6, "level": "full" }, "On-Demand (reused)": { - "us": 35698.0, + "us": 35647.7, "level": "full" }, "On-Demand": { - "us": 35730.0, + "us": 35725.2, "level": "full" } } @@ -4280,14 +4280,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 48687.5, + "us": 48487.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 48687.5, + "us": 48487.0, "level": "no UTF-8" } } @@ -4295,35 +4295,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 99763.0, + "us": 100271.7, "level": "full" }, "best_any": { "variant": "generic (double)", - "us": 99629.9, + "us": 100267.7, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic (double)": { - "us": 99629.9, + "us": 100267.7, "level": "partial" }, "generic (double, strict)": { - "us": 99763.0, - "level": "full" - }, - "generic (strict)": { - "us": 141016.3, + "us": 100271.7, "level": "full" }, "generic": { - "us": 141315.6, + "us": 143688.7, "level": "partial" }, + "generic (strict)": { + "us": 144313.7, + "level": "full" + }, "lazy_json": { - "us": 149334.4, + "us": 150613.8, "level": "partial" } }, @@ -4334,39 +4334,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 53704.2, + "us": 54765.4, "level": "full" }, "best_any": { "variant": "SAX", - "us": 53704.2, + "us": 54765.4, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 53956.3, + "us": 53655.1, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 53956.3, + "us": 53655.1, "level": "full" }, "variants": { - "SAX": { - "us": 53704.2, - "level": "full" - }, "SAX (reused)": { - "us": 53956.3, + "us": 53655.1, "level": "full" }, - "parser (reused)": { - "us": 95269.8, + "SAX": { + "us": 54765.4, "level": "full" }, "parse": { - "us": 96281.3, + "us": 95469.6, + "level": "full" + }, + "parser (reused)": { + "us": 96878.1, "level": "full" } } @@ -4374,71 +4374,71 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 136103.0, + "us": 136329.9, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 72226.9, + "us": 71646.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 163157.3, + "us": 163920.7, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 149474.4, + "us": 150384.2, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 69604.5, + "us": 70284.7, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 72226.9, + "us": 71646.5, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 72406.0, + "us": 72349.4, "level": "no UTF-8" }, "SAX (string stream)": { - "us": 136103.0, + "us": 136329.9, "level": "full" }, "SAX (no encoding check)": { - "us": 136834.2, + "us": 137252.4, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 145645.6, + "us": 146204.5, + "level": "full" + }, + "insitu (copy)": { + "us": 148138.9, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 149474.4, - "level": "no UTF-8" - }, - "insitu (copy)": { - "us": 149723.9, - "level": "full" - }, - "Document (no encoding check)": { - "us": 151254.2, + "us": 150384.2, "level": "no UTF-8" }, "SAX": { - "us": 152317.3, + "us": 151978.4, "level": "full" }, + "Document (no encoding check)": { + "us": 152992.5, + "level": "no UTF-8" + }, "Document (reused allocator)": { - "us": 163157.3, + "us": 163920.7, "level": "full" }, "Document": { - "us": 166280.8, + "us": 166452.1, "level": "full" } } @@ -4467,30 +4467,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "visitor", - "us": 41360.7, - "level": "full" - }, - "best_any": { - "variant": "visitor", - "us": 41360.7, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "visitor": { - "us": 41360.7, - "level": "full" - }, - "Value": { - "us": 47265.9, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "visitor (copy)", @@ -4526,6 +4502,30 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "visitor", + "us": 41360.7, + "level": "full" + }, + "best_any": { + "variant": "visitor", + "us": 41360.7, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "visitor": { + "us": 41360.7, + "level": "full" + }, + "Value": { + "us": 47265.9, + "level": "full" + } + } } }, "status": { @@ -4568,23 +4568,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 2.4, + "us": 1.6, "level": "full" }, "best_any": { "variant": "sax", - "us": 2.4, + "us": 1.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 2.4, + "us": 1.6, "level": "full" }, "parse": { - "us": 7.9, + "us": 6.8, "level": "full" } } @@ -4592,12 +4592,12 @@ "yyjson": { "best": { "variant": "read", - "us": 1.2, + "us": 1.1, "level": "full" }, "best_any": { "variant": "read", - "us": 1.2, + "us": 1.1, "level": "full" }, "best_reused": { @@ -4611,6 +4611,10 @@ "level": "full" }, "variants": { + "read": { + "us": 1.1, + "level": "full" + }, "insitu (copy untimed)": { "us": 1.1, "level": "full" @@ -4619,10 +4623,6 @@ "us": 1.1, "level": "full" }, - "read": { - "us": 1.2, - "level": "full" - }, "insitu (copy)": { "us": 1.2, "level": "full" @@ -4704,7 +4704,7 @@ "level": "partial" }, "generic (double)": { - "us": 4.9, + "us": 4.8, "level": "partial" }, "generic (double, strict)": { @@ -4767,7 +4767,7 @@ "RapidJSON": { "best": { "variant": "SAX", - "us": 6.1, + "us": 6.2, "level": "full" }, "best_any": { @@ -4777,7 +4777,7 @@ }, "best_reused": { "variant": "Document (reused allocator)", - "us": 6.5, + "us": 6.6, "level": "full" }, "best_reused_any": { @@ -4799,7 +4799,7 @@ "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 5.3, + "us": 5.4, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { @@ -4807,11 +4807,11 @@ "level": "no UTF-8" }, "SAX": { - "us": 6.1, + "us": 6.2, "level": "full" }, "SAX (string stream)": { - "us": 6.1, + "us": 6.2, "level": "full" }, "Document (no encoding check)": { @@ -4819,7 +4819,7 @@ "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 6.5, + "us": 6.6, "level": "full" }, "insitu (copy)": { @@ -4860,30 +4860,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "visitor", - "us": 1.7, - "level": "full" - }, - "best_any": { - "variant": "visitor", - "us": 1.7, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "visitor": { - "us": 1.7, - "level": "full" - }, - "Value": { - "us": 2.2, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "visitor (copy)", @@ -4919,41 +4895,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "visitor", + "us": 1.7, + "level": "full" + }, + "best_any": { + "variant": "visitor", + "us": 1.7, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "visitor": { + "us": 1.7, + "level": "full" + }, + "Value": { + "us": 2.2, + "level": "full" + } + } } }, "twitter_min": { "nlohmann json_document": { "best": { "variant": "parse", - "us": 205.0, + "us": 207.2, "level": "full" }, "best_any": { "variant": "parse", - "us": 205.0, + "us": 207.2, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 198.9, + "us": 201.1, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 198.9, + "us": 201.1, "level": "full" }, "variants": { "read (reused)": { - "us": 198.9, + "us": 201.1, "level": "full" }, "parse": { - "us": 205.0, + "us": 207.2, "level": "full" }, "parse_copy": { - "us": 211.0, + "us": 211.8, "level": "full" } } @@ -4961,63 +4961,63 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 415.3, + "us": 268.1, "level": "full" }, "best_any": { "variant": "sax", - "us": 415.3, + "us": 268.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 415.3, + "us": 268.1, "level": "full" }, "parse": { - "us": 1386.9, + "us": 1221.4, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 212.2, + "variant": "read", + "us": 208.4, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 212.2, + "variant": "read", + "us": 208.4, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 207.3, + "us": 207.4, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 207.3, + "us": 207.4, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 199.6, + "us": 200.0, "level": "full" }, "read (reused allocator)": { - "us": 207.3, - "level": "full" - }, - "insitu (copy)": { - "us": 212.2, + "us": 207.4, "level": "full" }, "read": { - "us": 213.6, + "us": 208.4, + "level": "full" + }, + "insitu (copy)": { + "us": 208.9, "level": "full" } } @@ -5025,39 +5025,39 @@ "simdjson": { "best": { "variant": "DOM", - "us": 222.1, + "us": 222.7, "level": "full" }, "best_any": { "variant": "DOM", - "us": 222.1, + "us": 222.7, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 224.0, + "us": 226.4, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 224.0, + "us": 226.4, "level": "full" }, "variants": { "DOM": { - "us": 222.1, + "us": 222.7, "level": "full" }, "DOM (reused)": { - "us": 224.0, + "us": 226.4, "level": "full" }, "On-Demand (reused)": { - "us": 231.7, + "us": 227.6, "level": "full" }, "On-Demand": { - "us": 232.5, + "us": 236.0, "level": "full" } } @@ -5066,14 +5066,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 303.9, + "us": 304.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 303.9, + "us": 304.3, "level": "no UTF-8" } } @@ -5081,35 +5081,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 886.5, + "us": 887.2, "level": "full" }, "best_any": { - "variant": "generic (double, strict)", - "us": 886.5, - "level": "full" + "variant": "generic (double)", + "us": 882.7, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (double, strict)": { - "us": 886.5, - "level": "full" - }, "generic (double)": { - "us": 886.8, + "us": 882.7, "level": "partial" }, + "generic (double, strict)": { + "us": 887.2, + "level": "full" + }, "generic": { - "us": 1228.9, + "us": 1221.7, "level": "partial" }, "generic (strict)": { - "us": 1231.7, + "us": 1224.6, "level": "full" }, "lazy_json": { - "us": 1327.8, + "us": 1308.4, "level": "partial" } }, @@ -5120,111 +5120,111 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 452.5, + "us": 457.9, "level": "full" }, "best_any": { "variant": "SAX", - "us": 452.5, + "us": 457.9, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 452.5, + "us": 455.2, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 452.5, + "us": 455.2, "level": "full" }, "variants": { - "SAX": { - "us": 452.5, + "SAX (reused)": { + "us": 455.2, "level": "full" }, - "SAX (reused)": { - "us": 452.5, + "SAX": { + "us": 457.9, "level": "full" }, "parser (reused)": { - "us": 827.1, + "us": 820.3, "level": "full" }, "parse": { - "us": 830.2, + "us": 838.3, "level": "full" } } }, "RapidJSON": { "best": { - "variant": "SAX", - "us": 1115.7, + "variant": "SAX (string stream)", + "us": 1124.5, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 538.9, + "us": 524.9, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1204.4, + "us": 1212.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1061.2, + "us": 1058.0, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 522.0, + "us": 511.7, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 538.9, + "us": 524.9, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 557.8, + "us": 558.0, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 972.0, + "us": 967.0, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1061.2, + "us": 1058.0, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1067.5, + "us": 1063.4, "level": "no UTF-8" }, - "SAX": { - "us": 1115.7, - "level": "full" - }, "insitu (copy untimed)": { - "us": 1123.6, - "level": "full" - }, - "insitu (copy)": { - "us": 1125.9, + "us": 1114.0, "level": "full" }, "SAX (string stream)": { - "us": 1126.8, + "us": 1124.5, + "level": "full" + }, + "insitu (copy)": { + "us": 1137.5, + "level": "full" + }, + "SAX": { + "us": 1140.0, "level": "full" }, "Document (reused allocator)": { - "us": 1204.4, + "us": 1212.6, "level": "full" }, "Document": { - "us": 1212.6, + "us": 1221.2, "level": "full" } } @@ -5253,30 +5253,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "visitor", - "us": 258.2, - "level": "full" - }, - "best_any": { - "variant": "visitor", - "us": 258.2, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "visitor": { - "us": 258.2, - "level": "full" - }, - "Value": { - "us": 375.1, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "visitor (copy)", @@ -5312,41 +5288,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "visitor", + "us": 258.2, + "level": "full" + }, + "best_any": { + "variant": "visitor", + "us": 258.2, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "visitor": { + "us": 258.2, + "level": "full" + }, + "Value": { + "us": 375.1, + "level": "full" + } + } } }, "citm_catalog_min": { "nlohmann json_document": { "best": { "variant": "parse", - "us": 369.2, + "us": 372.4, "level": "full" }, "best_any": { "variant": "parse", - "us": 369.2, + "us": 372.4, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 367.1, + "us": 367.6, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 367.1, + "us": 367.6, "level": "full" }, "variants": { "read (reused)": { - "us": 367.1, + "us": 367.6, "level": "full" }, "parse": { - "us": 369.2, + "us": 372.4, "level": "full" }, "parse_copy": { - "us": 376.8, + "us": 376.2, "level": "full" } } @@ -5354,63 +5354,63 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 779.7, + "us": 407.6, "level": "full" }, "best_any": { "variant": "sax", - "us": 779.7, + "us": 407.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 779.7, + "us": 407.6, "level": "full" }, "parse": { - "us": 2411.3, + "us": 2079.0, "level": "full" } } }, "yyjson": { "best": { - "variant": "read", - "us": 384.0, + "variant": "insitu (copy)", + "us": 376.9, "level": "full" }, "best_any": { - "variant": "read", - "us": 384.0, + "variant": "insitu (copy)", + "us": 376.9, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 382.2, + "us": 378.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 382.2, + "us": 378.3, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 372.7, - "level": "full" - }, - "read (reused allocator)": { - "us": 382.2, - "level": "full" - }, - "read": { - "us": 384.0, + "us": 369.0, "level": "full" }, "insitu (copy)": { - "us": 386.1, + "us": 376.9, + "level": "full" + }, + "read (reused allocator)": { + "us": 378.3, + "level": "full" + }, + "read": { + "us": 378.4, "level": "full" } } @@ -5418,39 +5418,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 441.5, + "us": 447.6, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 441.5, + "us": 447.6, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 446.3, + "us": 451.4, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 446.3, + "us": 451.4, "level": "full" }, "variants": { "On-Demand": { - "us": 441.5, + "us": 447.6, "level": "full" }, "On-Demand (reused)": { - "us": 446.3, + "us": 451.4, "level": "full" }, "DOM (reused)": { - "us": 457.8, + "us": 455.9, "level": "full" }, "DOM": { - "us": 464.2, + "us": 464.3, "level": "full" } } @@ -5459,14 +5459,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 651.2, + "us": 654.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 651.2, + "us": 654.2, "level": "no UTF-8" } } @@ -5474,35 +5474,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 1716.8, + "us": 1693.1, "level": "full" }, "best_any": { "variant": "generic (double)", - "us": 1698.8, + "us": 1685.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic (double)": { - "us": 1698.8, + "us": 1685.4, "level": "partial" }, "generic (double, strict)": { - "us": 1716.8, + "us": 1693.1, "level": "full" }, "generic": { - "us": 2482.6, + "us": 2456.7, "level": "partial" }, "generic (strict)": { - "us": 2514.5, + "us": 2489.0, "level": "full" }, "lazy_json": { - "us": 2642.2, + "us": 2696.2, "level": "partial" } }, @@ -5513,39 +5513,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 464.2, + "us": 459.2, "level": "full" }, "best_any": { "variant": "SAX", - "us": 464.2, + "us": 459.2, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 464.3, + "us": 457.4, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 464.3, + "us": 457.4, "level": "full" }, "variants": { - "SAX": { - "us": 464.2, + "SAX (reused)": { + "us": 457.4, "level": "full" }, - "SAX (reused)": { - "us": 464.3, + "SAX": { + "us": 459.2, "level": "full" }, "parse": { - "us": 1042.3, + "us": 1049.1, "level": "full" }, "parser (reused)": { - "us": 1046.2, + "us": 1051.8, "level": "full" } } @@ -5553,71 +5553,71 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 1055.3, + "us": 1052.0, "level": "full" }, "best_any": { - "variant": "insitu (copy) (no encoding check)", - "us": 848.7, + "variant": "SAX (string stream) (no encoding check)", + "us": 858.6, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1338.1, + "us": 1356.1, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1254.5, + "us": 1258.0, "level": "no UTF-8" }, "variants": { + "SAX (string stream) (no encoding check)": { + "us": 858.6, + "level": "no UTF-8" + }, "insitu (copy untimed) (no encoding check)": { - "us": 838.9, + "us": 870.0, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 848.7, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 860.0, - "level": "no UTF-8" - }, - "SAX (no encoding check)": { - "us": 1038.6, + "us": 873.8, "level": "no UTF-8" }, "SAX (string stream)": { - "us": 1055.3, + "us": 1052.0, "level": "full" }, + "SAX (no encoding check)": { + "us": 1068.8, + "level": "no UTF-8" + }, "SAX": { - "us": 1129.1, + "us": 1154.3, "level": "full" }, "insitu (copy untimed)": { - "us": 1211.2, + "us": 1223.7, "level": "full" }, "insitu (copy)": { - "us": 1218.6, + "us": 1234.8, "level": "full" }, - "Document (no encoding check)": { - "us": 1248.4, + "Document (reused allocator) (no encoding check)": { + "us": 1258.0, "level": "no UTF-8" }, - "Document (reused allocator) (no encoding check)": { - "us": 1254.5, + "Document (no encoding check)": { + "us": 1262.9, "level": "no UTF-8" }, "Document": { - "us": 1321.5, + "us": 1341.8, "level": "full" }, "Document (reused allocator)": { - "us": 1338.1, + "us": 1356.1, "level": "full" } } @@ -5646,30 +5646,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "visitor", - "us": 526.5, - "level": "full" - }, - "best_any": { - "variant": "visitor", - "us": 526.5, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "visitor": { - "us": 526.5, - "level": "full" - }, - "Value": { - "us": 707.3, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "visitor (copy)", @@ -5705,6 +5681,30 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "visitor", + "us": 526.5, + "level": "full" + }, + "best_any": { + "variant": "visitor", + "us": 526.5, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "visitor": { + "us": 526.5, + "level": "full" + }, + "Value": { + "us": 707.3, + "level": "full" + } + } } } }, @@ -5713,63 +5713,63 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 184.3, + "us": 183.4, "level": "full" }, "best_any": { "variant": "parse", - "us": 184.3, + "us": 183.4, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 179.1, + "us": 178.9, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 179.1, + "us": 178.9, "level": "full" }, "variants": { "read (reused)": { - "us": 179.1, + "us": 178.9, "level": "full" }, "parse": { - "us": 184.3, + "us": 183.4, "level": "full" }, "structs (from_json)": { - "us": 185.2, + "us": 183.4, "level": "full" }, "parse_copy": { - "us": 193.5, + "us": 194.0, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "structs (from_json)", - "us": 1360.0, + "variant": "parse", + "us": 1208.3, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 1360.0, + "variant": "parse", + "us": 1208.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "structs (from_json)": { - "us": 1360.0, + "parse": { + "us": 1208.3, "level": "full" }, - "parse": { - "us": 1366.5, + "structs (from_json)": { + "us": 1212.6, "level": "full" } } @@ -5777,43 +5777,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 190.2, + "us": 191.3, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 190.2, + "us": 191.3, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 193.1, + "us": 193.7, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 193.1, + "us": 193.7, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 178.4, + "us": 181.5, "level": "full" }, "insitu (copy)": { - "us": 190.2, + "us": 191.3, "level": "full" }, "read (reused allocator)": { - "us": 193.1, + "us": 193.7, "level": "full" }, "read": { - "us": 196.0, + "us": 193.8, "level": "full" }, "read (raw numbers)": { - "us": 205.6, + "us": 209.0, "level": "full" } } @@ -5821,47 +5821,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 195.7, + "us": 192.3, "level": "full" }, "best_any": { "variant": "On-Demand structs", - "us": 126.6, + "us": 128.4, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 194.6, + "us": 196.4, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 137.0, + "us": 139.6, "level": "partial" }, "variants": { "On-Demand structs": { - "us": 126.6, + "us": 128.4, "level": "partial" }, "On-Demand (key selectors)": { - "us": 131.0, - "level": "partial" - }, - "On-Demand": { - "us": 135.2, + "us": 133.5, "level": "partial" }, "On-Demand (reused)": { - "us": 137.0, + "us": 139.6, "level": "partial" }, - "DOM (reused)": { - "us": 194.6, - "level": "full" + "On-Demand": { + "us": 139.9, + "level": "partial" }, "DOM": { - "us": 195.7, + "us": 192.3, + "level": "full" + }, + "DOM (reused)": { + "us": 196.4, "level": "full" } } @@ -5870,14 +5870,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 384.8, + "us": 385.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 384.8, + "us": 385.1, "level": "no UTF-8" } } @@ -5885,43 +5885,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 311.2, + "us": 313.7, "level": "full" }, "best_any": { "variant": "structs", - "us": 241.4, + "us": 237.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 241.4, + "us": 237.9, "level": "partial" }, "structs (validate_skipped)": { - "us": 311.2, + "us": 313.7, "level": "full" }, "lazy_json": { - "us": 723.7, + "us": 691.4, + "level": "partial" + }, + "generic (double)": { + "us": 978.7, "level": "partial" }, "generic (double, strict)": { - "us": 973.2, + "us": 979.4, "level": "full" }, - "generic (double)": { - "us": 978.5, - "level": "partial" - }, "generic": { - "us": 1326.6, + "us": 1330.7, "level": "partial" }, "generic (strict)": { - "us": 1331.8, + "us": 1330.7, "level": "full" } }, @@ -5932,35 +5932,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 617.1, + "us": 623.4, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 617.1, + "us": 623.4, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 881.0, + "us": 878.1, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 881.0, + "us": 878.1, "level": "full" }, "variants": { "parse_into structs": { - "us": 617.1, + "us": 623.4, "level": "full" }, "parser (reused)": { - "us": 881.0, + "us": 878.1, "level": "full" }, "parse": { - "us": 886.0, + "us": 884.4, "level": "full" } }, @@ -5971,71 +5971,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1318.3, + "us": 1313.6, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 690.0, + "us": 701.2, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1358.1, + "us": 1365.8, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1186.8, + "us": 1186.2, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 678.8, + "us": 690.6, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 690.0, + "us": 701.2, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 886.0, + "us": 875.1, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1186.8, + "us": 1186.2, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1200.5, + "us": 1195.0, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 1204.8, + "us": 1210.1, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1303.9, + "us": 1309.9, "level": "full" }, "insitu (copy)": { - "us": 1318.3, - "level": "full" - }, - "Document (reused allocator)": { - "us": 1358.1, + "us": 1313.6, "level": "full" }, "Document": { - "us": 1362.2, + "us": 1364.1, + "level": "full" + }, + "Document (reused allocator)": { + "us": 1365.8, "level": "full" }, "Document (raw numbers)": { - "us": 1370.5, + "us": 1381.5, "level": "full" }, "Document (string stream)": { - "us": 1431.8, + "us": 1427.0, "level": "full" } } @@ -6068,30 +6068,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 332.7, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 332.7, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 332.7, - "level": "full" - }, - "structs": { - "us": 404.0, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "structs (copy)", @@ -6115,45 +6091,69 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 332.7, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 332.7, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 332.7, + "level": "full" + }, + "structs": { + "us": 404.0, + "level": "full" + } + } } }, "citm_catalog": { "nlohmann json_document": { "best": { "variant": "parse", - "us": 362.8, + "us": 362.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 362.8, + "us": 362.6, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 361.9, + "us": 361.8, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 361.9, + "us": 361.8, "level": "full" }, "variants": { "read (reused)": { - "us": 361.9, + "us": 361.8, "level": "full" }, "parse": { - "us": 362.8, + "us": 362.6, "level": "full" }, "structs (from_json)": { - "us": 379.5, + "us": 378.8, "level": "full" }, "parse_copy": { - "us": 390.8, + "us": 393.5, "level": "full" } } @@ -6161,67 +6161,67 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 2416.3, + "us": 2128.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 2416.3, + "us": 2128.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 2416.3, + "us": 2128.5, "level": "full" }, "structs (from_json)": { - "us": 2429.2, + "us": 2135.3, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 478.9, + "variant": "read", + "us": 480.2, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 478.9, + "variant": "read", + "us": 480.2, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 494.4, + "us": 490.4, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 494.4, + "us": 490.4, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 455.6, - "level": "full" - }, - "insitu (copy)": { - "us": 478.9, + "us": 455.0, "level": "full" }, "read": { - "us": 483.8, + "us": 480.2, + "level": "full" + }, + "insitu (copy)": { + "us": 482.3, "level": "full" }, "read (reused allocator)": { - "us": 494.4, + "us": 490.4, "level": "full" }, "read (raw numbers)": { - "us": 538.2, + "us": 535.9, "level": "full" } } @@ -6229,47 +6229,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 449.8, + "us": 453.7, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 354.2, + "us": 355.5, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 447.0, + "us": 454.6, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 351.9, + "us": 358.1, "level": "partial" }, "variants": { - "On-Demand (reused)": { - "us": 351.9, + "On-Demand": { + "us": 355.5, "level": "partial" }, - "On-Demand": { - "us": 354.2, + "On-Demand (reused)": { + "us": 358.1, "level": "partial" }, "On-Demand (key selectors)": { - "us": 362.8, + "us": 362.5, "level": "partial" }, "On-Demand structs": { - "us": 371.1, + "us": 380.7, "level": "partial" }, - "DOM (reused)": { - "us": 447.0, + "DOM": { + "us": 453.7, "level": "full" }, - "DOM": { - "us": 449.8, + "DOM (reused)": { + "us": 454.6, "level": "full" } } @@ -6278,14 +6278,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 990.0, + "us": 992.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 990.0, + "us": 992.8, "level": "no UTF-8" } } @@ -6293,43 +6293,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 854.4, + "us": 852.1, "level": "full" }, "best_any": { "variant": "structs", - "us": 255.1, + "us": 252.7, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 255.1, + "us": 252.7, "level": "partial" }, "structs (validate_skipped)": { - "us": 854.4, - "level": "full" - }, - "generic (double, strict)": { - "us": 1951.3, + "us": 852.1, "level": "full" }, "generic (double)": { - "us": 1953.0, + "us": 1954.8, "level": "partial" }, + "generic (double, strict)": { + "us": 1973.6, + "level": "full" + }, "generic (strict)": { - "us": 2744.5, + "us": 2771.7, "level": "full" }, "generic": { - "us": 2745.9, + "us": 2785.2, "level": "partial" }, "lazy_json": { - "us": 5155.3, + "us": 5188.2, "level": "partial" } }, @@ -6340,35 +6340,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 1205.2, + "us": 1207.9, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 1205.2, + "us": 1207.9, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1489.8, + "us": 1490.1, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1489.8, + "us": 1490.1, "level": "full" }, "variants": { "parse_into structs": { - "us": 1205.2, + "us": 1207.9, "level": "full" }, "parser (reused)": { - "us": 1489.8, + "us": 1490.1, "level": "full" }, "parse": { - "us": 1493.0, + "us": 1502.0, "level": "full" } }, @@ -6379,71 +6379,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1590.2, + "us": 1577.5, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1157.9, + "us": 1165.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1691.1, + "us": 1694.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1612.0, + "us": 1616.1, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1125.7, + "us": 1131.4, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1157.9, + "us": 1165.5, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 1291.4, + "us": 1276.8, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1554.3, + "us": 1554.8, "level": "full" }, "insitu (copy)": { - "us": 1590.2, + "us": 1577.5, "level": "full" }, "Document (string stream)": { - "us": 1594.0, + "us": 1584.2, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 1612.0, + "us": 1616.1, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1621.7, + "us": 1621.3, + "level": "no UTF-8" + }, + "Document (raw numbers) (no encoding check)": { + "us": 1694.1, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1691.1, + "us": 1694.6, "level": "full" }, - "Document (raw numbers) (no encoding check)": { - "us": 1697.8, - "level": "no UTF-8" - }, "Document": { - "us": 1704.6, + "us": 1730.1, "level": "full" }, "Document (raw numbers)": { - "us": 1777.5, + "us": 1808.6, "level": "full" } } @@ -6476,30 +6476,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 690.8, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 690.8, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 690.8, - "level": "full" - }, - "structs": { - "us": 812.8, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "structs (copy)", @@ -6523,69 +6499,93 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 690.8, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 690.8, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 690.8, + "level": "full" + }, + "structs": { + "us": 812.8, + "level": "full" + } + } } }, "canada": { "nlohmann json_document": { "best": { "variant": "parse", - "us": 956.4, + "us": 943.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 956.4, + "us": 943.5, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 956.0, + "us": 942.3, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 956.0, + "us": 942.3, "level": "full" }, "variants": { "read (reused)": { - "us": 956.0, + "us": 942.3, "level": "full" }, "parse": { - "us": 956.4, + "us": 943.5, "level": "full" }, "structs (from_json)": { - "us": 962.8, + "us": 945.7, "level": "full" }, "parse_copy": { - "us": 999.8, + "us": 977.8, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "structs (from_json)", - "us": 6047.2, + "variant": "parse", + "us": 5088.1, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 6047.2, + "variant": "parse", + "us": 5088.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "structs (from_json)": { - "us": 6047.2, + "parse": { + "us": 5088.1, "level": "full" }, - "parse": { - "us": 6055.2, + "structs (from_json)": { + "us": 5092.2, "level": "full" } } @@ -6593,43 +6593,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 1484.6, + "us": 1489.4, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 1484.6, + "us": 1489.4, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 1492.2, + "us": 1509.6, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1492.2, + "us": 1509.6, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 1461.4, + "us": 1455.5, "level": "full" }, "insitu (copy)": { - "us": 1484.6, - "level": "full" - }, - "read (reused allocator)": { - "us": 1492.2, + "us": 1489.4, "level": "full" }, "read": { - "us": 1493.8, + "us": 1496.3, + "level": "full" + }, + "read (reused allocator)": { + "us": 1509.6, "level": "full" }, "read (raw numbers)": { - "us": 1729.4, + "us": 1730.3, "level": "full" } } @@ -6637,47 +6637,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 1886.2, + "us": 1892.9, "level": "full" }, "best_any": { - "variant": "On-Demand (key selectors)", - "us": 566.2, + "variant": "On-Demand", + "us": 571.4, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 1883.7, + "us": 1891.1, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 573.2, + "us": 568.2, "level": "partial" }, "variants": { - "On-Demand (key selectors)": { - "us": 566.2, + "On-Demand (reused)": { + "us": 568.2, "level": "partial" }, "On-Demand": { - "us": 567.0, + "us": 571.4, "level": "partial" }, - "On-Demand (reused)": { - "us": 573.2, + "On-Demand (key selectors)": { + "us": 571.5, "level": "partial" }, "On-Demand structs": { - "us": 697.8, + "us": 697.4, "level": "partial" }, "DOM (reused)": { - "us": 1883.7, + "us": 1891.1, "level": "full" }, "DOM": { - "us": 1886.2, + "us": 1892.9, "level": "full" } } @@ -6686,14 +6686,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 2585.5, + "us": 2611.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 2585.5, + "us": 2611.1, "level": "no UTF-8" } } @@ -6701,44 +6701,44 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 1315.8, + "us": 1303.2, "level": "full" }, "best_any": { "variant": "structs", - "us": 313.3, + "us": 310.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 313.3, + "us": 310.4, "level": "partial" }, "structs (validate_skipped)": { - "us": 1315.8, + "us": 1303.2, "level": "full" }, "lazy_json": { - "us": 1993.4, + "us": 2003.1, "level": "partial" }, "generic (double)": { - "us": 5937.2, + "us": 5934.2, "level": "partial" }, "generic (double, strict)": { - "us": 5942.6, - "level": "full" - }, - "generic (strict)": { - "us": 9359.8, + "us": 5946.0, "level": "full" }, "generic": { - "us": 9409.2, + "us": 9340.6, "level": "partial" + }, + "generic (strict)": { + "us": 9377.7, + "level": "full" } }, "excluded": { @@ -6748,35 +6748,35 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 3650.1, + "us": 3638.2, "level": "full" }, "best_any": { "variant": "parse", - "us": 3650.1, + "us": 3638.2, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 3669.6, + "us": 3627.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 3669.6, + "us": 3627.8, "level": "full" }, "variants": { - "parse": { - "us": 3650.1, + "parser (reused)": { + "us": 3627.8, "level": "full" }, - "parser (reused)": { - "us": 3669.6, + "parse": { + "us": 3638.2, "level": "full" }, "parse_into structs": { - "us": 3773.2, + "us": 3768.2, "level": "full" } }, @@ -6787,71 +6787,71 @@ "RapidJSON": { "best": { "variant": "Document (string stream)", - "us": 6776.0, + "us": 6813.8, "level": "full" }, "best_any": { - "variant": "Document (string stream)", - "us": 6776.0, - "level": "full" + "variant": "Document (string stream) (no encoding check)", + "us": 6744.7, + "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 7377.9, + "us": 7433.9, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 7377.9, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 7330.5, + "level": "no UTF-8" }, "variants": { + "Document (string stream) (no encoding check)": { + "us": 6744.7, + "level": "no UTF-8" + }, + "insitu (copy untimed) (no encoding check)": { + "us": 6804.0, + "level": "no UTF-8" + }, "Document (string stream)": { - "us": 6776.0, + "us": 6813.8, "level": "full" }, "insitu (copy)": { - "us": 6799.9, - "level": "full" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 6825.8, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 6857.2, - "level": "no UTF-8" - }, - "insitu (copy untimed)": { - "us": 6865.2, + "us": 6836.9, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 6872.9, + "us": 6871.9, "level": "no UTF-8" }, - "Document (no encoding check)": { - "us": 7347.1, - "level": "no UTF-8" - }, - "Document": { - "us": 7358.0, - "level": "full" - }, - "Document (reused allocator)": { - "us": 7377.9, + "insitu (copy untimed)": { + "us": 6891.3, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 7422.8, + "us": 7330.5, + "level": "no UTF-8" + }, + "Document": { + "us": 7344.2, + "level": "full" + }, + "Document (reused allocator)": { + "us": 7433.9, + "level": "full" + }, + "Document (no encoding check)": { + "us": 7473.3, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 9466.5, + "us": 9457.9, "level": "no UTF-8" }, "Document (raw numbers)": { - "us": 9559.0, + "us": 9481.1, "level": "full" } } @@ -6884,30 +6884,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 1936.4, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 1936.4, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 1936.4, - "level": "full" - }, - "structs": { - "us": 2073.5, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "structs (copy)", @@ -6931,45 +6907,69 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 1936.4, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 1936.4, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 1936.4, + "level": "full" + }, + "structs": { + "us": 2073.5, + "level": "full" + } + } } }, "jeopardy": { "nlohmann json_document": { "best": { "variant": "parse", - "us": 24991.3, + "us": 24800.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 24991.3, + "us": 24800.6, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 24108.3, + "us": 24371.6, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 24108.3, + "us": 24371.6, "level": "full" }, "variants": { "read (reused)": { - "us": 24108.3, + "us": 24371.6, "level": "full" }, "parse": { - "us": 24991.3, + "us": 24800.6, "level": "full" }, "parse_copy": { - "us": 26098.8, + "us": 25980.0, "level": "full" }, "structs (from_json)": { - "us": 30575.1, + "us": 30264.4, "level": "full" } } @@ -6977,23 +6977,23 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 179533.0, + "us": 163712.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 179533.0, + "us": 163712.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 179533.0, + "us": 163712.5, "level": "full" }, "structs (from_json)": { - "us": 183413.8, + "us": 165077.7, "level": "full" } } @@ -7001,43 +7001,43 @@ "yyjson": { "best": { "variant": "read (raw numbers)", - "us": 33002.2, + "us": 32776.8, "level": "full" }, "best_any": { "variant": "read (raw numbers)", - "us": 33002.2, + "us": 32776.8, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 33930.3, + "us": 33605.4, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 33930.3, + "us": 33605.4, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 32514.5, + "us": 32306.4, "level": "full" }, "read (raw numbers)": { - "us": 33002.2, - "level": "full" - }, - "read (reused allocator)": { - "us": 33930.3, + "us": 32776.8, "level": "full" }, "read": { - "us": 34016.8, + "us": 33534.5, + "level": "full" + }, + "read (reused allocator)": { + "us": 33605.4, "level": "full" }, "insitu (copy)": { - "us": 34161.8, + "us": 33619.4, "level": "full" } } @@ -7045,47 +7045,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 30504.0, + "us": 30713.9, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 19562.1, + "us": 19632.7, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 30308.7, + "us": 30673.7, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 19607.0, + "us": 19588.8, "level": "partial" }, "variants": { - "On-Demand": { - "us": 19562.1, + "On-Demand (reused)": { + "us": 19588.8, "level": "partial" }, - "On-Demand (reused)": { - "us": 19607.0, + "On-Demand": { + "us": 19632.7, "level": "partial" }, "On-Demand (key selectors)": { - "us": 22068.9, + "us": 22098.1, "level": "partial" }, "On-Demand structs": { - "us": 27406.3, + "us": 27474.9, "level": "partial" }, "DOM (reused)": { - "us": 30308.7, + "us": 30673.7, "level": "full" }, "DOM": { - "us": 30504.0, + "us": 30713.9, "level": "full" } } @@ -7094,14 +7094,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 45858.5, + "us": 46355.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 45858.5, + "us": 46355.6, "level": "no UTF-8" } } @@ -7109,44 +7109,44 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 46924.4, + "us": 47692.1, "level": "full" }, "best_any": { "variant": "structs", - "us": 37578.0, + "us": 36012.8, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 37578.0, + "us": 36012.8, "level": "partial" }, "structs (validate_skipped)": { - "us": 46924.4, - "level": "full" - }, - "generic (double, strict)": { - "us": 95348.5, + "us": 47692.1, "level": "full" }, "generic (double)": { - "us": 95425.0, + "us": 95434.2, "level": "partial" }, + "generic (double, strict)": { + "us": 96062.9, + "level": "full" + }, "lazy_json": { - "us": 98994.3, + "us": 100388.6, + "level": "partial" + }, + "generic": { + "us": 139199.4, "level": "partial" }, "generic (strict)": { - "us": 136975.1, + "us": 139744.5, "level": "full" - }, - "generic": { - "us": 137208.3, - "level": "partial" } }, "excluded": { @@ -7156,35 +7156,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 67255.4, + "us": 67922.9, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 67255.4, + "us": 67922.9, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 94889.2, + "us": 95880.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 94889.2, + "us": 95880.8, "level": "full" }, "variants": { "parse_into structs": { - "us": 67255.4, - "level": "full" - }, - "parse": { - "us": 94295.5, + "us": 67922.9, "level": "full" }, "parser (reused)": { - "us": 94889.2, + "us": 95880.8, + "level": "full" + }, + "parse": { + "us": 96336.2, "level": "full" } }, @@ -7195,71 +7195,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 144436.2, + "us": 144649.4, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 67089.8, + "us": 67617.2, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 157473.5, + "us": 159328.0, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 145266.0, + "us": 145148.5, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 65624.6, + "us": 66707.6, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 67089.8, + "us": 67617.2, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 86510.8, + "us": 86640.3, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 141509.4, + "us": 142970.9, "level": "full" }, "insitu (copy)": { - "us": 144436.2, + "us": 144649.4, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 145266.0, + "us": 145148.5, "level": "no UTF-8" }, "Document (string stream)": { - "us": 146474.4, + "us": 146465.2, "level": "full" }, "Document (raw numbers) (no encoding check)": { - "us": 147821.3, + "us": 148328.8, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 148806.2, + "us": 148361.5, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 157473.5, - "level": "full" - }, - "Document": { - "us": 161788.8, + "us": 159328.0, "level": "full" }, "Document (raw numbers)": { - "us": 162254.5, + "us": 161326.6, + "level": "full" + }, + "Document": { + "us": 162234.3, "level": "full" } } @@ -7292,30 +7292,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 40660.1, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 40660.1, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 40660.1, - "level": "full" - }, - "structs": { - "us": 53704.8, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "structs (copy)", @@ -7339,6 +7315,30 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 40660.1, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 40660.1, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 40660.1, + "level": "full" + }, + "structs": { + "us": 53704.8, + "level": "full" + } + } } }, "status": { @@ -7385,23 +7385,23 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 7.6, + "us": 6.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 7.6, + "us": 6.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 7.6, + "us": 6.6, "level": "full" }, "structs (from_json)": { - "us": 7.6, + "us": 6.6, "level": "full" } } @@ -7541,7 +7541,7 @@ "level": "partial" }, "generic (double)": { - "us": 5.2, + "us": 5.1, "level": "partial" }, "generic (double, strict)": { @@ -7549,7 +7549,7 @@ "level": "full" }, "generic": { - "us": 7.2, + "us": 7.1, "level": "partial" }, "generic (strict)": { @@ -7603,17 +7603,17 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 6.5, + "us": 6.6, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 2.7, + "us": 2.8, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 6.3, + "us": 6.4, "level": "full" }, "best_reused_any": { @@ -7623,11 +7623,11 @@ }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 2.6, + "us": 2.7, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 2.7, + "us": 2.8, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { @@ -7639,36 +7639,36 @@ "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 6.0, - "level": "no UTF-8" - }, - "Document (raw numbers) (no encoding check)": { "us": 6.1, "level": "no UTF-8" }, - "Document (reused allocator)": { - "us": 6.3, - "level": "full" + "Document (raw numbers) (no encoding check)": { + "us": 6.2, + "level": "no UTF-8" }, - "insitu (copy)": { - "us": 6.5, + "Document (reused allocator)": { + "us": 6.4, "level": "full" }, "insitu (copy untimed)": { "us": 6.5, "level": "full" }, - "Document": { - "us": 6.8, + "insitu (copy)": { + "us": 6.6, "level": "full" }, "Document (string stream)": { "us": 6.8, "level": "full" }, - "Document (raw numbers)": { + "Document": { "us": 6.9, "level": "full" + }, + "Document (raw numbers)": { + "us": 7.1, + "level": "full" } } }, @@ -7700,30 +7700,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "structs", - "us": 1.7, - "level": "full" - }, - "best_any": { - "variant": "structs", - "us": 1.7, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "structs": { - "us": 1.7, - "level": "full" - }, - "Value": { - "us": 1.7, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "structs (copy)", @@ -7747,45 +7723,69 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "structs", + "us": 1.7, + "level": "full" + }, + "best_any": { + "variant": "structs", + "us": 1.7, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "structs": { + "us": 1.7, + "level": "full" + }, + "Value": { + "us": 1.7, + "level": "full" + } + } } }, "twitter_min": { "nlohmann json_document": { "best": { "variant": "parse", - "us": 165.1, + "us": 164.9, "level": "full" }, "best_any": { "variant": "parse", - "us": 165.1, + "us": 164.9, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 160.2, + "us": 163.0, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 160.2, + "us": 163.0, "level": "full" }, "variants": { "read (reused)": { - "us": 160.2, + "us": 163.0, "level": "full" }, "parse": { - "us": 165.1, + "us": 164.9, "level": "full" }, "structs (from_json)": { - "us": 165.5, + "us": 166.8, "level": "full" }, "parse_copy": { - "us": 171.0, + "us": 174.8, "level": "full" } } @@ -7793,23 +7793,23 @@ "nlohmann json": { "best": { "variant": "structs (from_json)", - "us": 1331.1, + "us": 1191.8, "level": "full" }, "best_any": { "variant": "structs (from_json)", - "us": 1331.1, + "us": 1191.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "structs (from_json)": { - "us": 1331.1, + "us": 1191.8, "level": "full" }, "parse": { - "us": 1333.0, + "us": 1193.0, "level": "full" } } @@ -7817,43 +7817,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 169.3, + "us": 172.7, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 169.3, + "us": 172.7, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 169.7, + "us": 169.8, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 169.7, + "us": 169.8, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 159.0, - "level": "full" - }, - "insitu (copy)": { - "us": 169.3, + "us": 162.8, "level": "full" }, "read (reused allocator)": { - "us": 169.7, + "us": 169.8, + "level": "full" + }, + "insitu (copy)": { + "us": 172.7, "level": "full" }, "read": { - "us": 175.3, + "us": 172.9, "level": "full" }, "read (raw numbers)": { - "us": 189.2, + "us": 189.0, "level": "full" } } @@ -7861,47 +7861,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 171.2, + "us": 173.7, "level": "full" }, "best_any": { "variant": "On-Demand structs", - "us": 105.9, + "us": 109.3, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 176.5, + "us": 176.3, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 117.6, + "us": 120.7, "level": "partial" }, "variants": { "On-Demand structs": { - "us": 105.9, + "us": 109.3, "level": "partial" }, "On-Demand (key selectors)": { - "us": 115.2, + "us": 113.7, "level": "partial" }, "On-Demand": { - "us": 115.6, + "us": 118.8, "level": "partial" }, "On-Demand (reused)": { - "us": 117.6, + "us": 120.7, "level": "partial" }, "DOM": { - "us": 171.2, + "us": 173.7, "level": "full" }, "DOM (reused)": { - "us": 176.5, + "us": 176.3, "level": "full" } } @@ -7910,14 +7910,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 261.5, + "us": 263.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 261.5, + "us": 263.0, "level": "no UTF-8" } } @@ -7925,43 +7925,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 264.0, + "us": 269.5, "level": "full" }, "best_any": { "variant": "structs", - "us": 216.6, + "us": 220.1, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 216.6, + "us": 220.1, "level": "partial" }, "structs (validate_skipped)": { - "us": 264.0, + "us": 269.5, "level": "full" }, "lazy_json": { - "us": 450.2, - "level": "partial" - }, - "generic (double)": { - "us": 889.6, + "us": 436.5, "level": "partial" }, "generic (double, strict)": { - "us": 891.2, + "us": 899.2, "level": "full" }, + "generic (double)": { + "us": 900.9, + "level": "partial" + }, "generic": { - "us": 1232.0, + "us": 1231.4, "level": "partial" }, "generic (strict)": { - "us": 1234.8, + "us": 1246.5, "level": "full" } }, @@ -7972,35 +7972,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 539.9, + "us": 552.5, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 539.9, + "us": 552.5, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 787.9, + "us": 801.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 787.9, + "us": 801.8, "level": "full" }, "variants": { "parse_into structs": { - "us": 539.9, - "level": "full" - }, - "parser (reused)": { - "us": 787.9, + "us": 552.5, "level": "full" }, "parse": { - "us": 795.6, + "us": 799.8, + "level": "full" + }, + "parser (reused)": { + "us": 801.8, "level": "full" } }, @@ -8011,71 +8011,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1090.3, + "us": 1096.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 485.6, + "us": 487.1, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1161.6, + "us": 1178.5, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1026.3, + "us": 1029.3, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 482.4, + "us": 470.7, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 485.6, + "us": 487.1, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 666.8, + "us": 657.5, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1026.3, + "us": 1029.3, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1027.3, + "us": 1037.4, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 1046.8, + "us": 1058.5, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1082.0, + "us": 1088.6, "level": "full" }, "insitu (copy)": { - "us": 1090.3, + "us": 1096.1, "level": "full" }, "Document (string stream)": { - "us": 1159.7, + "us": 1174.6, "level": "full" }, "Document (reused allocator)": { - "us": 1161.6, + "us": 1178.5, "level": "full" }, "Document": { - "us": 1173.4, + "us": 1179.5, "level": "full" }, "Document (raw numbers)": { - "us": 1188.2, + "us": 1216.4, "level": "full" } } @@ -8108,30 +8108,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 242.4, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 242.4, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 242.4, - "level": "full" - }, - "structs": { - "us": 301.5, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "structs (copy)", @@ -8155,45 +8131,69 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 242.4, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 242.4, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 242.4, + "level": "full" + }, + "structs": { + "us": 301.5, + "level": "full" + } + } } }, "citm_catalog_min": { "nlohmann json_document": { "best": { "variant": "parse", - "us": 247.1, + "us": 250.9, "level": "full" }, "best_any": { "variant": "parse", - "us": 247.1, + "us": 250.9, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 245.4, + "us": 248.3, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 245.4, + "us": 248.3, "level": "full" }, "variants": { "read (reused)": { - "us": 245.4, + "us": 248.3, "level": "full" }, "parse": { - "us": 247.1, + "us": 250.9, "level": "full" }, "parse_copy": { - "us": 254.4, + "us": 255.5, "level": "full" }, "structs (from_json)": { - "us": 262.1, + "us": 264.0, "level": "full" } } @@ -8201,23 +8201,23 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 2287.4, + "us": 1952.8, "level": "full" }, "best_any": { "variant": "parse", - "us": 2287.4, + "us": 1952.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 2287.4, + "us": 1952.8, "level": "full" }, "structs (from_json)": { - "us": 2293.4, + "us": 1984.2, "level": "full" } } @@ -8225,43 +8225,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 284.2, + "us": 286.8, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 284.2, + "us": 286.8, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 289.0, + "us": 292.0, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 289.0, + "us": 292.0, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 277.2, + "us": 279.2, "level": "full" }, "insitu (copy)": { - "us": 284.2, - "level": "full" - }, - "read (reused allocator)": { - "us": 289.0, + "us": 286.8, "level": "full" }, "read": { - "us": 289.3, + "us": 287.0, + "level": "full" + }, + "read (reused allocator)": { + "us": 292.0, "level": "full" }, "read (raw numbers)": { - "us": 349.0, + "us": 351.3, "level": "full" } } @@ -8269,17 +8269,17 @@ "simdjson": { "best": { "variant": "DOM", - "us": 327.9, + "us": 326.0, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 221.5, + "us": 221.4, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 325.2, + "us": 324.2, "level": "full" }, "best_reused_any": { @@ -8289,7 +8289,7 @@ }, "variants": { "On-Demand": { - "us": 221.5, + "us": 221.4, "level": "partial" }, "On-Demand (reused)": { @@ -8297,19 +8297,19 @@ "level": "partial" }, "On-Demand (key selectors)": { - "us": 224.7, + "us": 227.7, "level": "partial" }, "On-Demand structs": { - "us": 240.0, + "us": 244.1, "level": "partial" }, "DOM (reused)": { - "us": 325.2, + "us": 324.2, "level": "full" }, "DOM": { - "us": 327.9, + "us": 326.0, "level": "full" } } @@ -8318,14 +8318,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 555.4, + "us": 551.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 555.4, + "us": 551.1, "level": "no UTF-8" } } @@ -8333,44 +8333,44 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 469.6, + "us": 477.2, "level": "full" }, "best_any": { "variant": "structs", - "us": 129.9, + "us": 130.5, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 129.9, + "us": 130.5, "level": "partial" }, "structs (validate_skipped)": { - "us": 469.6, + "us": 477.2, "level": "full" }, "lazy_json": { - "us": 1269.0, + "us": 1277.2, "level": "partial" }, "generic (double)": { - "us": 1610.8, + "us": 1605.5, "level": "partial" }, "generic (double, strict)": { - "us": 1637.5, - "level": "full" - }, - "generic (strict)": { - "us": 2376.0, + "us": 1610.1, "level": "full" }, "generic": { - "us": 2390.6, + "us": 2383.6, "level": "partial" + }, + "generic (strict)": { + "us": 2396.6, + "level": "full" } }, "excluded": { @@ -8380,35 +8380,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 691.7, + "us": 692.0, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 691.7, + "us": 692.0, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 959.3, + "us": 963.1, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 959.3, + "us": 963.1, "level": "full" }, "variants": { "parse_into structs": { - "us": 691.7, + "us": 692.0, "level": "full" }, "parse": { - "us": 956.2, + "us": 952.6, "level": "full" }, "parser (reused)": { - "us": 959.3, + "us": 963.1, "level": "full" } }, @@ -8419,71 +8419,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1125.3, + "us": 1123.5, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 759.9, + "us": 761.8, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1226.4, + "us": 1236.4, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1140.9, + "us": 1145.2, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 748.7, + "us": 756.2, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 759.9, + "us": 761.8, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 998.2, + "us": 991.0, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1121.1, + "us": 1119.1, "level": "full" }, "insitu (copy)": { - "us": 1125.3, + "us": 1123.5, "level": "full" }, "Document (no encoding check)": { - "us": 1132.7, + "us": 1145.1, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1140.9, + "us": 1145.2, "level": "no UTF-8" }, "Document (string stream)": { - "us": 1152.3, + "us": 1165.0, "level": "full" }, "Document": { - "us": 1218.8, + "us": 1229.6, "level": "full" }, "Document (reused allocator)": { - "us": 1226.4, + "us": 1236.4, "level": "full" }, "Document (raw numbers) (no encoding check)": { - "us": 1381.0, + "us": 1368.9, "level": "no UTF-8" }, "Document (raw numbers)": { - "us": 1443.1, + "us": 1452.0, "level": "full" } } @@ -8516,30 +8516,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 393.9, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 393.9, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 393.9, - "level": "full" - }, - "structs": { - "us": 586.0, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "structs (copy)", @@ -8563,6 +8539,30 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 393.9, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 393.9, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 393.9, + "level": "full" + }, + "structs": { + "us": 586.0, + "level": "full" + } + } } } }, @@ -8571,23 +8571,23 @@ "nlohmann json_document": { "best": { "variant": "editable (source numbers)", - "us": 282.8, + "us": 280.6, "level": "full" }, "best_any": { "variant": "editable (source numbers)", - "us": 282.8, + "us": 280.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable (source numbers)": { - "us": 282.8, + "us": 280.6, "level": "full" }, "editable": { - "us": 291.0, + "us": 287.5, "level": "full" } } @@ -8595,23 +8595,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 1273.0, + "us": 1114.9, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 1273.0, + "us": 1114.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 1273.0, + "us": 1114.9, "level": "full" }, "parse": { - "us": 1617.2, + "us": 1467.1, "level": "full" } } @@ -8619,27 +8619,27 @@ "yyjson": { "best": { "variant": "insitu (copy) + mut copy", - "us": 439.6, + "us": 440.0, "level": "full" }, "best_any": { "variant": "insitu (copy) + mut copy", - "us": 439.6, + "us": 440.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 426.7, + "us": 426.4, "level": "full" }, "insitu (copy) + mut copy": { - "us": 439.6, + "us": 440.0, "level": "full" }, "mut copy": { - "us": 443.3, + "us": 448.0, "level": "full" } } @@ -8648,14 +8648,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 486.0, + "us": 488.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 486.0, + "us": 488.3, "level": "no UTF-8" } } @@ -8663,23 +8663,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 1539.1, + "us": 1527.1, "level": "full" }, "best_any": { "variant": "generic", - "us": 1522.3, + "us": 1524.2, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 1522.3, + "us": 1524.2, "level": "partial" }, "generic (strict)": { - "us": 1539.1, + "us": 1527.1, "level": "full" } }, @@ -8691,19 +8691,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 1367.5, + "us": 1355.3, "level": "full" }, "best_any": { "variant": "parse", - "us": 1367.5, + "us": 1355.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 1367.5, + "us": 1355.3, "level": "full" } } @@ -8711,47 +8711,47 @@ "RapidJSON": { "best": { "variant": "Document", - "us": 1921.7, + "us": 1924.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1356.4, + "us": 1356.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1343.5, + "us": 1343.2, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1356.4, + "us": 1356.0, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 1486.8, + "us": 1462.8, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1761.1, + "us": 1749.9, "level": "no UTF-8" }, "Document": { - "us": 1921.7, + "us": 1924.1, "level": "full" }, "insitu (copy untimed)": { - "us": 1932.2, + "us": 1924.9, "level": "full" }, "insitu (copy)": { - "us": 1938.6, + "us": 1933.3, "level": "full" }, "Document (string stream)": { - "us": 2012.1, + "us": 1992.5, "level": "full" } } @@ -8776,26 +8776,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 633.8, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 633.8, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 633.8, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -8819,29 +8799,49 @@ "level": "full" } } - } - }, - "citm_catalog": { - "nlohmann json_document": { + }, + "sonic-rs": { "best": { - "variant": "editable", - "us": 559.5, + "variant": "Value", + "us": 633.8, "level": "full" }, "best_any": { - "variant": "editable", - "us": 559.5, + "variant": "Value", + "us": 633.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "editable": { - "us": 559.5, + "Value": { + "us": 633.8, + "level": "full" + } + } + } + }, + "citm_catalog": { + "nlohmann json_document": { + "best": { + "variant": "editable (source numbers)", + "us": 556.8, + "level": "full" + }, + "best_any": { + "variant": "editable (source numbers)", + "us": 556.8, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "editable (source numbers)": { + "us": 556.8, "level": "full" }, - "editable (source numbers)": { - "us": 560.4, + "editable": { + "us": 559.2, "level": "full" } } @@ -8849,51 +8849,51 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 2344.5, + "us": 2065.0, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 2344.5, + "us": 2065.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 2344.5, + "us": 2065.0, "level": "full" }, "parse": { - "us": 2734.6, + "us": 2436.7, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy) + mut copy", - "us": 909.2, + "variant": "mut copy", + "us": 904.3, "level": "full" }, "best_any": { - "variant": "insitu (copy) + mut copy", - "us": 909.2, + "variant": "mut copy", + "us": 904.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 881.9, - "level": "full" - }, - "insitu (copy) + mut copy": { - "us": 909.2, + "us": 887.6, "level": "full" }, "mut copy": { - "us": 911.0, + "us": 904.3, + "level": "full" + }, + "insitu (copy) + mut copy": { + "us": 904.4, "level": "full" } } @@ -8902,14 +8902,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1223.8, + "us": 1218.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1223.8, + "us": 1218.3, "level": "no UTF-8" } } @@ -8917,24 +8917,24 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3235.2, + "us": 3216.5, "level": "full" }, "best_any": { - "variant": "generic", - "us": 3230.2, - "level": "partial" + "variant": "generic (strict)", + "us": 3216.5, + "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic": { - "us": 3230.2, - "level": "partial" - }, "generic (strict)": { - "us": 3235.2, + "us": 3216.5, "level": "full" + }, + "generic": { + "us": 3225.2, + "level": "partial" } }, "excluded": { @@ -8945,19 +8945,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 1992.5, + "us": 1997.0, "level": "full" }, "best_any": { "variant": "parse", - "us": 1992.5, + "us": 1997.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 1992.5, + "us": 1997.0, "level": "full" } } @@ -8965,47 +8965,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 2426.0, + "us": 2393.3, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 2001.5, + "us": 1992.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1964.0, + "us": 1962.2, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 2001.5, + "us": 1992.5, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 2148.2, + "us": 2086.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 2387.9, + "us": 2368.2, "level": "full" }, "insitu (copy)": { - "us": 2426.0, + "us": 2393.3, "level": "full" }, "Document (string stream)": { - "us": 2433.3, + "us": 2397.8, "level": "full" }, "Document (no encoding check)": { - "us": 2461.9, + "us": 2434.9, "level": "no UTF-8" }, "Document": { - "us": 2534.7, + "us": 2514.0, "level": "full" } } @@ -9030,26 +9030,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 1256.8, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 1256.8, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 1256.8, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -9073,29 +9053,49 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 1256.8, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 1256.8, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 1256.8, + "level": "full" + } + } } }, "canada": { "nlohmann json_document": { "best": { "variant": "editable (source numbers)", - "us": 1484.0, + "us": 1504.5, "level": "full" }, "best_any": { "variant": "editable (source numbers)", - "us": 1484.0, + "us": 1504.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable (source numbers)": { - "us": 1484.0, + "us": 1504.5, "level": "full" }, "editable": { - "us": 2764.6, + "us": 2736.6, "level": "full" } } @@ -9103,23 +9103,23 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 8334.2, + "us": 7348.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 8334.2, + "us": 7348.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 8334.2, + "us": 7348.5, "level": "full" }, "ordered_json": { - "us": 8408.0, + "us": 7377.5, "level": "full" } } @@ -9127,27 +9127,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 3728.2, + "us": 3692.1, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 3728.2, + "us": 3692.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 3641.7, + "us": 3644.9, "level": "full" }, "mut copy": { - "us": 3728.2, + "us": 3692.1, "level": "full" }, "insitu (copy) + mut copy": { - "us": 3747.4, + "us": 3695.5, "level": "full" } } @@ -9156,14 +9156,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 5638.4, + "us": 5662.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 5638.4, + "us": 5662.2, "level": "no UTF-8" } } @@ -9171,24 +9171,24 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 11083.2, + "us": 11032.9, "level": "full" }, "best_any": { - "variant": "generic (strict)", - "us": 11083.2, - "level": "full" + "variant": "generic", + "us": 11007.8, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (strict)": { - "us": 11083.2, - "level": "full" - }, "generic": { - "us": 11123.5, + "us": 11007.8, "level": "partial" + }, + "generic (strict)": { + "us": 11032.9, + "level": "full" } }, "excluded": { @@ -9199,19 +9199,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 6572.8, + "us": 6521.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 6572.8, + "us": 6521.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 6572.8, + "us": 6521.6, "level": "full" } } @@ -9219,47 +9219,47 @@ "RapidJSON": { "best": { "variant": "Document (string stream)", - "us": 13835.7, + "us": 13711.3, "level": "full" }, "best_any": { "variant": "Document (string stream)", - "us": 13835.7, + "us": 13711.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "insitu (copy untimed) (no encoding check)": { - "us": 13793.7, - "level": "no UTF-8" - }, - "Document (string stream)": { - "us": 13835.7, + "insitu (copy untimed)": { + "us": 13629.2, "level": "full" }, - "insitu (copy untimed)": { - "us": 13873.8, + "Document (string stream)": { + "us": 13711.3, "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 13879.1, + "us": 13713.7, + "level": "no UTF-8" + }, + "insitu (copy) (no encoding check)": { + "us": 13715.7, "level": "no UTF-8" }, "insitu (copy)": { - "us": 13892.9, + "us": 13730.0, "level": "full" }, - "insitu (copy) (no encoding check)": { - "us": 13899.6, + "insitu (copy untimed) (no encoding check)": { + "us": 13731.0, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 14435.8, + "us": 14230.2, "level": "no UTF-8" }, "Document": { - "us": 14525.4, + "us": 14294.8, "level": "full" } } @@ -9284,26 +9284,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 4395.7, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 4395.7, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 4395.7, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -9327,29 +9307,49 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 4395.7, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 4395.7, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 4395.7, + "level": "full" + } + } } }, "jeopardy": { "nlohmann json_document": { "best": { "variant": "editable (source numbers)", - "us": 57634.6, + "us": 57885.4, "level": "full" }, "best_any": { "variant": "editable (source numbers)", - "us": 57634.6, + "us": 57885.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable (source numbers)": { - "us": 57634.6, + "us": 57885.4, "level": "full" }, "editable": { - "us": 58057.4, + "us": 58018.6, "level": "full" } } @@ -9357,23 +9357,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 203232.0, + "us": 162216.4, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 203232.0, + "us": 162216.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 203232.0, + "us": 162216.4, "level": "full" }, "parse": { - "us": 244854.9, + "us": 262787.0, "level": "full" } } @@ -9381,27 +9381,27 @@ "yyjson": { "best": { "variant": "insitu (copy) + mut copy", - "us": 84242.4, + "us": 84466.2, "level": "full" }, "best_any": { "variant": "insitu (copy) + mut copy", - "us": 84242.4, + "us": 84466.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 84238.9, + "us": 82342.6, "level": "full" }, "insitu (copy) + mut copy": { - "us": 84242.4, + "us": 84466.2, "level": "full" }, "mut copy": { - "us": 84575.2, + "us": 86031.8, "level": "full" } } @@ -9410,14 +9410,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 62688.4, + "us": 63697.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 62688.4, + "us": 63697.4, "level": "no UTF-8" } } @@ -9425,23 +9425,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 178332.9, + "us": 183648.2, "level": "full" }, "best_any": { "variant": "generic", - "us": 176396.9, + "us": 183024.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 176396.9, + "us": 183024.4, "level": "partial" }, "generic (strict)": { - "us": 178332.9, + "us": 183648.2, "level": "full" } }, @@ -9453,67 +9453,67 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 155237.3, + "us": 157849.0, "level": "full" }, "best_any": { "variant": "parse", - "us": 155237.3, + "us": 157849.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 155237.3, + "us": 157849.0, "level": "full" } } }, "RapidJSON": { "best": { - "variant": "insitu (copy)", - "us": 224246.6, + "variant": "Document (string stream)", + "us": 224328.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 145819.4, + "us": 147902.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 144741.2, + "us": 147524.2, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 145819.4, + "us": 147902.4, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 164924.7, + "us": 163554.0, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 223372.8, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 221270.2, - "level": "full" - }, - "insitu (copy)": { - "us": 224246.6, + "us": 224070.0, "level": "full" }, "Document (string stream)": { - "us": 224879.1, + "us": 224328.1, "level": "full" }, - "Document (no encoding check)": { - "us": 225430.5, - "level": "no UTF-8" + "insitu (copy)": { + "us": 225502.8, + "level": "full" }, "Document": { - "us": 240143.2, + "us": 238537.5, "level": "full" } } @@ -9538,26 +9538,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 140935.8, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 140935.8, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 140935.8, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -9581,6 +9561,26 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 140935.8, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 140935.8, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 140935.8, + "level": "full" + } + } } }, "status": { @@ -9611,23 +9611,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 7.1, + "us": 6.3, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 7.1, + "us": 6.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 7.1, + "us": 6.3, "level": "full" }, "parse": { - "us": 8.7, + "us": 7.7, "level": "full" } } @@ -9679,23 +9679,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 8.3, + "us": 8.4, "level": "full" }, "best_any": { "variant": "generic", - "us": 8.3, + "us": 8.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 8.3, + "us": 8.4, "level": "partial" }, "generic (strict)": { - "us": 8.3, + "us": 8.4, "level": "full" } }, @@ -9727,27 +9727,27 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 10.4, + "us": 10.5, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 6.6, + "us": 6.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { + "insitu (copy) (no encoding check)": { + "us": 6.5, + "level": "no UTF-8" + }, "insitu (copy untimed) (no encoding check)": { "us": 6.5, "level": "no UTF-8" }, - "insitu (copy) (no encoding check)": { - "us": 6.6, - "level": "no UTF-8" - }, "Document (string stream) (no encoding check)": { - "us": 7.6, + "us": 7.5, "level": "no UTF-8" }, "Document (no encoding check)": { @@ -9759,15 +9759,15 @@ "level": "full" }, "insitu (copy)": { - "us": 10.4, - "level": "full" - }, - "Document": { "us": 10.5, "level": "full" }, "Document (string stream)": { - "us": 10.6, + "us": 10.5, + "level": "full" + }, + "Document": { + "us": 10.7, "level": "full" } } @@ -9792,26 +9792,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 3.8, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 3.8, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 3.8, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -9835,29 +9815,49 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 3.8, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 3.8, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 3.8, + "level": "full" + } + } } }, "twitter_min": { "nlohmann json_document": { "best": { "variant": "editable (source numbers)", - "us": 260.5, + "us": 261.9, "level": "full" }, "best_any": { "variant": "editable (source numbers)", - "us": 260.5, + "us": 261.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable (source numbers)": { - "us": 260.5, + "us": 261.9, "level": "full" }, "editable": { - "us": 264.0, + "us": 269.8, "level": "full" } } @@ -9865,23 +9865,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 1238.4, + "us": 1079.4, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 1238.4, + "us": 1079.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 1238.4, + "us": 1079.4, "level": "full" }, "parse": { - "us": 1570.4, + "us": 1446.3, "level": "full" } } @@ -9889,27 +9889,27 @@ "yyjson": { "best": { "variant": "insitu (copy) + mut copy", - "us": 410.8, + "us": 415.9, "level": "full" }, "best_any": { "variant": "insitu (copy) + mut copy", - "us": 410.8, + "us": 415.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "insitu (copy) + mut copy": { - "us": 410.8, + "insitu (copy untimed) + mut copy": { + "us": 404.9, "level": "full" }, - "insitu (copy untimed) + mut copy": { - "us": 413.5, + "insitu (copy) + mut copy": { + "us": 415.9, "level": "full" }, "mut copy": { - "us": 416.3, + "us": 422.0, "level": "full" } } @@ -9918,14 +9918,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 359.7, + "us": 367.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 359.7, + "us": 367.6, "level": "no UTF-8" } } @@ -9933,23 +9933,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 1424.6, + "us": 1419.7, "level": "full" }, "best_any": { "variant": "generic", - "us": 1415.1, + "us": 1405.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 1415.1, + "us": 1405.9, "level": "partial" }, "generic (strict)": { - "us": 1424.6, + "us": 1419.7, "level": "full" } }, @@ -9961,19 +9961,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 1268.2, + "us": 1275.1, "level": "full" }, "best_any": { "variant": "parse", - "us": 1268.2, + "us": 1275.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 1268.2, + "us": 1275.1, "level": "full" } } @@ -9981,47 +9981,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1685.7, + "us": 1694.0, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1129.6, + "us": 1148.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1123.6, + "us": 1134.9, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1129.6, + "us": 1148.3, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 1238.1, + "us": 1238.0, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1575.2, + "us": 1585.5, "level": "no UTF-8" }, - "insitu (copy untimed)": { - "us": 1682.0, + "insitu (copy)": { + "us": 1694.0, "level": "full" }, - "insitu (copy)": { - "us": 1685.7, + "insitu (copy untimed)": { + "us": 1700.6, "level": "full" }, "Document": { - "us": 1720.0, + "us": 1735.5, "level": "full" }, "Document (string stream)": { - "us": 1721.3, + "us": 1742.9, "level": "full" } } @@ -10046,26 +10046,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 539.1, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 539.1, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 539.1, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -10089,29 +10069,49 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 539.1, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 539.1, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 539.1, + "level": "full" + } + } } }, "citm_catalog_min": { "nlohmann json_document": { "best": { "variant": "editable (source numbers)", - "us": 442.6, + "us": 443.5, "level": "full" }, "best_any": { "variant": "editable (source numbers)", - "us": 442.6, + "us": 443.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable (source numbers)": { - "us": 442.6, + "us": 443.5, "level": "full" }, "editable": { - "us": 444.7, + "us": 443.7, "level": "full" } } @@ -10119,51 +10119,51 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 2222.5, + "us": 1872.6, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 2222.5, + "us": 1872.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 2222.5, + "us": 1872.6, "level": "full" }, "parse": { - "us": 2598.0, + "us": 2261.9, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy) + mut copy", - "us": 704.0, + "variant": "mut copy", + "us": 710.0, "level": "full" }, "best_any": { - "variant": "insitu (copy) + mut copy", - "us": 704.0, + "variant": "mut copy", + "us": 710.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 700.5, - "level": "full" - }, - "insitu (copy) + mut copy": { - "us": 704.0, + "us": 703.4, "level": "full" }, "mut copy": { - "us": 712.1, + "us": 710.0, + "level": "full" + }, + "insitu (copy) + mut copy": { + "us": 720.0, "level": "full" } } @@ -10172,14 +10172,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 774.2, + "us": 782.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 774.2, + "us": 782.5, "level": "no UTF-8" } } @@ -10187,23 +10187,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 2911.8, + "us": 2887.9, "level": "full" }, "best_any": { "variant": "generic", - "us": 2897.2, + "us": 2858.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 2897.2, + "us": 2858.4, "level": "partial" }, "generic (strict)": { - "us": 2911.8, + "us": 2887.9, "level": "full" } }, @@ -10215,19 +10215,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 1463.3, + "us": 1481.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 1463.3, + "us": 1481.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 1463.3, + "us": 1481.5, "level": "full" } } @@ -10235,47 +10235,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1969.5, + "us": 1964.4, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1587.5, + "us": 1626.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1580.4, + "us": 1599.3, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1587.5, + "us": 1626.6, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 1824.4, - "level": "no UTF-8" - }, - "insitu (copy untimed)": { - "us": 1948.5, - "level": "full" - }, - "Document (no encoding check)": { - "us": 1950.3, + "us": 1812.2, "level": "no UTF-8" }, "insitu (copy)": { - "us": 1969.5, + "us": 1964.4, "level": "full" }, + "insitu (copy untimed)": { + "us": 1972.2, + "level": "full" + }, + "Document (no encoding check)": { + "us": 1978.2, + "level": "no UTF-8" + }, "Document (string stream)": { - "us": 1985.5, + "us": 1989.0, "level": "full" }, "Document": { - "us": 2033.5, + "us": 2050.3, "level": "full" } } @@ -10300,26 +10300,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 971.7, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 971.7, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 971.7, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -10343,6 +10323,26 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 971.7, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 971.7, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 971.7, + "level": "full" + } + } } } }, @@ -10351,39 +10351,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 252.4, + "us": 252.3, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 252.4, + "us": 252.3, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 246.9, + "us": 248.5, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 246.9, + "us": 248.5, "level": "full" }, "variants": { "read + dump (reused)": { - "us": 246.9, + "us": 248.5, "level": "full" }, "parse + dump (source numbers)": { - "us": 252.4, + "us": 252.3, "level": "full" }, "parse + dump": { - "us": 259.4, + "us": 261.3, "level": "full" }, "parse_copy + dump": { - "us": 263.6, + "us": 265.3, "level": "full" } } @@ -10391,19 +10391,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 1600.2, + "us": 1445.5, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 1600.2, + "us": 1445.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 1600.2, + "us": 1445.5, "level": "full" } } @@ -10411,22 +10411,22 @@ "yyjson": { "best": { "variant": "insitu (copy) + write", - "us": 292.9, + "us": 298.2, "level": "full" }, "best_any": { "variant": "insitu (copy) + write", - "us": 292.9, + "us": 298.2, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 298.2, + "us": 296.8, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 298.2, + "us": 296.8, "level": "full" }, "variants": { @@ -10434,20 +10434,20 @@ "us": 279.2, "level": "full" }, - "insitu (copy) + write": { - "us": 292.9, + "read + write (reused allocator)": { + "us": 296.8, "level": "full" }, - "read + write (reused allocator)": { + "insitu (copy) + write": { "us": 298.2, "level": "full" }, "read + write": { - "us": 300.2, + "us": 301.5, "level": "full" }, "read (raw numbers) + write": { - "us": 312.6, + "us": 307.0, "level": "full" } } @@ -10455,35 +10455,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 423.4, + "us": 424.7, "level": "full" }, "best_any": { "variant": "minify", - "us": 62.3, + "us": 62.5, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 417.4, + "us": 410.5, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 417.4, + "us": 410.5, "level": "full" }, "variants": { "minify": { - "us": 62.3, + "us": 62.5, "level": "partial" }, "DOM (reused) + to_string": { - "us": 417.4, + "us": 410.5, "level": "full" }, "DOM + to_string": { - "us": 423.4, + "us": 424.7, "level": "full" } } @@ -10492,14 +10492,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 500.2, + "us": 504.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 500.2, + "us": 504.0, "level": "no UTF-8" } } @@ -10507,28 +10507,28 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 1505.4, + "us": 1512.0, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 281.1, + "us": 284.5, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 281.1, + "us": 284.5, + "level": "partial" + }, + "generic": { + "us": 1497.3, "level": "partial" }, "generic (strict)": { - "us": 1505.4, + "us": 1512.0, "level": "full" - }, - "generic": { - "us": 1518.0, - "level": "partial" } }, "excluded": { @@ -10539,95 +10539,95 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 1393.2, + "us": 1407.4, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 1393.2, + "us": 1407.4, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 1410.6, + "us": 1390.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 1410.6, + "us": 1390.8, "level": "full" }, "variants": { - "parse + serialize": { - "us": 1393.2, + "parser (reused) + serialize": { + "us": 1390.8, "level": "full" }, - "parser (reused) + serialize": { - "us": 1410.6, + "parse + serialize": { + "us": 1407.4, "level": "full" } } }, "RapidJSON": { "best": { - "variant": "SAX to Writer (raw numbers)", - "us": 1513.0, + "variant": "SAX to Writer", + "us": 1523.2, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 1058.3, + "us": 1044.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 1995.4, + "us": 1972.3, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 1824.8, + "us": 1818.1, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 1058.3, + "us": 1044.3, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 1315.2, + "us": 1325.3, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 1352.4, + "us": 1349.0, "level": "no UTF-8" }, - "SAX to Writer (raw numbers)": { - "us": 1513.0, + "SAX to Writer": { + "us": 1523.2, "level": "full" }, - "SAX to Writer": { - "us": 1525.4, + "SAX to Writer (raw numbers)": { + "us": 1549.5, "level": "full" }, "SAX to Writer (string stream)": { - "us": 1575.7, + "us": 1553.5, "level": "full" }, "Document + Writer (no encoding check)": { - "us": 1798.8, + "us": 1811.6, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 1824.8, + "us": 1818.1, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 1995.4, + "us": 1972.3, "level": "full" }, "Document + Writer": { - "us": 1996.8, + "us": 1986.1, "level": "full" } } @@ -10652,26 +10652,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 535.3, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 535.3, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 535.3, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -10691,45 +10671,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 535.3, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 535.3, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 535.3, + "level": "full" + } + } } }, "citm_catalog": { "nlohmann json_document": { "best": { - "variant": "parse + dump", - "us": 493.3, + "variant": "parse + dump (source numbers)", + "us": 494.0, "level": "full" }, "best_any": { - "variant": "parse + dump", - "us": 493.3, + "variant": "parse + dump (source numbers)", + "us": 494.0, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 492.3, + "us": 497.2, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 492.3, + "us": 497.2, "level": "full" }, "variants": { - "read + dump (reused)": { - "us": 492.3, + "parse + dump (source numbers)": { + "us": 494.0, "level": "full" }, "parse + dump": { - "us": 493.3, + "us": 495.5, "level": "full" }, - "parse + dump (source numbers)": { - "us": 493.6, + "read + dump (reused)": { + "us": 497.2, "level": "full" }, "parse_copy + dump": { - "us": 524.8, + "us": 523.7, "level": "full" } } @@ -10737,19 +10737,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 2706.3, + "us": 2406.3, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 2706.3, + "us": 2406.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 2706.3, + "us": 2406.3, "level": "full" } } @@ -10757,43 +10757,43 @@ "yyjson": { "best": { "variant": "read + write", - "us": 648.2, + "us": 641.8, "level": "full" }, "best_any": { "variant": "read + write", - "us": 648.2, + "us": 641.8, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 654.2, + "us": 649.5, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 654.2, + "us": 649.5, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 625.2, + "us": 614.4, "level": "full" }, "read + write": { - "us": 648.2, - "level": "full" - }, - "read + write (reused allocator)": { - "us": 654.2, + "us": 641.8, "level": "full" }, "insitu (copy) + write": { - "us": 657.3, + "us": 643.5, + "level": "full" + }, + "read + write (reused allocator)": { + "us": 649.5, "level": "full" }, "read (raw numbers) + write": { - "us": 720.8, + "us": 715.1, "level": "full" } } @@ -10801,35 +10801,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 848.2, + "us": 850.0, "level": "full" }, "best_any": { "variant": "minify", - "us": 170.9, + "us": 168.4, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 881.8, + "us": 853.0, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 881.8, + "us": 853.0, "level": "full" }, "variants": { "minify": { - "us": 170.9, + "us": 168.4, "level": "partial" }, "DOM + to_string": { - "us": 848.2, + "us": 850.0, "level": "full" }, "DOM (reused) + to_string": { - "us": 881.8, + "us": 853.0, "level": "full" } } @@ -10838,14 +10838,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 1220.5, + "us": 1216.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 1220.5, + "us": 1216.6, "level": "no UTF-8" } } @@ -10853,27 +10853,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3225.4, + "us": 3245.1, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 728.8, + "us": 746.6, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 728.8, + "us": 746.6, "level": "partial" }, "generic": { - "us": 3209.1, + "us": 3229.2, "level": "partial" }, "generic (strict)": { - "us": 3225.4, + "us": 3245.1, "level": "full" } }, @@ -10885,31 +10885,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 1986.5, + "us": 2003.1, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 1986.5, + "us": 2003.1, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 1982.2, + "us": 2024.2, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 1982.2, + "us": 2024.2, "level": "full" }, "variants": { - "parser (reused) + serialize": { - "us": 1982.2, + "parse + serialize": { + "us": 2003.1, "level": "full" }, - "parse + serialize": { - "us": 1986.5, + "parser (reused) + serialize": { + "us": 2024.2, "level": "full" } } @@ -10917,63 +10917,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 1807.7, + "us": 1802.7, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 1485.1, + "us": 1498.6, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2519.6, + "us": 2512.4, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 2449.8, + "us": 2438.6, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 1485.1, + "us": 1498.6, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 1718.8, + "us": 1734.2, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 1807.7, + "us": 1802.7, "level": "full" }, "SAX to Writer": { - "us": 1815.2, + "us": 1843.5, "level": "full" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 1988.1, + "us": 2006.3, "level": "no UTF-8" }, "SAX to Writer (raw numbers)": { - "us": 2097.4, + "us": 2143.4, "level": "full" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 2449.8, + "us": 2438.6, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 2464.5, + "us": 2444.3, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 2519.6, + "us": 2512.4, "level": "full" }, "Document + Writer": { - "us": 2537.3, + "us": 2561.9, "level": "full" } } @@ -10998,26 +10998,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 1134.5, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 1134.5, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 1134.5, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -11037,45 +11017,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 1134.5, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 1134.5, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 1134.5, + "level": "full" + } + } } }, "canada": { "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 1359.9, + "us": 1343.0, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 1359.9, + "us": 1343.0, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 2610.6, + "us": 2567.0, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 2610.6, + "us": 2567.0, "level": "full" }, "variants": { "parse + dump (source numbers)": { - "us": 1359.9, - "level": "full" - }, - "parse + dump": { - "us": 2581.5, + "us": 1343.0, "level": "full" }, "read + dump (reused)": { - "us": 2610.6, + "us": 2567.0, + "level": "full" + }, + "parse + dump": { + "us": 2570.2, "level": "full" }, "parse_copy + dump": { - "us": 2649.1, + "us": 2602.9, "level": "full" } } @@ -11083,19 +11083,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 8388.9, + "us": 7328.3, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 8388.9, + "us": 7328.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 8388.9, + "us": 7328.3, "level": "full" } } @@ -11103,43 +11103,43 @@ "yyjson": { "best": { "variant": "read (raw numbers) + write", - "us": 2549.6, + "us": 2523.2, "level": "full" }, "best_any": { "variant": "read (raw numbers) + write", - "us": 2549.6, + "us": 2523.2, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 3237.4, + "us": 3233.5, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 3237.4, + "us": 3233.5, "level": "full" }, "variants": { "read (raw numbers) + write": { - "us": 2549.6, + "us": 2523.2, "level": "full" }, "insitu (copy untimed) + write": { - "us": 3195.6, - "level": "full" - }, - "read + write": { - "us": 3223.1, + "us": 3175.2, "level": "full" }, "insitu (copy) + write": { - "us": 3225.6, + "us": 3222.2, + "level": "full" + }, + "read + write": { + "us": 3227.5, "level": "full" }, "read + write (reused allocator)": { - "us": 3237.4, + "us": 3233.5, "level": "full" } } @@ -11147,35 +11147,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 5120.0, + "us": 5093.9, "level": "full" }, "best_any": { "variant": "minify", - "us": 227.1, + "us": 227.2, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 5115.5, + "us": 5098.5, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 5115.5, + "us": 5098.5, "level": "full" }, "variants": { "minify": { - "us": 227.1, + "us": 227.2, "level": "partial" }, - "DOM (reused) + to_string": { - "us": 5115.5, + "DOM + to_string": { + "us": 5093.9, "level": "full" }, - "DOM + to_string": { - "us": 5120.0, + "DOM (reused) + to_string": { + "us": 5098.5, "level": "full" } } @@ -11184,14 +11184,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 5676.5, + "us": 5634.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 5676.5, + "us": 5634.0, "level": "no UTF-8" } } @@ -11199,28 +11199,28 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 11092.4, + "us": 11111.5, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 1721.5, + "us": 1746.0, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 1721.5, + "us": 1746.0, + "level": "partial" + }, + "generic": { + "us": 11044.4, "level": "partial" }, "generic (strict)": { - "us": 11092.4, + "us": 11111.5, "level": "full" - }, - "generic": { - "us": 11130.8, - "level": "partial" } }, "excluded": { @@ -11231,31 +11231,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 6542.4, + "us": 6555.2, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 6542.4, + "us": 6555.2, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 6524.1, + "us": 6556.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 6524.1, + "us": 6556.8, "level": "full" }, "variants": { - "parser (reused) + serialize": { - "us": 6524.1, + "parse + serialize": { + "us": 6555.2, "level": "full" }, - "parse + serialize": { - "us": 6542.4, + "parser (reused) + serialize": { + "us": 6556.8, "level": "full" } } @@ -11263,64 +11263,64 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (raw numbers)", - "us": 11009.0, + "us": 11568.4, "level": "full" }, "best_any": { - "variant": "SAX to Writer (raw numbers) (no encoding check)", - "us": 10908.5, - "level": "no UTF-8" + "variant": "SAX to Writer (raw numbers)", + "us": 11568.4, + "level": "full" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 14370.9, + "us": 14244.4, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator)", - "us": 14370.9, + "us": 14244.4, "level": "full" }, "variants": { - "SAX to Writer (raw numbers) (no encoding check)": { - "us": 10908.5, - "level": "no UTF-8" - }, "SAX to Writer (raw numbers)": { - "us": 11009.0, + "us": 11568.4, "level": "full" }, + "SAX to Writer (raw numbers) (no encoding check)": { + "us": 11573.3, + "level": "no UTF-8" + }, "Document + Writer (reused allocator)": { - "us": 14370.9, + "us": 14244.4, "level": "full" }, "Document + Writer (no encoding check)": { - "us": 14434.6, + "us": 14317.4, + "level": "no UTF-8" + }, + "Document + Writer (reused allocator) (no encoding check)": { + "us": 14350.3, "level": "no UTF-8" }, "Document + Writer": { - "us": 14460.5, + "us": 14378.2, "level": "full" }, - "Document + Writer (reused allocator) (no encoding check)": { - "us": 14533.2, - "level": "no UTF-8" - }, "SAX to Writer (string stream) (no encoding check)": { - "us": 15103.5, + "us": 15020.1, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 15111.3, - "level": "full" - }, - "SAX to Writer": { - "us": 15554.3, + "us": 15055.9, "level": "full" }, "SAX to Writer (no encoding check)": { - "us": 15716.2, + "us": 15463.4, "level": "no UTF-8" + }, + "SAX to Writer": { + "us": 15505.3, + "level": "full" } } }, @@ -11344,26 +11344,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 4376.6, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 4376.6, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 4376.6, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -11383,45 +11363,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 4376.6, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 4376.6, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 4376.6, + "level": "full" + } + } } }, "jeopardy": { "nlohmann json_document": { "best": { - "variant": "parse + dump (source numbers)", - "us": 37817.3, + "variant": "parse + dump", + "us": 37624.4, "level": "full" }, "best_any": { - "variant": "parse + dump (source numbers)", - "us": 37817.3, + "variant": "parse + dump", + "us": 37624.4, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 37523.8, + "us": 37604.2, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 37523.8, + "us": 37604.2, "level": "full" }, "variants": { "read + dump (reused)": { - "us": 37523.8, - "level": "full" - }, - "parse + dump (source numbers)": { - "us": 37817.3, + "us": 37604.2, "level": "full" }, "parse + dump": { - "us": 37882.5, + "us": 37624.4, + "level": "full" + }, + "parse + dump (source numbers)": { + "us": 37892.5, "level": "full" }, "parse_copy + dump": { - "us": 38976.6, + "us": 39054.3, "level": "full" } } @@ -11429,63 +11429,63 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 197745.3, + "us": 182131.5, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 197745.3, + "us": 182131.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 197745.3, + "us": 182131.5, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy) + write", - "us": 51134.1, + "variant": "read + write", + "us": 51001.2, "level": "full" }, "best_any": { - "variant": "insitu (copy) + write", - "us": 51134.1, + "variant": "read + write", + "us": 51001.2, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 51533.2, + "us": 50934.6, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 51533.2, + "us": 50934.6, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 50820.6, - "level": "full" - }, - "insitu (copy) + write": { - "us": 51134.1, + "us": 49957.7, "level": "full" }, "read + write (reused allocator)": { - "us": 51533.2, - "level": "full" - }, - "read (raw numbers) + write": { - "us": 51608.1, + "us": 50934.6, "level": "full" }, "read + write": { - "us": 51801.0, + "us": 51001.2, + "level": "full" + }, + "read (raw numbers) + write": { + "us": 51022.0, + "level": "full" + }, + "insitu (copy) + write": { + "us": 51098.8, "level": "full" } } @@ -11493,35 +11493,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 61059.3, + "us": 61202.1, "level": "full" }, "best_any": { "variant": "minify", - "us": 5761.8, + "us": 5756.5, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 61143.8, + "us": 61188.5, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 61143.8, + "us": 61188.5, "level": "full" }, "variants": { "minify": { - "us": 5761.8, + "us": 5756.5, "level": "partial" }, - "DOM + to_string": { - "us": 61059.3, + "DOM (reused) + to_string": { + "us": 61188.5, "level": "full" }, - "DOM (reused) + to_string": { - "us": 61143.8, + "DOM + to_string": { + "us": 61202.1, "level": "full" } } @@ -11530,14 +11530,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 61235.6, + "us": 61988.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 61235.6, + "us": 61988.1, "level": "no UTF-8" } } @@ -11545,27 +11545,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 168854.8, + "us": 172173.3, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 39975.8, + "us": 40438.8, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 39975.8, + "us": 40438.8, "level": "partial" }, "generic": { - "us": 165922.9, + "us": 167568.4, "level": "partial" }, "generic (strict)": { - "us": 168854.8, + "us": 172173.3, "level": "full" } }, @@ -11577,31 +11577,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 154677.0, + "us": 154865.2, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 154677.0, + "us": 154865.2, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 153505.1, + "us": 154743.4, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 153505.1, + "us": 154743.4, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 153505.1, + "us": 154743.4, "level": "full" }, "parse + serialize": { - "us": 154677.0, + "us": 154865.2, "level": "full" } } @@ -11609,63 +11609,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 174558.2, + "us": 174957.5, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 123119.2, + "us": 123907.6, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 239139.2, + "us": 239399.3, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 224809.3, + "us": 226887.8, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 123119.2, + "us": 123907.6, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 166787.6, + "us": 167510.8, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 168330.2, + "us": 168231.5, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 174558.2, + "us": 174957.5, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 180942.4, + "us": 180634.4, "level": "full" }, "SAX to Writer": { - "us": 181643.3, + "us": 182032.7, "level": "full" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 224809.3, + "us": 226887.8, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 226786.8, + "us": 229730.5, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 239139.2, + "us": 239399.3, "level": "full" }, "Document + Writer": { - "us": 241392.5, + "us": 242915.9, "level": "full" } } @@ -11690,26 +11690,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 64832.5, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 64832.5, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 64832.5, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -11729,18 +11709,38 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 64832.5, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 64832.5, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 64832.5, + "level": "full" + } + } } }, "status": { "nlohmann json_document": { "best": { "variant": "parse + dump", - "us": 1.4, + "us": 1.5, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 1.4, + "us": 1.5, "level": "full" }, "best_reused": { @@ -11754,12 +11754,12 @@ "level": "full" }, "variants": { - "parse + dump": { + "read + dump (reused)": { "us": 1.4, "level": "full" }, - "read + dump (reused)": { - "us": 1.4, + "parse + dump": { + "us": 1.5, "level": "full" }, "parse_copy + dump": { @@ -11775,19 +11775,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 8.8, + "us": 7.7, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 8.8, + "us": 7.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 8.8, + "us": 7.7, "level": "full" } } @@ -11839,7 +11839,7 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 2.4, + "us": 2.3, "level": "full" }, "best_any": { @@ -11849,12 +11849,12 @@ }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 2.3, + "us": 2.2, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 2.3, + "us": 2.2, "level": "full" }, "variants": { @@ -11863,11 +11863,11 @@ "level": "partial" }, "DOM (reused) + to_string": { - "us": 2.3, + "us": 2.2, "level": "full" }, "DOM + to_string": { - "us": 2.4, + "us": 2.3, "level": "full" } } @@ -11896,18 +11896,18 @@ }, "best_any": { "variant": "minify_json", - "us": 1.3, + "us": 1.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 1.3, + "us": 1.4, "level": "partial" }, "generic": { - "us": 8.0, + "us": 7.9, "level": "partial" }, "generic (strict)": { @@ -11923,12 +11923,12 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 6.7, + "us": 6.8, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 6.7, + "us": 6.8, "level": "full" }, "best_reused": { @@ -11947,7 +11947,7 @@ "level": "full" }, "parse + serialize": { - "us": 6.7, + "us": 6.8, "level": "full" } } @@ -11955,17 +11955,17 @@ "RapidJSON": { "best": { "variant": "SAX to Writer", - "us": 8.1, + "us": 8.0, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 5.0, + "us": 4.9, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 10.2, + "us": 10.3, "level": "full" }, "best_reused_any": { @@ -11975,19 +11975,19 @@ }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 5.0, + "us": 4.9, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 7.4, + "us": 7.3, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 7.5, + "us": 7.6, "level": "no UTF-8" }, "SAX to Writer": { - "us": 8.1, + "us": 8.0, "level": "full" }, "SAX to Writer (string stream)": { @@ -11995,7 +11995,7 @@ "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 8.1, + "us": 8.2, "level": "full" }, "Document + Writer (reused allocator) (no encoding check)": { @@ -12003,15 +12003,15 @@ "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 9.9, + "us": 10.0, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 10.2, + "us": 10.3, "level": "full" }, "Document + Writer": { - "us": 10.7, + "us": 11.0, "level": "full" } } @@ -12036,26 +12036,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 3.0, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 3.0, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 3.0, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -12075,45 +12055,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 3.0, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 3.0, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 3.0, + "level": "full" + } + } } }, "twitter_min": { "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 233.0, + "us": 231.7, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 233.0, + "us": 231.7, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 227.8, + "us": 234.4, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 227.8, + "us": 234.4, "level": "full" }, "variants": { - "read + dump (reused)": { - "us": 227.8, + "parse + dump (source numbers)": { + "us": 231.7, "level": "full" }, - "parse + dump (source numbers)": { - "us": 233.0, + "read + dump (reused)": { + "us": 234.4, "level": "full" }, "parse + dump": { - "us": 235.4, + "us": 240.0, "level": "full" }, "parse_copy + dump": { - "us": 244.4, + "us": 242.5, "level": "full" } } @@ -12121,19 +12121,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 1559.2, + "us": 1419.5, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 1559.2, + "us": 1419.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 1559.2, + "us": 1419.5, "level": "full" } } @@ -12151,21 +12151,21 @@ }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 269.4, + "us": 268.0, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 269.4, + "us": 268.0, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 267.0, + "us": 257.6, "level": "full" }, "read + write (reused allocator)": { - "us": 269.4, + "us": 268.0, "level": "full" }, "insitu (copy) + write": { @@ -12173,11 +12173,11 @@ "level": "full" }, "read + write": { - "us": 274.8, + "us": 272.9, "level": "full" }, "read (raw numbers) + write": { - "us": 283.8, + "us": 285.5, "level": "full" } } @@ -12185,7 +12185,7 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 397.3, + "us": 393.5, "level": "full" }, "best_any": { @@ -12195,12 +12195,12 @@ }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 389.9, + "us": 382.8, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 389.9, + "us": 382.8, "level": "full" }, "variants": { @@ -12209,11 +12209,11 @@ "level": "partial" }, "DOM (reused) + to_string": { - "us": 389.9, + "us": 382.8, "level": "full" }, "DOM + to_string": { - "us": 397.3, + "us": 393.5, "level": "full" } } @@ -12222,14 +12222,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 367.2, + "us": 378.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 367.2, + "us": 378.4, "level": "no UTF-8" } } @@ -12237,27 +12237,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 1396.0, + "us": 1392.9, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 241.9, + "us": 247.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 241.9, + "us": 247.4, "level": "partial" }, "generic": { - "us": 1390.0, + "us": 1388.7, "level": "partial" }, "generic (strict)": { - "us": 1396.0, + "us": 1392.9, "level": "full" } }, @@ -12269,31 +12269,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 1287.0, + "us": 1290.7, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 1287.0, + "us": 1290.7, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 1296.0, + "us": 1293.5, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 1296.0, + "us": 1293.5, "level": "full" }, "variants": { "parse + serialize": { - "us": 1287.0, + "us": 1290.7, "level": "full" }, "parser (reused) + serialize": { - "us": 1296.0, + "us": 1293.5, "level": "full" } } @@ -12301,63 +12301,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 1340.0, + "us": 1341.1, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 839.7, + "us": 854.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 1762.7, + "us": 1769.6, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 1618.5, + "us": 1630.3, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 839.7, + "us": 854.5, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 1231.3, + "us": 1240.5, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 1252.0, + "us": 1256.9, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 1340.0, + "us": 1341.1, "level": "full" }, "SAX to Writer": { - "us": 1353.2, + "us": 1386.2, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 1374.1, + "us": 1388.4, "level": "full" }, - "Document + Writer (no encoding check)": { - "us": 1609.3, - "level": "no UTF-8" - }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 1618.5, + "us": 1630.3, "level": "no UTF-8" }, - "Document + Writer": { - "us": 1762.5, - "level": "full" + "Document + Writer (no encoding check)": { + "us": 1630.7, + "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 1762.7, + "us": 1769.6, + "level": "full" + }, + "Document + Writer": { + "us": 1799.5, "level": "full" } } @@ -12382,26 +12382,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 457.7, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 457.7, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 457.7, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -12421,45 +12401,65 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 457.7, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 457.7, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 457.7, + "level": "full" + } + } } }, "citm_catalog_min": { "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 376.9, + "us": 377.5, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 376.9, + "us": 377.5, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 374.9, + "us": 379.3, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 374.9, + "us": 379.3, "level": "full" }, "variants": { - "read + dump (reused)": { - "us": 374.9, + "parse + dump (source numbers)": { + "us": 377.5, "level": "full" }, - "parse + dump (source numbers)": { - "us": 376.9, + "read + dump (reused)": { + "us": 379.3, "level": "full" }, "parse + dump": { - "us": 377.6, + "us": 379.5, "level": "full" }, "parse_copy + dump": { - "us": 385.4, + "us": 387.7, "level": "full" } } @@ -12467,19 +12467,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 2564.5, + "us": 2253.7, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 2564.5, + "us": 2253.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 2564.5, + "us": 2253.7, "level": "full" } } @@ -12487,43 +12487,43 @@ "yyjson": { "best": { "variant": "read + write", - "us": 448.9, + "us": 446.0, "level": "full" }, "best_any": { "variant": "read + write", - "us": 448.9, + "us": 446.0, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 450.9, + "us": 446.5, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 450.9, + "us": 446.5, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 445.0, + "us": 437.7, "level": "full" }, "read + write": { - "us": 448.9, - "level": "full" - }, - "insitu (copy) + write": { - "us": 449.2, + "us": 446.0, "level": "full" }, "read + write (reused allocator)": { - "us": 450.9, + "us": 446.5, + "level": "full" + }, + "insitu (copy) + write": { + "us": 448.7, "level": "full" }, "read (raw numbers) + write": { - "us": 525.4, + "us": 512.8, "level": "full" } } @@ -12531,35 +12531,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 708.1, + "us": 718.2, "level": "full" }, "best_any": { "variant": "minify", - "us": 48.4, + "us": 49.3, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 740.5, + "us": 714.7, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 740.5, + "us": 714.7, "level": "full" }, "variants": { "minify": { - "us": 48.4, + "us": 49.3, "level": "partial" }, - "DOM + to_string": { - "us": 708.1, + "DOM (reused) + to_string": { + "us": 714.7, "level": "full" }, - "DOM (reused) + to_string": { - "us": 740.5, + "DOM + to_string": { + "us": 718.2, "level": "full" } } @@ -12568,14 +12568,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 767.0, + "us": 778.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 767.0, + "us": 778.8, "level": "no UTF-8" } } @@ -12583,27 +12583,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 2829.5, + "us": 2827.6, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 438.7, + "us": 446.7, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 438.7, + "us": 446.7, "level": "partial" }, "generic": { - "us": 2825.5, + "us": 2789.5, "level": "partial" }, "generic (strict)": { - "us": 2829.5, + "us": 2827.6, "level": "full" } }, @@ -12615,31 +12615,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 1445.3, + "us": 1470.0, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 1445.3, + "us": 1470.0, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 1448.5, + "us": 1443.0, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 1448.5, + "us": 1443.0, "level": "full" }, "variants": { - "parse + serialize": { - "us": 1445.3, + "parser (reused) + serialize": { + "us": 1443.0, "level": "full" }, - "parser (reused) + serialize": { - "us": 1448.5, + "parse + serialize": { + "us": 1470.0, "level": "full" } } @@ -12647,63 +12647,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer", - "us": 1457.4, + "us": 1477.1, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 1223.2, + "us": 1220.9, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2055.8, + "us": 2035.3, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 1959.2, + "us": 2010.5, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 1223.2, + "us": 1220.9, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 1404.9, + "us": 1386.5, "level": "no UTF-8" }, "SAX to Writer": { - "us": 1457.4, + "us": 1477.1, "level": "full" }, "SAX to Writer (string stream)": { - "us": 1476.6, + "us": 1485.2, "level": "full" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 1694.9, + "us": 1735.0, "level": "no UTF-8" }, "SAX to Writer (raw numbers)": { - "us": 1735.2, + "us": 1777.0, "level": "full" }, - "Document + Writer (reused allocator) (no encoding check)": { - "us": 1959.2, - "level": "no UTF-8" - }, "Document + Writer (no encoding check)": { - "us": 1966.3, + "us": 1994.8, "level": "no UTF-8" }, - "Document + Writer": { - "us": 2042.3, - "level": "full" + "Document + Writer (reused allocator) (no encoding check)": { + "us": 2010.5, + "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 2055.8, + "us": 2035.3, + "level": "full" + }, + "Document + Writer": { + "us": 2046.8, "level": "full" } } @@ -12728,26 +12728,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 825.5, - "level": "full" - }, - "best_any": { - "variant": "Value", - "us": 825.5, - "level": "full" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 825.5, - "level": "full" - } - } - }, "simd-json": { "best": { "variant": "borrowed (copy)", @@ -12767,6 +12747,26 @@ "level": "full" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 825.5, + "level": "full" + }, + "best_any": { + "variant": "Value", + "us": 825.5, + "level": "full" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 825.5, + "level": "full" + } + } } } }, @@ -12774,24 +12774,24 @@ "twitter": { "nlohmann json_document": { "best": { - "variant": "dump", - "us": 74.3, + "variant": "dump (source numbers)", + "us": 72.8, "level": "n/a" }, "best_any": { - "variant": "dump", - "us": 74.3, + "variant": "dump (source numbers)", + "us": 72.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "dump": { - "us": 74.3, + "dump (source numbers)": { + "us": 72.8, "level": "n/a" }, - "dump (source numbers)": { - "us": 74.8, + "dump": { + "us": 76.2, "level": "n/a" } } @@ -12799,19 +12799,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 223.3, + "us": 216.2, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 223.3, + "us": 216.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 223.3, + "us": 216.2, "level": "n/a" } } @@ -12819,19 +12819,19 @@ "yyjson": { "best": { "variant": "write", - "us": 102.7, + "us": 100.8, "level": "n/a" }, "best_any": { "variant": "write", - "us": 102.7, + "us": 100.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 102.7, + "us": 100.8, "level": "n/a" } } @@ -12839,19 +12839,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 199.2, + "us": 201.2, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 199.2, + "us": 201.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 199.2, + "us": 201.2, "level": "n/a" } } @@ -12859,19 +12859,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 602.6, + "us": 595.6, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 602.6, + "us": 595.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 602.6, + "us": 595.6, "level": "n/a" } } @@ -12879,19 +12879,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 108.5, + "us": 113.6, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 108.5, + "us": 113.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 108.5, + "us": 113.6, "level": "n/a" } } @@ -12899,23 +12899,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 216.2, + "us": 212.3, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 216.2, + "us": 212.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 216.2, + "us": 212.3, "level": "n/a" }, "generic (strict)": { - "us": 226.0, + "us": 222.2, "level": "n/a" } }, @@ -12927,19 +12927,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 506.7, + "us": 499.1, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 506.7, + "us": 499.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 506.7, + "us": 499.1, "level": "n/a" } } @@ -12964,26 +12964,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 211.5, - "level": "n/a" - }, - "best_any": { - "variant": "Value", - "us": 211.5, - "level": "n/a" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 211.5, - "level": "n/a" - } - } - }, "simd-json": { "best": { "variant": "borrowed", @@ -13003,29 +12983,49 @@ "level": "n/a" } } - } - }, - "citm_catalog": { - "nlohmann json_document": { + }, + "sonic-rs": { "best": { - "variant": "dump", - "us": 133.8, + "variant": "Value", + "us": 211.5, "level": "n/a" }, "best_any": { - "variant": "dump", - "us": 133.8, + "variant": "Value", + "us": 211.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "dump": { - "us": 133.8, + "Value": { + "us": 211.5, + "level": "n/a" + } + } + } + }, + "citm_catalog": { + "nlohmann json_document": { + "best": { + "variant": "dump (source numbers)", + "us": 136.3, + "level": "n/a" + }, + "best_any": { + "variant": "dump (source numbers)", + "us": 136.3, + "level": "n/a" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "dump (source numbers)": { + "us": 136.3, "level": "n/a" }, - "dump (source numbers)": { - "us": 134.2, + "dump": { + "us": 138.7, "level": "n/a" } } @@ -13033,19 +13033,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 287.0, + "us": 287.1, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 287.0, + "us": 287.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 287.0, + "us": 287.1, "level": "n/a" } } @@ -13053,19 +13053,19 @@ "yyjson": { "best": { "variant": "write", - "us": 169.4, + "us": 167.2, "level": "n/a" }, "best_any": { "variant": "write", - "us": 169.4, + "us": 167.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 169.4, + "us": 167.2, "level": "n/a" } } @@ -13073,19 +13073,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 385.1, + "us": 416.4, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 385.1, + "us": 416.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 385.1, + "us": 416.4, "level": "n/a" } } @@ -13093,19 +13093,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 830.3, + "us": 836.2, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 830.3, + "us": 836.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 830.3, + "us": 836.2, "level": "n/a" } } @@ -13113,43 +13113,43 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 230.2, + "us": 240.1, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 230.2, + "us": 240.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 230.2, + "us": 240.1, "level": "n/a" } } }, "Glaze": { "best": { - "variant": "generic", - "us": 469.3, + "variant": "generic (strict)", + "us": 476.2, "level": "n/a" }, "best_any": { - "variant": "generic", - "us": 469.3, + "variant": "generic (strict)", + "us": 476.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic": { - "us": 469.3, + "generic (strict)": { + "us": 476.2, "level": "n/a" }, - "generic (strict)": { - "us": 473.3, + "generic": { + "us": 477.8, "level": "n/a" } }, @@ -13161,19 +13161,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 507.7, + "us": 511.2, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 507.7, + "us": 511.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 507.7, + "us": 511.2, "level": "n/a" } } @@ -13198,26 +13198,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 446.0, - "level": "n/a" - }, - "best_any": { - "variant": "Value", - "us": 446.0, - "level": "n/a" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 446.0, - "level": "n/a" - } - } - }, "simd-json": { "best": { "variant": "borrowed", @@ -13237,29 +13217,49 @@ "level": "n/a" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 446.0, + "level": "n/a" + }, + "best_any": { + "variant": "Value", + "us": 446.0, + "level": "n/a" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 446.0, + "level": "n/a" + } + } } }, "canada": { "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 401.2, + "us": 398.3, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 401.2, + "us": 398.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 401.2, + "us": 398.3, "level": "n/a" }, "dump": { - "us": 1621.2, + "us": 1625.2, "level": "n/a" } } @@ -13267,19 +13267,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 2275.8, + "us": 2273.5, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 2275.8, + "us": 2273.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 2275.8, + "us": 2273.5, "level": "n/a" } } @@ -13287,19 +13287,19 @@ "yyjson": { "best": { "variant": "write", - "us": 1731.3, + "us": 1719.1, "level": "n/a" }, "best_any": { "variant": "write", - "us": 1731.3, + "us": 1719.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 1731.3, + "us": 1719.1, "level": "n/a" } } @@ -13307,19 +13307,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 3241.4, + "us": 3185.9, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 3241.4, + "us": 3185.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 3241.4, + "us": 3185.9, "level": "n/a" } } @@ -13327,19 +13327,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 6995.1, + "us": 6927.8, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 6995.1, + "us": 6927.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 6995.1, + "us": 6927.8, "level": "n/a" } } @@ -13347,19 +13347,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 3093.4, + "us": 3108.7, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 3093.4, + "us": 3108.7, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 3093.4, + "us": 3108.7, "level": "n/a" } } @@ -13367,23 +13367,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 1720.0, + "us": 1701.6, "level": "n/a" }, "best_any": { "variant": "generic (strict)", - "us": 1720.0, + "us": 1701.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic (strict)": { - "us": 1720.0, + "us": 1701.6, "level": "n/a" }, "generic": { - "us": 1720.5, + "us": 1729.8, "level": "n/a" } }, @@ -13395,19 +13395,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 2922.8, + "us": 2873.0, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 2922.8, + "us": 2873.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 2922.8, + "us": 2873.0, "level": "n/a" } } @@ -13432,26 +13432,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 2419.2, - "level": "n/a" - }, - "best_any": { - "variant": "Value", - "us": 2419.2, - "level": "n/a" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 2419.2, - "level": "n/a" - } - } - }, "simd-json": { "best": { "variant": "borrowed", @@ -13471,29 +13451,49 @@ "level": "n/a" } } - } - }, - "jeopardy": { - "nlohmann json_document": { + }, + "sonic-rs": { "best": { - "variant": "dump", - "us": 14757.0, + "variant": "Value", + "us": 2419.2, "level": "n/a" }, "best_any": { - "variant": "dump", - "us": 14757.0, + "variant": "Value", + "us": 2419.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "dump": { - "us": 14757.0, + "Value": { + "us": 2419.2, + "level": "n/a" + } + } + } + }, + "jeopardy": { + "nlohmann json_document": { + "best": { + "variant": "dump (source numbers)", + "us": 14757.7, + "level": "n/a" + }, + "best_any": { + "variant": "dump (source numbers)", + "us": 14757.7, + "level": "n/a" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "dump (source numbers)": { + "us": 14757.7, "level": "n/a" }, - "dump (source numbers)": { - "us": 14803.2, + "dump": { + "us": 14860.6, "level": "n/a" } } @@ -13501,19 +13501,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 31825.4, + "us": 30928.0, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 31825.4, + "us": 30928.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 31825.4, + "us": 30928.0, "level": "n/a" } } @@ -13521,19 +13521,19 @@ "yyjson": { "best": { "variant": "write", - "us": 20087.0, + "us": 19937.4, "level": "n/a" }, "best_any": { "variant": "write", - "us": 20087.0, + "us": 19937.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 20087.0, + "us": 19937.4, "level": "n/a" } } @@ -13541,19 +13541,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 32208.3, + "us": 32184.8, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 32208.3, + "us": 32184.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 32208.3, + "us": 32184.8, "level": "n/a" } } @@ -13561,19 +13561,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 81149.7, + "us": 80160.4, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 81149.7, + "us": 80160.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 81149.7, + "us": 80160.4, "level": "n/a" } } @@ -13581,19 +13581,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 19651.3, + "us": 20326.9, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 19651.3, + "us": 20326.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 19651.3, + "us": 20326.9, "level": "n/a" } } @@ -13601,23 +13601,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 33933.8, + "us": 34031.5, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 33933.8, + "us": 34031.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 33933.8, + "us": 34031.5, "level": "n/a" }, "generic (strict)": { - "us": 36934.7, + "us": 36951.1, "level": "n/a" } }, @@ -13629,19 +13629,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 62583.4, + "us": 63201.3, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 62583.4, + "us": 63201.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 62583.4, + "us": 63201.3, "level": "n/a" } } @@ -13666,26 +13666,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 33366.0, - "level": "n/a" - }, - "best_any": { - "variant": "Value", - "us": 33366.0, - "level": "n/a" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 33366.0, - "level": "n/a" - } - } - }, "simd-json": { "best": { "variant": "borrowed", @@ -13705,6 +13685,26 @@ "level": "n/a" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 33366.0, + "level": "n/a" + }, + "best_any": { + "variant": "Value", + "us": 33366.0, + "level": "n/a" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 33366.0, + "level": "n/a" + } + } } }, "status": { @@ -13795,19 +13795,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 3.9, + "us": 4.0, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 3.9, + "us": 4.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 3.9, + "us": 4.0, "level": "n/a" } } @@ -13815,19 +13815,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 0.8, + "us": 0.9, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 0.8, + "us": 0.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 0.8, + "us": 0.9, "level": "n/a" } } @@ -13900,26 +13900,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 1.5, - "level": "n/a" - }, - "best_any": { - "variant": "Value", - "us": 1.5, - "level": "n/a" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 1.5, - "level": "n/a" - } - } - }, "simd-json": { "best": { "variant": "borrowed", @@ -13939,29 +13919,49 @@ "level": "n/a" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 1.5, + "level": "n/a" + }, + "best_any": { + "variant": "Value", + "us": 1.5, + "level": "n/a" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 1.5, + "level": "n/a" + } + } } }, "twitter_min": { "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 73.2, + "us": 75.0, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 73.2, + "us": 75.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 73.2, + "us": 75.0, "level": "n/a" }, "dump": { - "us": 73.3, + "us": 77.9, "level": "n/a" } } @@ -13969,19 +13969,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 219.0, + "us": 218.0, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 219.0, + "us": 218.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 219.0, + "us": 218.0, "level": "n/a" } } @@ -13989,19 +13989,19 @@ "yyjson": { "best": { "variant": "write", - "us": 100.8, + "us": 103.9, "level": "n/a" }, "best_any": { "variant": "write", - "us": 100.8, + "us": 103.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 100.8, + "us": 103.9, "level": "n/a" } } @@ -14009,19 +14009,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 198.0, + "us": 206.3, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 198.0, + "us": 206.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 198.0, + "us": 206.3, "level": "n/a" } } @@ -14029,19 +14029,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 592.9, + "us": 603.7, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 592.9, + "us": 603.7, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 592.9, + "us": 603.7, "level": "n/a" } } @@ -14049,19 +14049,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 104.6, + "us": 114.0, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 104.6, + "us": 114.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 104.6, + "us": 114.0, "level": "n/a" } } @@ -14069,23 +14069,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 210.8, + "us": 216.2, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 210.8, + "us": 216.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 210.8, + "us": 216.2, "level": "n/a" }, "generic (strict)": { - "us": 220.2, + "us": 227.1, "level": "n/a" } }, @@ -14097,19 +14097,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 498.6, + "us": 508.5, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 498.6, + "us": 508.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 498.6, + "us": 508.5, "level": "n/a" } } @@ -14134,26 +14134,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 215.8, - "level": "n/a" - }, - "best_any": { - "variant": "Value", - "us": 215.8, - "level": "n/a" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 215.8, - "level": "n/a" - } - } - }, "simd-json": { "best": { "variant": "borrowed", @@ -14173,29 +14153,49 @@ "level": "n/a" } } - } - }, - "citm_catalog_min": { - "nlohmann json_document": { + }, + "sonic-rs": { "best": { - "variant": "dump", - "us": 133.8, + "variant": "Value", + "us": 215.8, "level": "n/a" }, "best_any": { - "variant": "dump", - "us": 133.8, + "variant": "Value", + "us": 215.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "dump": { - "us": 133.8, + "Value": { + "us": 215.8, + "level": "n/a" + } + } + } + }, + "citm_catalog_min": { + "nlohmann json_document": { + "best": { + "variant": "dump (source numbers)", + "us": 136.8, + "level": "n/a" + }, + "best_any": { + "variant": "dump (source numbers)", + "us": 136.8, + "level": "n/a" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "dump (source numbers)": { + "us": 136.8, "level": "n/a" }, - "dump (source numbers)": { - "us": 134.4, + "dump": { + "us": 139.1, "level": "n/a" } } @@ -14203,19 +14203,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 287.3, + "us": 290.0, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 287.3, + "us": 290.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 287.3, + "us": 290.0, "level": "n/a" } } @@ -14223,19 +14223,19 @@ "yyjson": { "best": { "variant": "write", - "us": 172.0, + "us": 167.0, "level": "n/a" }, "best_any": { "variant": "write", - "us": 172.0, + "us": 167.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 172.0, + "us": 167.0, "level": "n/a" } } @@ -14243,19 +14243,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 386.2, + "us": 387.4, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 386.2, + "us": 387.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 386.2, + "us": 387.4, "level": "n/a" } } @@ -14263,19 +14263,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 826.2, + "us": 851.9, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 826.2, + "us": 851.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 826.2, + "us": 851.9, "level": "n/a" } } @@ -14283,19 +14283,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 225.2, + "us": 233.6, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 225.2, + "us": 233.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 225.2, + "us": 233.6, "level": "n/a" } } @@ -14303,23 +14303,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 474.5, + "us": 479.3, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 474.5, + "us": 479.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 474.5, + "us": 479.3, "level": "n/a" }, "generic (strict)": { - "us": 475.0, + "us": 481.3, "level": "n/a" } }, @@ -14331,19 +14331,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 512.1, + "us": 511.4, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 512.1, + "us": 511.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 512.1, + "us": 511.4, "level": "n/a" } } @@ -14368,26 +14368,6 @@ } } }, - "sonic-rs": { - "best": { - "variant": "Value", - "us": 460.7, - "level": "n/a" - }, - "best_any": { - "variant": "Value", - "us": 460.7, - "level": "n/a" - }, - "best_reused": null, - "best_reused_any": null, - "variants": { - "Value": { - "us": 460.7, - "level": "n/a" - } - } - }, "simd-json": { "best": { "variant": "borrowed", @@ -14407,6 +14387,26 @@ "level": "n/a" } } + }, + "sonic-rs": { + "best": { + "variant": "Value", + "us": 460.7, + "level": "n/a" + }, + "best_any": { + "variant": "Value", + "us": 460.7, + "level": "n/a" + }, + "best_reused": null, + "best_reused_any": null, + "variants": { + "Value": { + "us": 460.7, + "level": "n/a" + } + } } } } diff --git a/docs/mkdocs/scripts/figures/data/perf_usecases_x86-clang.json b/docs/mkdocs/scripts/figures/data/perf_usecases_x86-clang.json index fccea0a86..57092132c 100644 --- a/docs/mkdocs/scripts/figures/data/perf_usecases_x86-clang.json +++ b/docs/mkdocs/scripts/figures/data/perf_usecases_x86-clang.json @@ -4,35 +4,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 254.6, + "us": 250.5, "level": "full" }, "best_any": { "variant": "accept", - "us": 254.6, + "us": 250.5, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 297.6, + "us": 296.1, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 297.6, + "us": 296.1, "level": "full" }, "variants": { "accept": { - "us": 254.6, + "us": 250.5, "level": "full" }, "read (reused)": { - "us": 297.6, + "us": 296.1, "level": "full" }, "parse": { - "us": 304.7, + "us": 302.5, "level": "full" } } @@ -40,67 +40,67 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 658.2, + "us": 335.0, "level": "full" }, "best_any": { "variant": "accept", - "us": 658.2, + "us": 335.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 658.2, + "us": 335.0, "level": "full" }, "parse": { - "us": 3532.9, + "us": 3159.9, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 380.3, + "variant": "read", + "us": 382.7, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 380.3, + "variant": "read", + "us": 382.7, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 383.8, + "us": 387.4, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 383.8, + "us": 387.4, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 334.0, - "level": "full" - }, - "insitu (copy)": { - "us": 380.3, - "level": "full" - }, - "read (raw numbers)": { - "us": 380.9, + "us": 338.0, "level": "full" }, "read": { - "us": 381.7, + "us": 382.7, + "level": "full" + }, + "insitu (copy)": { + "us": 383.1, + "level": "full" + }, + "read (raw numbers)": { + "us": 386.3, "level": "full" }, "read (reused allocator)": { - "us": 383.8, + "us": 387.4, "level": "full" } } @@ -108,31 +108,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 305.5, + "us": 302.4, "level": "full" }, "best_any": { "variant": "DOM", - "us": 305.5, + "us": 302.4, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 305.4, + "us": 305.6, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 305.4, + "us": 305.6, "level": "full" }, "variants": { - "DOM (reused)": { - "us": 305.4, + "DOM": { + "us": 302.4, "level": "full" }, - "DOM": { - "us": 305.5, + "DOM (reused)": { + "us": 305.6, "level": "full" } } @@ -141,14 +141,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 447.9, + "us": 451.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 447.9, + "us": 451.1, "level": "no UTF-8" } } @@ -156,35 +156,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 587.9, + "us": 594.4, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 587.9, + "us": 594.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 587.9, - "level": "full" - }, - "generic (double, strict)": { - "us": 2348.7, + "us": 594.4, "level": "full" }, "generic (double)": { - "us": 2364.0, + "us": 2390.9, "level": "partial" }, + "generic (double, strict)": { + "us": 2429.5, + "level": "full" + }, "generic (strict)": { - "us": 3393.6, + "us": 3455.0, "level": "full" }, "generic": { - "us": 3447.1, + "us": 3486.7, "level": "partial" } } @@ -192,47 +192,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 570.7, + "us": 569.5, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 570.7, + "us": 569.5, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 575.6, + "us": 572.1, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 575.6, + "us": 572.1, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 570.7, - "level": "full" - }, - "SAX": { - "us": 573.8, + "us": 569.5, "level": "full" }, "SAX (reused)": { - "us": 575.6, + "us": 572.1, + "level": "full" + }, + "SAX": { + "us": 580.5, "level": "full" }, "parse (numbers: none)": { - "us": 1193.7, + "us": 1192.1, "level": "full" }, "parser (reused)": { - "us": 1208.6, + "us": 1202.1, "level": "full" }, "parse": { - "us": 1209.1, + "us": 1209.2, "level": "full" } } @@ -240,95 +240,95 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1801.0, + "us": 1798.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1169.4, + "us": 1173.1, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2148.9, + "us": 2210.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1460.4, + "us": 1455.7, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1131.5, + "us": 1128.8, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1169.4, + "us": 1173.1, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 1219.0, + "us": 1221.7, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 1258.1, + "us": 1256.9, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 1282.0, + "us": 1273.0, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1296.3, + "us": 1304.1, "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 1340.1, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 1458.9, + "us": 1329.0, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1460.4, + "us": 1455.7, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 1474.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1755.5, + "us": 1750.6, "level": "full" }, "insitu (copy)": { - "us": 1801.0, + "us": 1798.1, "level": "full" }, "SAX (default precision)": { - "us": 1964.3, + "us": 1979.5, "level": "full" }, "SAX": { - "us": 2003.1, + "us": 2015.1, "level": "full" }, "SAX (raw numbers)": { - "us": 2032.9, - "level": "full" - }, - "SAX (string stream, default precision)": { - "us": 2103.7, + "us": 2062.6, "level": "full" }, "SAX (string stream)": { - "us": 2115.6, + "us": 2118.7, "level": "full" }, - "Document (reused allocator)": { - "us": 2148.9, + "SAX (string stream, default precision)": { + "us": 2132.8, "level": "full" }, "Document": { - "us": 2212.2, + "us": 2209.6, + "level": "full" + }, + "Document (reused allocator)": { + "us": 2210.6, "level": "full" } } @@ -426,35 +426,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 511.6, + "us": 508.8, "level": "full" }, "best_any": { "variant": "accept", - "us": 511.6, + "us": 508.8, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 770.3, + "us": 768.6, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 770.3, + "us": 768.6, "level": "full" }, "variants": { "accept": { - "us": 511.6, + "us": 508.8, "level": "full" }, "parse": { - "us": 746.0, + "us": 767.8, "level": "full" }, "read (reused)": { - "us": 770.3, + "us": 768.6, "level": "full" } } @@ -462,67 +462,67 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 1389.6, + "us": 711.3, "level": "full" }, "best_any": { "variant": "accept", - "us": 1389.6, + "us": 711.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 1389.6, + "us": 711.3, "level": "full" }, "parse": { - "us": 5340.5, + "us": 4582.4, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 897.1, + "variant": "read", + "us": 887.1, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 897.1, + "variant": "read", + "us": 887.1, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 1037.1, + "us": 909.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1037.1, + "us": 909.3, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 811.2, - "level": "full" - }, - "insitu (copy)": { - "us": 897.1, - "level": "full" - }, - "read (raw numbers)": { - "us": 912.7, + "us": 782.2, "level": "full" }, "read": { - "us": 946.8, + "us": 887.1, + "level": "full" + }, + "insitu (copy)": { + "us": 891.9, + "level": "full" + }, + "read (raw numbers)": { + "us": 907.3, "level": "full" }, "read (reused allocator)": { - "us": 1037.1, + "us": 909.3, "level": "full" } } @@ -530,31 +530,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 732.0, + "us": 720.7, "level": "full" }, "best_any": { "variant": "DOM", - "us": 732.0, + "us": 720.7, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 724.6, + "us": 717.7, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 724.6, + "us": 717.7, "level": "full" }, "variants": { "DOM (reused)": { - "us": 724.6, + "us": 717.7, "level": "full" }, "DOM": { - "us": 732.0, + "us": 720.7, "level": "full" } } @@ -563,14 +563,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1032.1, + "us": 998.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1032.1, + "us": 998.3, "level": "no UTF-8" } } @@ -578,83 +578,83 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 1430.8, + "us": 1230.3, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 1430.8, + "us": 1230.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 1430.8, + "us": 1230.3, "level": "full" }, "generic (double, strict)": { - "us": 3995.2, + "us": 3865.5, "level": "full" }, "generic (double)": { - "us": 4123.3, + "us": 3885.3, + "level": "partial" + }, + "generic": { + "us": 6668.3, "level": "partial" }, "generic (strict)": { - "us": 6920.5, + "us": 6671.0, "level": "full" - }, - "generic": { - "us": 7111.1, - "level": "partial" } } }, "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 909.8, + "us": 903.3, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 909.8, + "us": 903.3, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 925.3, + "us": 923.7, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 925.3, + "us": 923.7, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 909.8, - "level": "full" - }, - "SAX (reused)": { - "us": 925.3, + "us": 903.3, "level": "full" }, "SAX": { - "us": 937.7, + "us": 919.0, + "level": "full" + }, + "SAX (reused)": { + "us": 923.7, "level": "full" }, "parse (numbers: none)": { - "us": 1612.0, - "level": "full" - }, - "parse": { - "us": 1708.6, + "us": 1543.7, "level": "full" }, "parser (reused)": { - "us": 1710.5, + "us": 1609.4, + "level": "full" + }, + "parse": { + "us": 1610.7, "level": "full" } } @@ -662,95 +662,95 @@ "RapidJSON": { "best": { "variant": "SAX (default precision)", - "us": 1970.9, + "us": 1944.1, "level": "full" }, "best_any": { "variant": "SAX (default precision) (no encoding check)", - "us": 1572.1, + "us": 1504.0, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2520.2, + "us": 2457.2, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 2040.7, + "us": 1941.7, "level": "no UTF-8" }, "variants": { "SAX (default precision) (no encoding check)": { - "us": 1572.1, + "us": 1504.0, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 1698.0, + "us": 1652.6, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1704.9, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 1838.7, + "us": 1710.3, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 1914.3, + "us": 1807.5, "level": "no UTF-8" }, - "insitu (copy) (no encoding check)": { - "us": 1948.9, - "level": "no UTF-8" - }, - "SAX (default precision)": { - "us": 1970.9, - "level": "full" - }, - "SAX (raw numbers) (no encoding check)": { - "us": 1994.7, + "SAX (string stream) (no encoding check)": { + "us": 1808.0, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 2040.7, + "us": 1941.7, + "level": "no UTF-8" + }, + "SAX (default precision)": { + "us": 1944.1, + "level": "full" + }, + "insitu (copy) (no encoding check)": { + "us": 1967.1, + "level": "no UTF-8" + }, + "SAX (raw numbers) (no encoding check)": { + "us": 1987.2, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 2101.7, + "us": 1991.3, "level": "no UTF-8" }, "SAX (string stream, default precision)": { - "us": 2202.8, + "us": 2146.2, "level": "full" }, "SAX": { - "us": 2224.7, - "level": "full" - }, - "SAX (string stream)": { - "us": 2251.2, + "us": 2186.6, "level": "full" }, "insitu (copy untimed)": { - "us": 2315.2, + "us": 2226.6, + "level": "full" + }, + "SAX (string stream)": { + "us": 2238.8, "level": "full" }, "insitu (copy)": { - "us": 2350.4, + "us": 2292.0, "level": "full" }, "SAX (raw numbers)": { - "us": 2494.1, + "us": 2398.9, "level": "full" }, "Document (reused allocator)": { - "us": 2520.2, + "us": 2457.2, "level": "full" }, "Document": { - "us": 2589.4, + "us": 2474.8, "level": "full" } } @@ -848,35 +848,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 1055.0, + "us": 1031.7, "level": "full" }, "best_any": { "variant": "accept", - "us": 1055.0, + "us": 1031.7, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 1448.8, + "us": 1369.8, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 1448.8, + "us": 1369.8, "level": "full" }, "variants": { "accept": { - "us": 1055.0, + "us": 1031.7, "level": "full" }, "parse": { - "us": 1396.6, + "us": 1366.6, "level": "full" }, "read (reused)": { - "us": 1448.8, + "us": 1369.8, "level": "full" } } @@ -884,23 +884,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 4264.7, + "us": 2018.4, "level": "full" }, "best_any": { "variant": "accept", - "us": 4264.7, + "us": 2018.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 4264.7, + "us": 2018.4, "level": "full" }, "parse": { - "us": 11823.5, + "us": 9825.6, "level": "full" } } @@ -908,43 +908,43 @@ "yyjson": { "best": { "variant": "read (raw numbers)", - "us": 2580.3, + "us": 2571.9, "level": "full" }, "best_any": { "variant": "read (raw numbers)", - "us": 2580.3, + "us": 2571.9, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 2887.6, + "us": 2802.9, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 2887.6, + "us": 2802.9, "level": "full" }, "variants": { "read (raw numbers)": { - "us": 2580.3, + "us": 2571.9, "level": "full" }, "insitu (copy untimed)": { - "us": 2662.2, + "us": 2645.8, "level": "full" }, "insitu (copy)": { - "us": 2844.5, + "us": 2799.5, "level": "full" }, "read (reused allocator)": { - "us": 2887.6, + "us": 2802.9, "level": "full" }, "read": { - "us": 2966.7, + "us": 2839.7, "level": "full" } } @@ -952,31 +952,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 3205.9, + "us": 3201.9, "level": "full" }, "best_any": { "variant": "DOM", - "us": 3205.9, + "us": 3201.9, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 3292.9, + "us": 3243.9, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 3292.9, + "us": 3243.9, "level": "full" }, "variants": { "DOM": { - "us": 3205.9, + "us": 3201.9, "level": "full" }, "DOM (reused)": { - "us": 3292.9, + "us": 3243.9, "level": "full" } } @@ -985,14 +985,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3143.4, + "us": 3030.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3143.4, + "us": 3030.6, "level": "no UTF-8" } } @@ -1000,83 +1000,83 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 1867.4, + "us": 2138.6, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 1867.4, + "us": 2138.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 1867.4, + "us": 2138.6, "level": "full" }, "generic (double, strict)": { - "us": 11751.4, + "us": 11472.1, "level": "full" }, "generic (double)": { - "us": 11793.7, + "us": 11778.3, + "level": "partial" + }, + "generic": { + "us": 22749.4, "level": "partial" }, "generic (strict)": { - "us": 22606.9, + "us": 23027.0, "level": "full" - }, - "generic": { - "us": 22721.5, - "level": "partial" } } }, "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 1684.1, + "us": 1678.4, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 1684.1, + "us": 1678.4, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 5933.1, + "us": 5876.8, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 5933.1, + "us": 5876.8, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 1684.1, + "us": 1678.4, "level": "full" }, "parse (numbers: none)": { - "us": 2459.5, + "us": 2461.2, "level": "full" }, "SAX (reused)": { - "us": 5933.1, + "us": 5876.8, "level": "full" }, "SAX": { - "us": 5979.3, + "us": 6027.6, "level": "full" }, "parser (reused)": { - "us": 6972.4, + "us": 6874.4, "level": "full" }, "parse": { - "us": 7150.0, + "us": 6967.6, "level": "full" } } @@ -1084,95 +1084,95 @@ "RapidJSON": { "best": { "variant": "SAX (string stream, default precision)", - "us": 4117.8, + "us": 4019.3, "level": "full" }, "best_any": { - "variant": "SAX (string stream, default precision) (no encoding check)", - "us": 4082.6, - "level": "no UTF-8" + "variant": "SAX (string stream, default precision)", + "us": 4019.3, + "level": "full" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 12334.6, + "us": 12682.9, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 12334.6, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 12227.2, + "level": "no UTF-8" }, "variants": { - "SAX (string stream, default precision) (no encoding check)": { - "us": 4082.6, - "level": "no UTF-8" - }, "SAX (string stream, default precision)": { - "us": 4117.8, + "us": 4019.3, "level": "full" }, + "SAX (string stream, default precision) (no encoding check)": { + "us": 4045.4, + "level": "no UTF-8" + }, "SAX (default precision)": { - "us": 4594.0, + "us": 4605.7, "level": "full" }, "SAX (default precision) (no encoding check)": { - "us": 5086.9, + "us": 5131.2, "level": "no UTF-8" }, "SAX (raw numbers)": { - "us": 10530.4, + "us": 10606.4, "level": "full" }, "SAX (string stream) (no encoding check)": { - "us": 10837.2, + "us": 10627.2, + "level": "no UTF-8" + }, + "SAX (raw numbers) (no encoding check)": { + "us": 10690.5, "level": "no UTF-8" }, "SAX (string stream)": { - "us": 10851.7, + "us": 10961.6, "level": "full" }, - "SAX (raw numbers) (no encoding check)": { - "us": 10964.8, - "level": "no UTF-8" - }, "SAX": { - "us": 11392.6, + "us": 11107.9, "level": "full" }, "insitu (copy untimed)": { - "us": 11510.7, + "us": 11355.9, "level": "full" }, - "insitu (copy)": { - "us": 11686.9, - "level": "full" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 11721.3, - "level": "no UTF-8" - }, "SAX (no encoding check)": { - "us": 11785.8, + "us": 11439.4, "level": "no UTF-8" }, - "insitu (copy) (no encoding check)": { - "us": 11843.6, + "insitu (copy untimed) (no encoding check)": { + "us": 11490.4, "level": "no UTF-8" }, - "Document (reused allocator)": { - "us": 12334.6, + "insitu (copy)": { + "us": 11662.6, "level": "full" }, + "insitu (copy) (no encoding check)": { + "us": 11797.8, + "level": "no UTF-8" + }, "Document (no encoding check)": { - "us": 12422.8, + "us": 12169.1, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 12718.7, + "us": 12227.2, "level": "no UTF-8" }, "Document": { - "us": 13030.0, + "us": 12443.3, + "level": "full" + }, + "Document (reused allocator)": { + "us": 12682.9, "level": "full" } } @@ -1270,35 +1270,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 34729.3, + "us": 34454.1, "level": "full" }, "best_any": { "variant": "accept", - "us": 34729.3, + "us": 34454.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 42999.2, + "us": 41359.1, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 42999.2, + "us": 41359.1, "level": "full" }, "variants": { "accept": { - "us": 34729.3, + "us": 34454.1, "level": "full" }, "read (reused)": { - "us": 42999.2, + "us": 41359.1, "level": "full" }, "parse": { - "us": 76775.5, + "us": 77208.3, "level": "full" } } @@ -1306,23 +1306,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 71981.6, + "us": 39512.7, "level": "full" }, "best_any": { "variant": "accept", - "us": 71981.6, + "us": 39512.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 71981.6, + "us": 39512.7, "level": "full" }, "parse": { - "us": 384444.5, + "us": 344781.4, "level": "full" } } @@ -1330,43 +1330,43 @@ "yyjson": { "best": { "variant": "read (raw numbers)", - "us": 119584.8, + "us": 123640.2, "level": "full" }, "best_any": { "variant": "read (raw numbers)", - "us": 119584.8, + "us": 123640.2, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 55858.2, + "us": 56593.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 55858.2, + "us": 56593.3, "level": "full" }, "variants": { "read (reused allocator)": { - "us": 55858.2, + "us": 56593.3, "level": "full" }, "insitu (copy untimed)": { - "us": 83152.6, + "us": 81175.2, "level": "full" }, "read (raw numbers)": { - "us": 119584.8, - "level": "full" - }, - "read": { - "us": 121327.6, + "us": 123640.2, "level": "full" }, "insitu (copy)": { - "us": 122616.5, + "us": 123915.2, + "level": "full" + }, + "read": { + "us": 124852.8, "level": "full" } } @@ -1374,31 +1374,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 113452.3, + "us": 116858.9, "level": "full" }, "best_any": { "variant": "DOM", - "us": 113452.3, + "us": 116858.9, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 47118.4, + "us": 48549.8, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 47118.4, + "us": 48549.8, "level": "full" }, "variants": { "DOM (reused)": { - "us": 47118.4, + "us": 48549.8, "level": "full" }, "DOM": { - "us": 113452.3, + "us": 116858.9, "level": "full" } } @@ -1407,14 +1407,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 94884.1, + "us": 95822.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 94884.1, + "us": 95822.6, "level": "no UTF-8" } } @@ -1422,179 +1422,179 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 75570.8, + "us": 73235.2, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 75570.8, + "us": 73235.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 75570.8, - "level": "full" - }, - "generic (double, strict)": { - "us": 233320.9, + "us": 73235.2, "level": "full" }, "generic (double)": { - "us": 234246.5, + "us": 226553.5, "level": "partial" }, - "generic (strict)": { - "us": 368574.7, + "generic (double, strict)": { + "us": 236875.4, "level": "full" }, "generic": { - "us": 375564.1, + "us": 374692.8, "level": "partial" + }, + "generic (strict)": { + "us": 387547.8, + "level": "full" } } }, "Boost.JSON": { "best": { - "variant": "SAX (numbers: none)", - "us": 55497.5, + "variant": "SAX", + "us": 55086.7, "level": "full" }, "best_any": { - "variant": "SAX (numbers: none)", - "us": 55497.5, + "variant": "SAX", + "us": 55086.7, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 55237.4, + "us": 55153.8, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 55237.4, + "us": 55153.8, "level": "full" }, "variants": { + "SAX": { + "us": 55086.7, + "level": "full" + }, "SAX (reused)": { - "us": 55237.4, + "us": 55153.8, "level": "full" }, "SAX (numbers: none)": { - "us": 55497.5, - "level": "full" - }, - "SAX": { - "us": 55950.4, + "us": 55774.9, "level": "full" }, "parser (reused)": { - "us": 126349.5, + "us": 124571.6, "level": "full" }, "parse": { - "us": 182277.1, + "us": 184759.2, "level": "full" }, "parse (numbers: none)": { - "us": 184971.0, + "us": 187158.9, "level": "full" } } }, "RapidJSON": { "best": { - "variant": "insitu (copy)", - "us": 234135.6, + "variant": "SAX (string stream, default precision)", + "us": 232683.8, "level": "full" }, "best_any": { "variant": "SAX (string stream, default precision) (no encoding check)", - "us": 132912.2, + "us": 128515.8, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 275235.6, + "us": 282152.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 182631.7, + "us": 183479.4, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 131204.4, + "us": 124959.0, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 132912.2, + "us": 128515.8, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 133946.0, - "level": "no UTF-8" - }, - "SAX (raw numbers) (no encoding check)": { - "us": 155593.3, + "us": 130812.7, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 163058.5, + "us": 156044.3, + "level": "no UTF-8" + }, + "SAX (raw numbers) (no encoding check)": { + "us": 156423.1, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 165538.6, + "us": 156922.5, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 167275.8, + "us": 165809.9, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 182631.7, + "us": 183479.4, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 192707.7, + "us": 187078.4, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 198914.8, - "level": "full" - }, - "insitu (copy)": { - "us": 234135.6, + "us": 199092.4, "level": "full" }, "SAX (string stream, default precision)": { - "us": 234723.4, + "us": 232683.8, "level": "full" }, "SAX (string stream)": { - "us": 240913.1, + "us": 237543.6, "level": "full" }, "SAX (raw numbers)": { - "us": 242693.5, - "level": "full" - }, - "SAX": { - "us": 247972.6, + "us": 240615.5, "level": "full" }, "SAX (default precision)": { - "us": 248281.3, + "us": 242653.9, "level": "full" }, - "Document (reused allocator)": { - "us": 275235.6, + "insitu (copy)": { + "us": 242760.2, + "level": "full" + }, + "SAX": { + "us": 244456.3, "level": "full" }, "Document": { - "us": 295063.9, + "us": 268496.2, + "level": "full" + }, + "Document (reused allocator)": { + "us": 282152.6, "level": "full" } } @@ -1728,23 +1728,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 3.5, + "us": 1.4, "level": "full" }, "best_any": { "variant": "accept", - "us": 3.5, + "us": 1.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 3.5, + "us": 1.4, "level": "full" }, "parse": { - "us": 21.1, + "us": 17.8, "level": "full" } } @@ -1844,36 +1844,36 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 2.4, + "us": 2.5, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 2.4, + "us": 2.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 2.4, - "level": "full" - }, - "generic (double, strict)": { - "us": 9.0, + "us": 2.5, "level": "full" }, "generic (double)": { - "us": 9.4, + "us": 8.5, + "level": "partial" + }, + "generic (double, strict)": { + "us": 8.6, + "level": "full" + }, + "generic": { + "us": 14.5, "level": "partial" }, "generic (strict)": { "us": 14.6, "level": "full" - }, - "generic": { - "us": 15.5, - "level": "partial" } } }, @@ -1915,12 +1915,12 @@ "us": 5.5, "level": "full" }, - "parse (numbers: none)": { + "parse": { "us": 5.7, "level": "full" }, - "parse": { - "us": 5.9, + "parse (numbers: none)": { + "us": 5.7, "level": "full" } } @@ -1928,7 +1928,7 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 8.3, + "us": 8.1, "level": "full" }, "best_any": { @@ -1938,15 +1938,19 @@ }, "best_reused": { "variant": "Document (reused allocator)", - "us": 11.3, + "us": 11.4, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 7.4, + "us": 7.3, "level": "no UTF-8" }, "variants": { + "insitu (copy untimed) (no encoding check)": { + "us": 4.0, + "level": "no UTF-8" + }, "insitu (copy) (no encoding check)": { "us": 4.1, "level": "no UTF-8" @@ -1955,10 +1959,6 @@ "us": 4.1, "level": "no UTF-8" }, - "insitu (copy untimed) (no encoding check)": { - "us": 4.2, - "level": "no UTF-8" - }, "SAX (string stream) (no encoding check)": { "us": 4.2, "level": "no UTF-8" @@ -1976,19 +1976,19 @@ "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 7.4, + "us": 7.3, "level": "no UTF-8" }, "Document (no encoding check)": { "us": 7.8, "level": "no UTF-8" }, - "insitu (copy untimed)": { - "us": 8.2, + "insitu (copy)": { + "us": 8.1, "level": "full" }, - "insitu (copy)": { - "us": 8.3, + "insitu (copy untimed)": { + "us": 8.1, "level": "full" }, "SAX (string stream, default precision)": { @@ -1996,27 +1996,27 @@ "level": "full" }, "SAX (string stream)": { - "us": 9.9, + "us": 9.8, + "level": "full" + }, + "SAX (default precision)": { + "us": 10.2, "level": "full" }, "SAX (raw numbers)": { - "us": 10.5, + "us": 10.3, "level": "full" }, "SAX": { "us": 10.6, "level": "full" }, - "SAX (default precision)": { - "us": 10.6, - "level": "full" - }, "Document (reused allocator)": { - "us": 11.3, + "us": 11.4, "level": "full" }, "Document": { - "us": 11.8, + "us": 11.5, "level": "full" } } @@ -2114,35 +2114,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 214.6, + "us": 208.4, "level": "full" }, "best_any": { "variant": "accept", - "us": 214.6, + "us": 208.4, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 252.4, + "us": 244.9, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 252.4, + "us": 244.9, "level": "full" }, "variants": { "accept": { - "us": 214.6, + "us": 208.4, "level": "full" }, "read (reused)": { - "us": 252.4, + "us": 244.9, "level": "full" }, "parse": { - "us": 256.8, + "us": 251.6, "level": "full" } } @@ -2150,23 +2150,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 580.2, + "us": 260.6, "level": "full" }, "best_any": { "variant": "accept", - "us": 580.2, + "us": 260.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 580.2, + "us": 260.6, "level": "full" }, "parse": { - "us": 3430.1, + "us": 3297.2, "level": "full" } } @@ -2174,43 +2174,43 @@ "yyjson": { "best": { "variant": "read", - "us": 318.3, + "us": 322.5, "level": "full" }, "best_any": { "variant": "read", - "us": 318.3, + "us": 322.5, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 318.1, + "us": 322.7, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 318.1, + "us": 322.7, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 282.6, - "level": "full" - }, - "read (reused allocator)": { - "us": 318.1, + "us": 288.5, "level": "full" }, "read": { - "us": 318.3, + "us": 322.5, "level": "full" }, "insitu (copy)": { - "us": 319.5, + "us": 322.5, + "level": "full" + }, + "read (reused allocator)": { + "us": 322.7, "level": "full" }, "read (raw numbers)": { - "us": 324.4, + "us": 334.7, "level": "full" } } @@ -2218,31 +2218,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 286.5, + "us": 287.8, "level": "full" }, "best_any": { "variant": "DOM", - "us": 286.5, + "us": 287.8, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 286.0, + "us": 288.2, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 286.0, + "us": 288.2, "level": "full" }, "variants": { - "DOM (reused)": { - "us": 286.0, + "DOM": { + "us": 287.8, "level": "full" }, - "DOM": { - "us": 286.5, + "DOM (reused)": { + "us": 288.2, "level": "full" } } @@ -2251,14 +2251,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 332.0, + "us": 331.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 332.0, + "us": 331.5, "level": "no UTF-8" } } @@ -2266,83 +2266,83 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 458.7, + "us": 478.9, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 458.7, + "us": 478.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 458.7, - "level": "full" - }, - "generic (double, strict)": { - "us": 2147.0, + "us": 478.9, "level": "full" }, "generic (double)": { - "us": 2147.2, + "us": 2261.3, "level": "partial" }, - "generic (strict)": { - "us": 3124.9, + "generic (double, strict)": { + "us": 2301.5, "level": "full" }, "generic": { - "us": 3213.5, + "us": 3368.1, "level": "partial" + }, + "generic (strict)": { + "us": 3456.3, + "level": "full" } } }, "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 421.4, + "us": 430.9, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 421.4, + "us": 430.9, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 431.3, + "us": 438.9, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 431.3, + "us": 438.9, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 421.4, - "level": "full" - }, - "SAX (reused)": { - "us": 431.3, + "us": 430.9, "level": "full" }, "SAX": { - "us": 434.3, + "us": 436.7, "level": "full" }, - "parse (numbers: none)": { - "us": 1096.1, - "level": "full" - }, - "parser (reused)": { - "us": 1108.5, + "SAX (reused)": { + "us": 438.9, "level": "full" }, "parse": { - "us": 1110.6, + "us": 1110.7, + "level": "full" + }, + "parse (numbers: none)": { + "us": 1118.3, + "level": "full" + }, + "parser (reused)": { + "us": 1160.0, "level": "full" } } @@ -2350,95 +2350,95 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1485.9, + "us": 1518.2, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 907.8, + "us": 931.1, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2057.8, + "us": 2243.8, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1372.7, + "us": 1388.5, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 865.1, + "us": 874.2, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 907.8, + "us": 931.1, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 959.2, + "us": 969.6, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 993.6, + "us": 997.9, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 1185.0, + "us": 1198.5, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1203.2, + "us": 1242.2, "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 1237.8, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 1372.7, + "us": 1292.2, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1376.3, + "us": 1388.2, "level": "no UTF-8" }, - "insitu (copy untimed)": { - "us": 1453.9, - "level": "full" + "Document (reused allocator) (no encoding check)": { + "us": 1388.5, + "level": "no UTF-8" }, "insitu (copy)": { - "us": 1485.9, + "us": 1518.2, + "level": "full" + }, + "insitu (copy untimed)": { + "us": 1520.3, "level": "full" }, "SAX (string stream, default precision)": { - "us": 1791.1, + "us": 1845.3, "level": "full" }, "SAX (string stream)": { - "us": 1796.1, + "us": 1869.5, "level": "full" }, "SAX (default precision)": { - "us": 1863.4, - "level": "full" - }, - "SAX (raw numbers)": { - "us": 1893.2, + "us": 1938.1, "level": "full" }, "SAX": { - "us": 1964.3, + "us": 1963.7, "level": "full" }, - "Document (reused allocator)": { - "us": 2057.8, + "SAX (raw numbers)": { + "us": 1971.2, "level": "full" }, "Document": { - "us": 2129.2, + "us": 2115.2, + "level": "full" + }, + "Document (reused allocator)": { + "us": 2243.8, "level": "full" } } @@ -2536,35 +2536,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 315.2, + "us": 312.4, "level": "full" }, "best_any": { "variant": "accept", - "us": 315.2, + "us": 312.4, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 493.8, + "us": 492.4, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 493.8, + "us": 492.4, "level": "full" }, "variants": { "accept": { - "us": 315.2, + "us": 312.4, "level": "full" }, "read (reused)": { - "us": 493.8, + "us": 492.4, "level": "full" }, "parse": { - "us": 495.0, + "us": 493.8, "level": "full" } } @@ -2572,67 +2572,67 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 1089.0, + "us": 451.2, "level": "full" }, "best_any": { "variant": "accept", - "us": 1089.0, + "us": 451.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 1089.0, + "us": 451.2, "level": "full" }, "parse": { - "us": 4805.5, + "us": 4196.2, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 483.6, + "variant": "read", + "us": 483.7, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 483.6, + "variant": "read", + "us": 483.7, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 483.1, + "us": 483.6, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 483.1, + "us": 483.6, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 448.5, + "us": 447.9, "level": "full" }, "read (reused allocator)": { - "us": 483.1, - "level": "full" - }, - "insitu (copy)": { "us": 483.6, "level": "full" }, "read": { - "us": 484.6, + "us": 483.7, + "level": "full" + }, + "insitu (copy)": { + "us": 484.5, "level": "full" }, "read (raw numbers)": { - "us": 516.0, + "us": 514.1, "level": "full" } } @@ -2640,31 +2640,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 564.9, + "us": 564.5, "level": "full" }, "best_any": { "variant": "DOM", - "us": 564.9, + "us": 564.5, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 565.0, + "us": 565.1, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 565.0, + "us": 565.1, "level": "full" }, "variants": { "DOM": { - "us": 564.9, + "us": 564.5, "level": "full" }, "DOM (reused)": { - "us": 565.0, + "us": 565.1, "level": "full" } } @@ -2673,14 +2673,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 678.2, + "us": 677.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 678.2, + "us": 677.0, "level": "no UTF-8" } } @@ -2688,83 +2688,83 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 651.9, + "us": 663.0, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 651.9, + "us": 663.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 651.9, + "us": 663.0, "level": "full" }, "generic (double, strict)": { - "us": 3245.6, + "us": 3232.2, "level": "full" }, "generic (double)": { - "us": 3335.2, + "us": 3306.4, + "level": "partial" + }, + "generic": { + "us": 5883.8, "level": "partial" }, "generic (strict)": { - "us": 5945.8, + "us": 5895.8, "level": "full" - }, - "generic": { - "us": 5996.0, - "level": "partial" } } }, "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 526.2, + "us": 528.0, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 526.2, + "us": 528.0, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 579.6, + "us": 589.6, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 579.6, + "us": 589.6, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 526.2, + "us": 528.0, "level": "full" }, "SAX": { - "us": 578.9, + "us": 584.1, "level": "full" }, "SAX (reused)": { - "us": 579.6, + "us": 589.6, "level": "full" }, "parse (numbers: none)": { - "us": 1309.6, + "us": 1278.5, "level": "full" }, "parser (reused)": { - "us": 1384.3, + "us": 1330.5, "level": "full" }, "parse": { - "us": 1385.1, + "us": 1336.9, "level": "full" } } @@ -2772,95 +2772,95 @@ "RapidJSON": { "best": { "variant": "SAX (string stream, default precision)", - "us": 1624.3, + "us": 1619.5, "level": "full" }, "best_any": { "variant": "SAX (default precision) (no encoding check)", - "us": 1192.3, + "us": 1187.1, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2161.2, + "us": 2210.5, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1679.9, + "us": 1690.2, "level": "no UTF-8" }, "variants": { "SAX (default precision) (no encoding check)": { - "us": 1192.3, + "us": 1187.1, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 1200.0, + "us": 1194.3, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 1307.1, + "us": 1310.7, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1366.1, + "us": 1364.4, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 1409.5, + "us": 1408.7, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1439.7, + "us": 1443.8, "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 1595.7, + "us": 1589.0, "level": "no UTF-8" }, "SAX (string stream, default precision)": { - "us": 1624.3, + "us": 1619.5, "level": "full" }, "SAX (default precision)": { - "us": 1631.5, + "us": 1626.9, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 1679.9, + "us": 1690.2, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1707.7, + "us": 1710.5, "level": "full" }, "SAX (string stream)": { - "us": 1734.2, + "us": 1725.8, "level": "full" }, "insitu (copy)": { - "us": 1739.4, + "us": 1741.8, "level": "full" }, "Document (no encoding check)": { - "us": 1756.1, + "us": 1755.3, "level": "no UTF-8" }, "SAX": { - "us": 1877.9, + "us": 1942.3, "level": "full" }, "SAX (raw numbers)": { - "us": 2023.9, + "us": 2032.0, "level": "full" }, "Document (reused allocator)": { - "us": 2161.2, + "us": 2210.5, "level": "full" }, "Document": { - "us": 2253.5, + "us": 2234.0, "level": "full" } } @@ -2960,35 +2960,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 373.8, + "us": 366.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 373.8, + "us": 366.5, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 362.5, + "us": 361.1, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 362.5, + "us": 361.1, "level": "full" }, "variants": { "read (reused)": { - "us": 362.5, + "us": 361.1, "level": "full" }, "parse": { - "us": 373.8, + "us": 366.5, "level": "full" }, "parse_copy": { - "us": 411.2, + "us": 408.8, "level": "full" } } @@ -2996,23 +2996,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 728.1, + "us": 431.2, "level": "full" }, "best_any": { "variant": "sax", - "us": 728.1, + "us": 431.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 728.1, + "us": 431.2, "level": "full" }, "parse": { - "us": 3789.3, + "us": 3317.7, "level": "full" } } @@ -3020,39 +3020,39 @@ "yyjson": { "best": { "variant": "read", - "us": 436.8, + "us": 435.7, "level": "full" }, "best_any": { "variant": "read", - "us": 436.8, + "us": 435.7, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 442.1, + "us": 434.7, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 442.1, + "us": 434.7, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 399.0, - "level": "full" - }, - "read": { - "us": 436.8, - "level": "full" - }, - "insitu (copy)": { - "us": 437.2, + "us": 393.4, "level": "full" }, "read (reused allocator)": { - "us": 442.1, + "us": 434.7, + "level": "full" + }, + "read": { + "us": 435.7, + "level": "full" + }, + "insitu (copy)": { + "us": 436.7, "level": "full" } } @@ -3060,39 +3060,39 @@ "simdjson": { "best": { "variant": "DOM", - "us": 393.6, + "us": 391.2, "level": "full" }, "best_any": { "variant": "DOM", - "us": 393.6, + "us": 391.2, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 393.3, + "us": 393.2, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 393.3, + "us": 393.2, "level": "full" }, "variants": { - "DOM (reused)": { - "us": 393.3, + "DOM": { + "us": 391.2, "level": "full" }, - "DOM": { - "us": 393.6, + "DOM (reused)": { + "us": 393.2, "level": "full" }, "On-Demand": { - "us": 570.3, + "us": 560.8, "level": "full" }, "On-Demand (reused)": { - "us": 576.4, + "us": 563.4, "level": "full" } } @@ -3101,14 +3101,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 501.7, + "us": 504.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 501.7, + "us": 504.0, "level": "no UTF-8" } } @@ -3116,35 +3116,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 2427.0, + "us": 2373.7, "level": "full" }, "best_any": { "variant": "generic (double, strict)", - "us": 2427.0, + "us": 2373.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "generic (double, strict)": { - "us": 2427.0, + "us": 2373.7, "level": "full" }, "generic (double)": { - "us": 2434.3, + "us": 2461.7, "level": "partial" }, "lazy_json": { - "us": 2612.7, + "us": 2578.8, "level": "partial" }, "generic (strict)": { - "us": 3441.4, + "us": 3442.7, "level": "full" }, "generic": { - "us": 3466.7, + "us": 3458.1, "level": "partial" } }, @@ -3155,39 +3155,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 579.5, + "us": 580.1, "level": "full" }, "best_any": { "variant": "SAX", - "us": 579.5, + "us": 580.1, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 580.1, + "us": 577.2, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 580.1, + "us": 577.2, "level": "full" }, "variants": { - "SAX": { - "us": 579.5, + "SAX (reused)": { + "us": 577.2, "level": "full" }, - "SAX (reused)": { + "SAX": { "us": 580.1, "level": "full" }, "parser (reused)": { - "us": 1270.0, + "us": 1268.9, "level": "full" }, "parse": { - "us": 1278.1, + "us": 1275.9, "level": "full" } } @@ -3195,71 +3195,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1856.0, + "us": 1846.5, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1228.2, + "us": 1229.2, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2217.8, + "us": 2254.8, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1519.6, + "us": 1519.5, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1186.9, + "us": 1188.0, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1228.2, + "us": 1229.2, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 1264.6, + "us": 1261.6, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1351.4, + "us": 1357.1, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1519.6, + "us": 1519.5, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1522.2, + "us": 1530.1, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1816.0, + "us": 1805.7, "level": "full" }, "insitu (copy)": { - "us": 1856.0, + "us": 1846.5, "level": "full" }, "SAX": { - "us": 2118.4, + "us": 2059.3, "level": "full" }, "SAX (string stream)": { - "us": 2144.0, - "level": "full" - }, - "Document (reused allocator)": { - "us": 2217.8, + "us": 2107.4, "level": "full" }, "Document": { - "us": 2282.9, + "us": 2220.4, + "level": "full" + }, + "Document (reused allocator)": { + "us": 2254.8, "level": "full" } } @@ -3353,35 +3353,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 923.4, + "us": 940.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 923.4, + "us": 940.6, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 922.6, + "us": 946.4, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 922.6, + "us": 946.4, "level": "full" }, "variants": { - "read (reused)": { - "us": 922.6, + "parse": { + "us": 940.6, "level": "full" }, - "parse": { - "us": 923.4, + "read (reused)": { + "us": 946.4, "level": "full" }, "parse_copy": { - "us": 1039.8, + "us": 1057.6, "level": "full" } } @@ -3389,63 +3389,63 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 1393.4, + "us": 914.1, "level": "full" }, "best_any": { "variant": "sax", - "us": 1393.4, + "us": 914.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 1393.4, + "us": 914.1, "level": "full" }, "parse": { - "us": 5481.8, + "us": 4801.0, "level": "full" } } }, "yyjson": { "best": { - "variant": "read", - "us": 1064.0, + "variant": "insitu (copy)", + "us": 1047.5, "level": "full" }, "best_any": { - "variant": "read", - "us": 1064.0, + "variant": "insitu (copy)", + "us": 1047.5, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 1100.8, + "us": 1053.0, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1100.8, + "us": 1053.0, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 945.5, - "level": "full" - }, - "read": { - "us": 1064.0, + "us": 939.3, "level": "full" }, "insitu (copy)": { - "us": 1064.9, + "us": 1047.5, + "level": "full" + }, + "read": { + "us": 1050.4, "level": "full" }, "read (reused allocator)": { - "us": 1100.8, + "us": 1053.0, "level": "full" } } @@ -3453,39 +3453,39 @@ "simdjson": { "best": { "variant": "DOM", - "us": 977.4, + "us": 969.3, "level": "full" }, "best_any": { "variant": "DOM", - "us": 977.4, + "us": 969.3, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 993.2, + "us": 968.6, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 993.2, + "us": 968.6, "level": "full" }, "variants": { - "DOM": { - "us": 977.4, + "DOM (reused)": { + "us": 968.6, "level": "full" }, - "DOM (reused)": { - "us": 993.2, + "DOM": { + "us": 969.3, "level": "full" }, "On-Demand (reused)": { - "us": 1353.7, + "us": 1341.2, "level": "full" }, "On-Demand": { - "us": 1379.7, + "us": 1367.2, "level": "full" } } @@ -3494,14 +3494,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1175.4, + "us": 1176.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1175.4, + "us": 1176.4, "level": "no UTF-8" } } @@ -3509,35 +3509,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 3972.0, + "us": 3982.3, "level": "full" }, "best_any": { "variant": "generic (double, strict)", - "us": 3972.0, + "us": 3982.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "generic (double, strict)": { - "us": 3972.0, + "us": 3982.3, "level": "full" }, "generic (double)": { - "us": 4088.2, + "us": 4023.2, "level": "partial" }, "generic (strict)": { - "us": 6710.1, + "us": 6710.3, "level": "full" }, "generic": { - "us": 6937.1, + "us": 6737.7, "level": "partial" }, "lazy_json": { - "us": 11160.5, + "us": 10763.9, "level": "partial" } }, @@ -3548,39 +3548,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 928.1, + "us": 927.6, "level": "full" }, "best_any": { "variant": "SAX", - "us": 928.1, + "us": 927.6, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 927.6, + "us": 920.8, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 927.6, + "us": 920.8, "level": "full" }, "variants": { "SAX (reused)": { - "us": 927.6, + "us": 920.8, "level": "full" }, "SAX": { - "us": 928.1, + "us": 927.6, "level": "full" }, "parser (reused)": { - "us": 1828.4, + "us": 1766.2, "level": "full" }, "parse": { - "us": 1834.9, + "us": 1783.4, "level": "full" } } @@ -3588,71 +3588,71 @@ "RapidJSON": { "best": { "variant": "SAX", - "us": 2223.6, + "us": 2176.1, "level": "full" }, "best_any": { "variant": "SAX (no encoding check)", - "us": 1765.4, + "us": 1760.7, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2557.4, + "us": 2586.8, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 2109.9, + "us": 2110.0, "level": "no UTF-8" }, "variants": { "SAX (no encoding check)": { - "us": 1765.4, + "us": 1760.7, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 1809.8, + "us": 1799.9, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 1980.0, + "us": 1966.1, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 2101.3, + "us": 2084.6, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 2109.9, + "us": 2110.0, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 2170.8, + "us": 2164.8, "level": "no UTF-8" }, "SAX": { - "us": 2223.6, + "us": 2176.1, "level": "full" }, "SAX (string stream)": { - "us": 2274.4, + "us": 2284.9, "level": "full" }, "insitu (copy untimed)": { - "us": 2353.5, + "us": 2339.2, "level": "full" }, "insitu (copy)": { - "us": 2464.8, + "us": 2456.2, "level": "full" }, "Document (reused allocator)": { - "us": 2557.4, + "us": 2586.8, "level": "full" }, "Document": { - "us": 2661.3, + "us": 2614.8, "level": "full" } } @@ -3746,35 +3746,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 3845.5, + "us": 3679.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 3845.5, + "us": 3679.5, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 3733.9, + "us": 3677.4, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 3733.9, + "us": 3677.4, "level": "full" }, "variants": { "read (reused)": { - "us": 3733.9, + "us": 3677.4, "level": "full" }, "parse": { - "us": 3845.5, + "us": 3679.5, "level": "full" }, "parse_copy": { - "us": 3883.8, + "us": 3830.9, "level": "full" } } @@ -3782,63 +3782,63 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 5428.5, + "us": 3823.6, "level": "full" }, "best_any": { "variant": "sax", - "us": 5428.5, + "us": 3823.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 5428.5, + "us": 3823.6, "level": "full" }, "parse": { - "us": 12869.4, + "us": 10213.3, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 3581.5, + "variant": "read", + "us": 3453.6, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 3581.5, + "variant": "read", + "us": 3453.6, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 3646.2, + "us": 3461.8, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 3646.2, + "us": 3461.8, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 3444.8, - "level": "full" - }, - "insitu (copy)": { - "us": 3581.5, + "us": 3304.7, "level": "full" }, "read": { - "us": 3630.5, + "us": 3453.6, + "level": "full" + }, + "insitu (copy)": { + "us": 3458.6, "level": "full" }, "read (reused allocator)": { - "us": 3646.2, + "us": 3461.8, "level": "full" } } @@ -3846,39 +3846,39 @@ "simdjson": { "best": { "variant": "DOM", - "us": 4117.0, + "us": 4120.6, "level": "full" }, "best_any": { "variant": "DOM", - "us": 4117.0, + "us": 4120.6, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 4295.7, + "us": 4145.7, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 4295.7, + "us": 4145.7, "level": "full" }, "variants": { "DOM": { - "us": 4117.0, + "us": 4120.6, "level": "full" }, "DOM (reused)": { - "us": 4295.7, + "us": 4145.7, "level": "full" }, "On-Demand": { - "us": 5515.9, + "us": 5489.6, "level": "full" }, "On-Demand (reused)": { - "us": 5686.6, + "us": 5513.0, "level": "full" } } @@ -3887,14 +3887,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3753.5, + "us": 3700.9, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3753.5, + "us": 3700.9, "level": "no UTF-8" } } @@ -3902,36 +3902,36 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 12165.0, + "us": 11929.7, "level": "full" }, "best_any": { - "variant": "generic (double, strict)", - "us": 12165.0, - "level": "full" + "variant": "generic (double)", + "us": 11920.6, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (double, strict)": { - "us": 12165.0, - "level": "full" - }, "generic (double)": { - "us": 12375.6, + "us": 11920.6, "level": "partial" }, + "generic (double, strict)": { + "us": 11929.7, + "level": "full" + }, "lazy_json": { - "us": 17851.2, + "us": 17658.0, + "level": "partial" + }, + "generic": { + "us": 22805.9, "level": "partial" }, "generic (strict)": { - "us": 23299.6, + "us": 23201.9, "level": "full" - }, - "generic": { - "us": 23438.5, - "level": "partial" } }, "excluded": { @@ -3941,39 +3941,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 5809.0, + "us": 5714.8, "level": "full" }, "best_any": { "variant": "SAX", - "us": 5809.0, + "us": 5714.8, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 5919.6, + "us": 5720.3, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 5919.6, + "us": 5720.3, "level": "full" }, "variants": { "SAX": { - "us": 5809.0, + "us": 5714.8, "level": "full" }, "SAX (reused)": { - "us": 5919.6, + "us": 5720.3, "level": "full" }, "parser (reused)": { - "us": 7635.2, + "us": 7475.5, "level": "full" }, "parse": { - "us": 7713.0, + "us": 7529.0, "level": "full" } } @@ -3981,72 +3981,72 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 10718.9, + "us": 10561.3, "level": "full" }, "best_any": { "variant": "SAX (string stream)", - "us": 10718.9, + "us": 10561.3, "level": "full" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 13161.2, + "us": 13259.2, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 13161.2, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 12842.7, + "level": "no UTF-8" }, "variants": { "SAX (string stream)": { - "us": 10718.9, + "us": 10561.3, "level": "full" }, "SAX (string stream) (no encoding check)": { - "us": 11003.7, + "us": 10795.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 12044.9, - "level": "full" - }, - "insitu (copy)": { - "us": 12119.8, + "us": 11851.8, "level": "full" }, "SAX (no encoding check)": { - "us": 12357.3, + "us": 11995.4, + "level": "no UTF-8" + }, + "insitu (copy)": { + "us": 12046.8, + "level": "full" + }, + "SAX": { + "us": 12069.9, + "level": "full" + }, + "insitu (copy untimed) (no encoding check)": { + "us": 12230.6, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 12392.9, + "us": 12242.3, "level": "no UTF-8" }, - "insitu (copy untimed) (no encoding check)": { - "us": 12530.2, - "level": "no UTF-8" - }, - "SAX": { - "us": 12678.3, - "level": "full" - }, "Document (no encoding check)": { - "us": 12865.6, + "us": 12723.6, "level": "no UTF-8" }, - "Document (reused allocator)": { - "us": 13161.2, - "level": "full" - }, - "Document": { - "us": 13275.5, - "level": "full" - }, "Document (reused allocator) (no encoding check)": { - "us": 13352.6, + "us": 12842.7, "level": "no UTF-8" + }, + "Document": { + "us": 12917.3, + "level": "full" + }, + "Document (reused allocator)": { + "us": 13259.2, + "level": "full" } } }, @@ -4139,35 +4139,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 85286.5, + "us": 86966.1, "level": "full" }, "best_any": { "variant": "parse", - "us": 85286.5, + "us": 86966.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 51480.2, + "us": 51262.6, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 51480.2, + "us": 51262.6, "level": "full" }, "variants": { "read (reused)": { - "us": 51480.2, + "us": 51262.6, "level": "full" }, "parse": { - "us": 85286.5, + "us": 86966.1, "level": "full" }, "parse_copy": { - "us": 124656.8, + "us": 130925.9, "level": "full" } } @@ -4175,23 +4175,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 89480.6, + "us": 60439.4, "level": "full" }, "best_any": { "variant": "sax", - "us": 89480.6, + "us": 60439.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 89480.6, + "us": 60439.4, "level": "full" }, "parse": { - "us": 420541.7, + "us": 393313.0, "level": "full" } } @@ -4199,39 +4199,39 @@ "yyjson": { "best": { "variant": "read", - "us": 126975.3, + "us": 133576.7, "level": "full" }, "best_any": { "variant": "read", - "us": 126975.3, + "us": 133576.7, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 64457.4, + "us": 66199.6, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 64457.4, + "us": 66199.6, "level": "full" }, "variants": { "read (reused allocator)": { - "us": 64457.4, + "us": 66199.6, "level": "full" }, "insitu (copy untimed)": { - "us": 88446.7, + "us": 91385.9, "level": "full" }, "read": { - "us": 126975.3, + "us": 133576.7, "level": "full" }, "insitu (copy)": { - "us": 129469.4, + "us": 138747.2, "level": "full" } } @@ -4239,39 +4239,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 114602.0, + "us": 116855.2, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 114602.0, + "us": 116855.2, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 61224.9, + "us": 62527.4, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 61224.9, + "us": 62527.4, "level": "full" }, "variants": { "DOM (reused)": { - "us": 61224.9, + "us": 62527.4, "level": "full" }, "On-Demand (reused)": { - "us": 75561.0, + "us": 73991.5, "level": "full" }, "On-Demand": { - "us": 114602.0, + "us": 116855.2, "level": "full" }, "DOM": { - "us": 124594.3, + "us": 131953.2, "level": "full" } } @@ -4280,14 +4280,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 104583.2, + "us": 104508.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 104583.2, + "us": 104508.8, "level": "no UTF-8" } } @@ -4295,36 +4295,36 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 253385.3, + "us": 261203.5, "level": "full" }, "best_any": { "variant": "lazy_json", - "us": 196582.3, + "us": 198035.8, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "lazy_json": { - "us": 196582.3, + "us": 198035.8, "level": "partial" }, "generic (double)": { - "us": 249603.8, + "us": 255032.2, "level": "partial" }, "generic (double, strict)": { - "us": 253385.3, - "level": "full" - }, - "generic (strict)": { - "us": 378838.3, + "us": 261203.5, "level": "full" }, "generic": { - "us": 387793.9, + "us": 389821.5, "level": "partial" + }, + "generic (strict)": { + "us": 405114.1, + "level": "full" } }, "excluded": { @@ -4334,39 +4334,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 56773.6, + "us": 55874.0, "level": "full" }, "best_any": { "variant": "SAX", - "us": 56773.6, + "us": 55874.0, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 56745.3, + "us": 57345.9, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 56745.3, + "us": 57345.9, "level": "full" }, "variants": { - "SAX (reused)": { - "us": 56745.3, + "SAX": { + "us": 55874.0, "level": "full" }, - "SAX": { - "us": 56773.6, + "SAX (reused)": { + "us": 57345.9, "level": "full" }, "parser (reused)": { - "us": 141833.0, + "us": 144354.6, "level": "full" }, "parse": { - "us": 198163.8, + "us": 205120.0, "level": "full" } } @@ -4374,71 +4374,71 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 232713.0, + "us": 239499.4, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 135944.9, + "us": 131510.0, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 284279.1, + "us": 301471.9, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 194569.9, + "us": 204440.2, "level": "no UTF-8" }, "variants": { "SAX (string stream) (no encoding check)": { - "us": 135944.9, + "us": 131510.0, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 136902.3, + "us": 137183.0, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 165525.2, + "us": 167699.2, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 174160.1, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 194569.9, + "us": 185343.1, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 200917.9, + "us": 198720.9, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 206810.9, + "us": 204362.4, "level": "full" }, + "Document (reused allocator) (no encoding check)": { + "us": 204440.2, + "level": "no UTF-8" + }, "SAX (string stream)": { - "us": 232713.0, + "us": 239499.4, "level": "full" }, "insitu (copy)": { - "us": 250121.8, + "us": 250181.0, "level": "full" }, "SAX": { - "us": 262578.3, - "level": "full" - }, - "Document (reused allocator)": { - "us": 284279.1, + "us": 253592.7, "level": "full" }, "Document": { - "us": 303888.8, + "us": 300415.9, + "level": "full" + }, + "Document (reused allocator)": { + "us": 301471.9, "level": "full" } } @@ -4568,23 +4568,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 3.9, + "us": 2.1, "level": "full" }, "best_any": { "variant": "sax", - "us": 3.9, + "us": 2.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 3.9, + "us": 2.1, "level": "full" }, "parse": { - "us": 20.8, + "us": 18.3, "level": "full" } } @@ -4611,6 +4611,10 @@ "level": "full" }, "variants": { + "insitu (copy untimed)": { + "us": 1.8, + "level": "full" + }, "read (reused allocator)": { "us": 1.8, "level": "full" @@ -4622,10 +4626,6 @@ "insitu (copy)": { "us": 1.9, "level": "full" - }, - "insitu (copy untimed)": { - "us": 1.9, - "level": "full" } } }, @@ -4660,11 +4660,11 @@ "level": "full" }, "On-Demand (reused)": { - "us": 2.8, + "us": 2.7, "level": "full" }, "On-Demand": { - "us": 3.1, + "us": 3.0, "level": "full" } } @@ -4688,7 +4688,7 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 9.2, + "us": 9.0, "level": "full" }, "best_any": { @@ -4704,20 +4704,20 @@ "level": "partial" }, "generic (double)": { - "us": 9.1, + "us": 8.8, "level": "partial" }, "generic (double, strict)": { - "us": 9.2, + "us": 9.0, "level": "full" }, + "generic": { + "us": 14.8, + "level": "partial" + }, "generic (strict)": { "us": 14.8, "level": "full" - }, - "generic": { - "us": 14.9, - "level": "partial" } }, "excluded": { @@ -4727,47 +4727,47 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 2.4, + "us": 2.3, "level": "full" }, "best_any": { "variant": "SAX", - "us": 2.4, + "us": 2.3, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 2.4, + "us": 2.3, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 2.4, + "us": 2.3, "level": "full" }, "variants": { "SAX": { - "us": 2.4, + "us": 2.3, "level": "full" }, "SAX (reused)": { - "us": 2.4, - "level": "full" - }, - "parser (reused)": { - "us": 5.7, + "us": 2.3, "level": "full" }, "parse": { "us": 6.0, "level": "full" + }, + "parser (reused)": { + "us": 6.0, + "level": "full" } } }, "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 8.5, + "us": 8.4, "level": "full" }, "best_any": { @@ -4777,7 +4777,7 @@ }, "best_reused": { "variant": "Document (reused allocator)", - "us": 11.5, + "us": 11.8, "level": "full" }, "best_reused_any": { @@ -4799,7 +4799,7 @@ "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 6.8, + "us": 6.7, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { @@ -4807,11 +4807,11 @@ "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 8.2, + "us": 8.1, "level": "no UTF-8" }, "insitu (copy)": { - "us": 8.5, + "us": 8.4, "level": "full" }, "insitu (copy untimed)": { @@ -4819,19 +4819,19 @@ "level": "full" }, "SAX (string stream)": { - "us": 9.9, + "us": 9.8, "level": "full" }, "SAX": { - "us": 11.0, + "us": 10.5, "level": "full" }, "Document (reused allocator)": { - "us": 11.5, + "us": 11.8, "level": "full" }, "Document": { - "us": 12.4, + "us": 11.9, "level": "full" } } @@ -4925,35 +4925,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 327.7, + "us": 316.8, "level": "full" }, "best_any": { "variant": "parse", - "us": 327.7, + "us": 316.8, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 319.6, + "us": 313.4, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 319.6, + "us": 313.4, "level": "full" }, "variants": { "read (reused)": { - "us": 319.6, + "us": 313.4, "level": "full" }, "parse": { - "us": 327.7, + "us": 316.8, "level": "full" }, "parse_copy": { - "us": 352.4, + "us": 347.1, "level": "full" } } @@ -4961,23 +4961,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 707.5, + "us": 362.9, "level": "full" }, "best_any": { "variant": "sax", - "us": 707.5, + "us": 362.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 707.5, + "us": 362.9, "level": "full" }, "parse": { - "us": 3767.1, + "us": 3290.1, "level": "full" } } @@ -4985,39 +4985,39 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 375.4, + "us": 371.6, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 375.4, + "us": 371.6, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 376.6, + "us": 372.2, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 376.6, + "us": 372.2, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 348.6, + "us": 342.9, "level": "full" }, "insitu (copy)": { - "us": 375.4, + "us": 371.6, "level": "full" }, "read (reused allocator)": { - "us": 376.6, + "us": 372.2, "level": "full" }, "read": { - "us": 379.3, + "us": 372.5, "level": "full" } } @@ -5025,39 +5025,39 @@ "simdjson": { "best": { "variant": "DOM", - "us": 377.6, + "us": 376.6, "level": "full" }, "best_any": { "variant": "DOM", - "us": 377.6, + "us": 376.6, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 399.6, + "us": 373.3, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 399.6, + "us": 373.3, "level": "full" }, "variants": { - "DOM": { - "us": 377.6, + "DOM (reused)": { + "us": 373.3, "level": "full" }, - "DOM (reused)": { - "us": 399.6, + "DOM": { + "us": 376.6, "level": "full" }, "On-Demand": { - "us": 549.4, + "us": 541.8, "level": "full" }, "On-Demand (reused)": { - "us": 552.8, + "us": 543.2, "level": "full" } } @@ -5066,14 +5066,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 387.2, + "us": 385.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 387.2, + "us": 385.8, "level": "no UTF-8" } } @@ -5081,36 +5081,36 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 2232.9, + "us": 2189.9, "level": "full" }, "best_any": { "variant": "lazy_json", - "us": 1685.1, + "us": 1615.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "lazy_json": { - "us": 1685.1, + "us": 1615.9, "level": "partial" }, "generic (double, strict)": { - "us": 2232.9, + "us": 2189.9, "level": "full" }, "generic (double)": { - "us": 2344.0, - "level": "partial" - }, - "generic": { - "us": 3361.2, + "us": 2214.4, "level": "partial" }, "generic (strict)": { - "us": 3365.5, + "us": 3226.7, "level": "full" + }, + "generic": { + "us": 3360.5, + "level": "partial" } }, "excluded": { @@ -5120,39 +5120,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 453.3, + "us": 438.2, "level": "full" }, "best_any": { "variant": "SAX", - "us": 453.3, + "us": 438.2, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 445.3, + "us": 438.8, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 445.3, + "us": 438.8, "level": "full" }, "variants": { - "SAX (reused)": { - "us": 445.3, - "level": "full" - }, "SAX": { - "us": 453.3, + "us": 438.2, "level": "full" }, - "parse": { - "us": 1206.1, + "SAX (reused)": { + "us": 438.8, "level": "full" }, "parser (reused)": { - "us": 1211.2, + "us": 1166.7, + "level": "full" + }, + "parse": { + "us": 1171.8, "level": "full" } } @@ -5160,71 +5160,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1547.7, + "us": 1531.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1004.7, + "us": 965.0, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2123.4, + "us": 2178.7, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1443.3, + "us": 1445.3, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 972.1, + "us": 936.0, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1004.7, + "us": 965.0, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 1019.8, + "us": 1015.9, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1267.8, + "us": 1243.4, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1443.3, + "us": 1445.3, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1497.0, + "us": 1446.5, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1514.1, + "us": 1499.5, "level": "full" }, "insitu (copy)": { - "us": 1547.7, + "us": 1531.1, "level": "full" }, "SAX (string stream)": { - "us": 1835.9, + "us": 1801.4, "level": "full" }, "SAX": { - "us": 2089.5, - "level": "full" - }, - "Document (reused allocator)": { - "us": 2123.4, + "us": 1977.5, "level": "full" }, "Document": { - "us": 2279.6, + "us": 2118.5, + "level": "full" + }, + "Document (reused allocator)": { + "us": 2178.7, "level": "full" } } @@ -5318,35 +5318,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 706.0, + "us": 664.3, "level": "full" }, "best_any": { "variant": "parse", - "us": 706.0, + "us": 664.3, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 673.8, + "us": 664.2, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 673.8, + "us": 664.2, "level": "full" }, "variants": { "read (reused)": { - "us": 673.8, + "us": 664.2, "level": "full" }, "parse": { - "us": 706.0, + "us": 664.3, "level": "full" }, "parse_copy": { - "us": 706.2, + "us": 697.7, "level": "full" } } @@ -5354,23 +5354,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 1223.1, + "us": 637.3, "level": "full" }, "best_any": { "variant": "sax", - "us": 1223.1, + "us": 637.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 1223.1, + "us": 637.3, "level": "full" }, "parse": { - "us": 5621.7, + "us": 4453.4, "level": "full" } } @@ -5378,39 +5378,39 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 656.3, + "us": 640.5, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 656.3, + "us": 640.5, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 651.0, + "us": 640.0, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 651.0, + "us": 640.0, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 626.0, + "us": 609.3, "level": "full" }, "read (reused allocator)": { - "us": 651.0, + "us": 640.0, "level": "full" }, "insitu (copy)": { - "us": 656.3, + "us": 640.5, "level": "full" }, "read": { - "us": 656.5, + "us": 642.7, "level": "full" } } @@ -5418,39 +5418,39 @@ "simdjson": { "best": { "variant": "DOM", - "us": 837.8, + "us": 807.8, "level": "full" }, "best_any": { "variant": "DOM", - "us": 837.8, + "us": 807.8, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 822.5, + "us": 808.2, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 822.5, + "us": 808.2, "level": "full" }, "variants": { - "DOM (reused)": { - "us": 822.5, + "DOM": { + "us": 807.8, "level": "full" }, - "DOM": { - "us": 837.8, + "DOM (reused)": { + "us": 808.2, "level": "full" }, "On-Demand (reused)": { - "us": 1223.7, + "us": 1185.0, "level": "full" }, "On-Demand": { - "us": 1326.5, + "us": 1211.7, "level": "full" } } @@ -5459,14 +5459,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 884.6, + "us": 849.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 884.6, + "us": 849.1, "level": "no UTF-8" } } @@ -5474,36 +5474,36 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 3626.3, + "us": 3420.7, "level": "full" }, "best_any": { "variant": "lazy_json", - "us": 3589.2, + "us": 3346.8, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "lazy_json": { - "us": 3589.2, + "us": 3346.8, "level": "partial" }, "generic (double, strict)": { - "us": 3626.3, + "us": 3420.7, "level": "full" }, "generic (double)": { - "us": 3886.0, + "us": 3479.3, + "level": "partial" + }, + "generic": { + "us": 6070.0, "level": "partial" }, "generic (strict)": { - "us": 6570.8, + "us": 6071.5, "level": "full" - }, - "generic": { - "us": 6730.6, - "level": "partial" } }, "excluded": { @@ -5513,39 +5513,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 644.7, + "us": 608.0, "level": "full" }, "best_any": { "variant": "SAX", - "us": 644.7, + "us": 608.0, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 617.2, + "us": 608.2, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 617.2, + "us": 608.2, "level": "full" }, "variants": { - "SAX (reused)": { - "us": 617.2, - "level": "full" - }, "SAX": { - "us": 644.7, + "us": 608.0, "level": "full" }, - "parse": { - "us": 1637.3, + "SAX (reused)": { + "us": 608.2, "level": "full" }, "parser (reused)": { - "us": 1664.1, + "us": 1506.3, + "level": "full" + }, + "parse": { + "us": 1507.8, "level": "full" } } @@ -5553,71 +5553,71 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 1926.7, + "us": 1753.2, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 1460.8, + "us": 1355.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2584.1, + "us": 2373.7, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 2008.5, + "us": 1865.6, "level": "no UTF-8" }, "variants": { "SAX (string stream) (no encoding check)": { - "us": 1460.8, + "us": 1355.5, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1535.3, + "us": 1468.2, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 1645.3, + "us": 1581.1, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1707.3, + "us": 1616.2, "level": "no UTF-8" }, - "insitu (copy untimed)": { - "us": 1896.2, - "level": "full" - }, "SAX (string stream)": { - "us": 1926.7, + "us": 1753.2, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 2008.5, - "level": "no UTF-8" - }, - "insitu (copy)": { - "us": 2047.0, - "level": "full" - }, - "Document (no encoding check)": { - "us": 2051.3, + "us": 1865.6, "level": "no UTF-8" }, "SAX": { - "us": 2063.8, + "us": 1875.5, "level": "full" }, + "insitu (copy untimed)": { + "us": 1881.1, + "level": "full" + }, + "insitu (copy)": { + "us": 1914.0, + "level": "full" + }, + "Document (no encoding check)": { + "us": 1926.7, + "level": "no UTF-8" + }, "Document (reused allocator)": { - "us": 2584.1, + "us": 2373.7, "level": "full" }, "Document": { - "us": 2605.6, + "us": 2393.8, "level": "full" } } @@ -5712,64 +5712,64 @@ "twitter": { "nlohmann json_document": { "best": { - "variant": "parse", - "us": 320.1, + "variant": "structs (from_json)", + "us": 316.4, "level": "full" }, "best_any": { - "variant": "parse", - "us": 320.1, + "variant": "structs (from_json)", + "us": 316.4, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 315.5, + "us": 307.8, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 315.5, + "us": 307.8, "level": "full" }, "variants": { "read (reused)": { - "us": 315.5, - "level": "full" - }, - "parse": { - "us": 320.1, + "us": 307.8, "level": "full" }, "structs (from_json)": { - "us": 325.3, + "us": 316.4, + "level": "full" + }, + "parse": { + "us": 316.8, "level": "full" }, "parse_copy": { - "us": 357.5, + "us": 355.0, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "structs (from_json)", - "us": 3601.5, + "variant": "parse", + "us": 3180.7, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 3601.5, + "variant": "parse", + "us": 3180.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "structs (from_json)": { - "us": 3601.5, + "parse": { + "us": 3180.7, "level": "full" }, - "parse": { - "us": 3660.0, + "structs (from_json)": { + "us": 3196.3, "level": "full" } } @@ -5777,43 +5777,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 386.1, + "us": 385.5, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 386.1, + "us": 385.5, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 390.7, + "us": 389.9, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 390.7, + "us": 389.9, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 351.1, + "us": 347.3, "level": "full" }, "insitu (copy)": { - "us": 386.1, - "level": "full" - }, - "read (reused allocator)": { - "us": 390.7, + "us": 385.5, "level": "full" }, "read": { - "us": 391.9, + "us": 387.3, + "level": "full" + }, + "read (reused allocator)": { + "us": 389.9, "level": "full" }, "read (raw numbers)": { - "us": 394.2, + "us": 391.8, "level": "full" } } @@ -5821,47 +5821,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 316.4, + "us": 317.6, "level": "full" }, "best_any": { - "variant": "On-Demand structs", - "us": 181.2, + "variant": "On-Demand", + "us": 182.4, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 316.4, + "us": 315.1, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 179.5, + "us": 179.3, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 179.5, - "level": "partial" - }, - "On-Demand structs": { - "us": 181.2, + "us": 179.3, "level": "partial" }, "On-Demand": { - "us": 181.9, + "us": 182.4, + "level": "partial" + }, + "On-Demand structs": { + "us": 182.8, "level": "partial" }, "On-Demand (key selectors)": { - "us": 184.7, + "us": 184.9, "level": "partial" }, - "DOM": { - "us": 316.4, + "DOM (reused)": { + "us": 315.1, "level": "full" }, - "DOM (reused)": { - "us": 316.4, + "DOM": { + "us": 317.6, "level": "full" } } @@ -5870,14 +5870,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 460.1, + "us": 454.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 460.1, + "us": 454.0, "level": "no UTF-8" } } @@ -5885,43 +5885,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 544.5, + "us": 542.0, "level": "full" }, "best_any": { "variant": "structs", - "us": 345.3, + "us": 337.2, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 345.3, + "us": 337.2, "level": "partial" }, "structs (validate_skipped)": { - "us": 544.5, + "us": 542.0, "level": "full" }, "lazy_json": { - "us": 759.2, + "us": 763.7, "level": "partial" }, "generic (double, strict)": { - "us": 2447.2, + "us": 2441.3, "level": "full" }, "generic (double)": { - "us": 2509.0, + "us": 2487.9, "level": "partial" }, "generic (strict)": { - "us": 3518.9, + "us": 3470.8, "level": "full" }, "generic": { - "us": 3575.9, + "us": 3475.8, "level": "partial" } }, @@ -5932,35 +5932,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 775.6, + "us": 760.5, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 775.6, + "us": 760.5, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1249.0, + "us": 1228.4, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1249.0, + "us": 1228.4, "level": "full" }, "variants": { "parse_into structs": { - "us": 775.6, - "level": "full" - }, - "parse": { - "us": 1240.9, + "us": 760.5, "level": "full" }, "parser (reused)": { - "us": 1249.0, + "us": 1228.4, + "level": "full" + }, + "parse": { + "us": 1237.4, "level": "full" } }, @@ -5971,71 +5971,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1811.8, + "us": 1806.4, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1179.9, + "us": 1183.7, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2256.3, + "us": 2211.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1470.8, + "us": 1465.0, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1143.7, + "us": 1141.8, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1179.9, + "us": 1183.7, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 1415.7, + "us": 1405.3, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1470.8, + "us": 1465.0, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1471.1, + "us": 1482.2, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 1551.6, + "us": 1500.5, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1762.5, + "us": 1766.0, "level": "full" }, "insitu (copy)": { - "us": 1811.8, + "us": 1806.4, "level": "full" }, "Document": { - "us": 2217.3, - "level": "full" - }, - "Document (reused allocator)": { - "us": 2256.3, + "us": 2162.4, "level": "full" }, "Document (raw numbers)": { - "us": 2277.9, + "us": 2198.5, + "level": "full" + }, + "Document (reused allocator)": { + "us": 2211.6, "level": "full" }, "Document (string stream)": { - "us": 2350.6, + "us": 2258.0, "level": "full" } } @@ -6121,39 +6121,39 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 759.2, + "us": 783.2, "level": "full" }, "best_any": { "variant": "parse", - "us": 759.2, + "us": 783.2, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 757.6, + "us": 791.0, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 757.6, + "us": 791.0, "level": "full" }, "variants": { - "read (reused)": { - "us": 757.6, + "parse": { + "us": 783.2, "level": "full" }, - "parse": { - "us": 759.2, + "read (reused)": { + "us": 791.0, "level": "full" }, "structs (from_json)": { - "us": 805.3, + "us": 836.0, "level": "full" }, "parse_copy": { - "us": 875.4, + "us": 901.5, "level": "full" } } @@ -6161,23 +6161,23 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 5124.4, + "us": 4583.1, "level": "full" }, "best_any": { "variant": "parse", - "us": 5124.4, + "us": 4583.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 5124.4, + "us": 4583.1, "level": "full" }, "structs (from_json)": { - "us": 5196.7, + "us": 4681.4, "level": "full" } } @@ -6185,43 +6185,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 897.9, + "us": 891.4, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 897.9, + "us": 891.4, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 939.6, + "us": 936.1, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 939.6, + "us": 936.1, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 787.8, + "us": 788.6, "level": "full" }, "insitu (copy)": { - "us": 897.9, + "us": 891.4, "level": "full" }, "read": { - "us": 900.4, + "us": 894.3, "level": "full" }, "read (raw numbers)": { - "us": 924.4, + "us": 914.8, "level": "full" }, "read (reused allocator)": { - "us": 939.6, + "us": 936.1, "level": "full" } } @@ -6229,47 +6229,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 730.9, + "us": 728.1, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 495.0, + "us": 494.0, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 736.0, + "us": 727.7, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 495.1, + "us": 493.4, "level": "partial" }, "variants": { - "On-Demand": { - "us": 495.0, + "On-Demand (reused)": { + "us": 493.4, "level": "partial" }, - "On-Demand (reused)": { - "us": 495.1, + "On-Demand": { + "us": 494.0, "level": "partial" }, "On-Demand (key selectors)": { - "us": 506.5, + "us": 505.0, "level": "partial" }, "On-Demand structs": { - "us": 547.5, + "us": 546.0, "level": "partial" }, - "DOM": { - "us": 730.9, + "DOM (reused)": { + "us": 727.7, "level": "full" }, - "DOM (reused)": { - "us": 736.0, + "DOM": { + "us": 728.1, "level": "full" } } @@ -6278,14 +6278,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1011.3, + "us": 1015.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1011.3, + "us": 1015.0, "level": "no UTF-8" } } @@ -6293,43 +6293,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 1368.2, + "us": 1369.0, "level": "full" }, "best_any": { "variant": "structs", - "us": 418.6, + "us": 416.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 418.6, + "us": 416.4, "level": "partial" }, "structs (validate_skipped)": { - "us": 1368.2, + "us": 1369.0, "level": "full" }, "generic (double, strict)": { - "us": 3883.8, + "us": 3944.1, "level": "full" }, "generic (double)": { - "us": 4072.2, + "us": 4044.8, "level": "partial" }, "lazy_json": { - "us": 6484.7, + "us": 6635.1, "level": "partial" }, "generic (strict)": { - "us": 6649.8, + "us": 6644.8, "level": "full" }, "generic": { - "us": 6662.2, + "us": 6719.9, "level": "partial" } }, @@ -6340,35 +6340,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 1388.9, + "us": 1388.3, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 1388.9, + "us": 1388.3, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1664.3, + "us": 1611.2, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1664.3, + "us": 1611.2, "level": "full" }, "variants": { "parse_into structs": { - "us": 1388.9, + "us": 1388.3, "level": "full" }, "parser (reused)": { - "us": 1664.3, + "us": 1611.2, "level": "full" }, "parse": { - "us": 1670.4, + "us": 1626.2, "level": "full" } }, @@ -6379,71 +6379,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 2346.6, + "us": 2303.2, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1929.7, + "us": 1929.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2396.9, + "us": 2504.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1946.7, + "us": 1949.8, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1817.2, + "us": 1820.4, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1929.7, + "us": 1929.3, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1946.7, + "us": 1949.8, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 2012.4, + "us": 2006.1, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 2072.7, + "us": 2079.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 2197.7, + "us": 2211.0, "level": "full" }, "Document (raw numbers) (no encoding check)": { - "us": 2224.6, + "us": 2246.0, "level": "no UTF-8" }, "insitu (copy)": { - "us": 2346.6, - "level": "full" - }, - "Document (reused allocator)": { - "us": 2396.9, + "us": 2303.2, "level": "full" }, "Document": { - "us": 2500.5, + "us": 2454.7, + "level": "full" + }, + "Document (reused allocator)": { + "us": 2504.6, "level": "full" }, "Document (string stream)": { - "us": 2576.9, + "us": 2552.9, "level": "full" }, "Document (raw numbers)": { - "us": 2668.0, + "us": 2675.5, "level": "full" } } @@ -6529,39 +6529,39 @@ "nlohmann json_document": { "best": { "variant": "structs (from_json)", - "us": 1390.2, + "us": 1368.1, "level": "full" }, "best_any": { "variant": "structs (from_json)", - "us": 1390.2, + "us": 1368.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 1401.6, + "us": 1367.3, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 1401.6, + "us": 1367.3, "level": "full" }, "variants": { + "read (reused)": { + "us": 1367.3, + "level": "full" + }, "structs (from_json)": { - "us": 1390.2, + "us": 1368.1, "level": "full" }, "parse": { - "us": 1392.0, - "level": "full" - }, - "read (reused)": { - "us": 1401.6, + "us": 1369.6, "level": "full" }, "parse_copy": { - "us": 1581.9, + "us": 1521.8, "level": "full" } } @@ -6569,23 +6569,23 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 11831.4, + "us": 9599.0, "level": "full" }, "best_any": { "variant": "parse", - "us": 11831.4, + "us": 9599.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 11831.4, + "us": 9599.0, "level": "full" }, "structs (from_json)": { - "us": 11838.9, + "us": 9649.6, "level": "full" } } @@ -6593,43 +6593,43 @@ "yyjson": { "best": { "variant": "read (raw numbers)", - "us": 2632.1, + "us": 2571.6, "level": "full" }, "best_any": { "variant": "read (raw numbers)", - "us": 2632.1, + "us": 2571.6, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 2867.8, + "us": 2804.9, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 2867.8, + "us": 2804.9, "level": "full" }, "variants": { "read (raw numbers)": { - "us": 2632.1, + "us": 2571.6, "level": "full" }, "insitu (copy untimed)": { - "us": 2696.2, - "level": "full" - }, - "insitu (copy)": { - "us": 2822.4, - "level": "full" - }, - "read (reused allocator)": { - "us": 2867.8, + "us": 2647.1, "level": "full" }, "read": { - "us": 2896.9, + "us": 2800.1, + "level": "full" + }, + "insitu (copy)": { + "us": 2801.5, + "level": "full" + }, + "read (reused allocator)": { + "us": 2804.9, "level": "full" } } @@ -6637,47 +6637,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 3262.1, + "us": 3213.3, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 701.6, + "us": 692.1, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 3285.8, + "us": 3200.3, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 697.1, + "us": 691.4, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 697.1, + "us": 691.4, "level": "partial" }, "On-Demand": { - "us": 701.6, + "us": 692.1, "level": "partial" }, "On-Demand (key selectors)": { - "us": 706.8, + "us": 698.4, "level": "partial" }, "On-Demand structs": { - "us": 922.0, + "us": 920.3, "level": "partial" }, - "DOM": { - "us": 3262.1, + "DOM (reused)": { + "us": 3200.3, "level": "full" }, - "DOM (reused)": { - "us": 3285.8, + "DOM": { + "us": 3213.3, "level": "full" } } @@ -6686,14 +6686,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3204.4, + "us": 3025.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3204.4, + "us": 3025.4, "level": "no UTF-8" } } @@ -6701,43 +6701,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 1924.3, + "us": 1846.0, "level": "full" }, "best_any": { "variant": "structs", - "us": 444.3, + "us": 446.6, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 444.3, + "us": 446.6, "level": "partial" }, "structs (validate_skipped)": { - "us": 1924.3, + "us": 1846.0, "level": "full" }, "lazy_json": { - "us": 3153.5, - "level": "partial" - }, - "generic (double)": { - "us": 11439.2, + "us": 2819.2, "level": "partial" }, "generic (double, strict)": { - "us": 11612.6, + "us": 11600.3, "level": "full" }, + "generic (double)": { + "us": 11621.6, + "level": "partial" + }, "generic": { - "us": 22534.9, + "us": 22309.6, "level": "partial" }, "generic (strict)": { - "us": 23212.8, + "us": 22779.9, "level": "full" } }, @@ -6748,35 +6748,35 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 7120.7, + "us": 7026.4, "level": "full" }, "best_any": { "variant": "parse", - "us": 7120.7, + "us": 7026.4, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 7135.6, + "us": 6913.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 7135.6, + "us": 6913.8, "level": "full" }, "variants": { - "parse": { - "us": 7120.7, + "parser (reused)": { + "us": 6913.8, "level": "full" }, - "parser (reused)": { - "us": 7135.6, + "parse": { + "us": 7026.4, "level": "full" }, "parse_into structs": { - "us": 8436.7, + "us": 8100.4, "level": "full" } }, @@ -6787,71 +6787,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 11742.5, + "us": 11394.7, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 11742.5, - "level": "full" + "variant": "Document (string stream) (no encoding check)", + "us": 11261.1, + "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 12468.0, + "us": 12626.6, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 12468.0, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 12113.2, + "level": "no UTF-8" }, "variants": { + "Document (string stream) (no encoding check)": { + "us": 11261.1, + "level": "no UTF-8" + }, "insitu (copy untimed)": { - "us": 11464.4, + "us": 11268.0, "level": "full" }, "insitu (copy)": { - "us": 11742.5, - "level": "full" - }, - "Document (string stream) (no encoding check)": { - "us": 11829.8, - "level": "no UTF-8" - }, - "Document (string stream)": { - "us": 11889.3, + "us": 11394.7, "level": "full" }, "insitu (copy untimed) (no encoding check)": { - "us": 11911.6, + "us": 11470.8, "level": "no UTF-8" }, + "Document (string stream)": { + "us": 11527.4, + "level": "full" + }, "insitu (copy) (no encoding check)": { - "us": 12131.9, - "level": "no UTF-8" - }, - "Document (raw numbers)": { - "us": 12257.6, - "level": "full" - }, - "Document (reused allocator)": { - "us": 12468.0, - "level": "full" - }, - "Document (reused allocator) (no encoding check)": { - "us": 12626.5, + "us": 11610.3, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 12671.5, + "us": 12036.5, + "level": "no UTF-8" + }, + "Document (raw numbers)": { + "us": 12068.7, + "level": "full" + }, + "Document (reused allocator) (no encoding check)": { + "us": 12113.2, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 12686.6, + "us": 12215.6, "level": "no UTF-8" }, "Document": { - "us": 13442.9, + "us": 12406.3, + "level": "full" + }, + "Document (reused allocator)": { + "us": 12626.6, "level": "full" } } @@ -6937,39 +6937,39 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 88082.8, + "us": 91736.1, "level": "full" }, "best_any": { "variant": "parse", - "us": 88082.8, + "us": 91736.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 51072.8, + "us": 52931.9, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 51072.8, + "us": 52931.9, "level": "full" }, "variants": { "read (reused)": { - "us": 51072.8, + "us": 52931.9, "level": "full" }, "parse": { - "us": 88082.8, + "us": 91736.1, "level": "full" }, "structs (from_json)": { - "us": 107710.0, + "us": 107075.1, "level": "full" }, "parse_copy": { - "us": 129542.0, + "us": 135011.0, "level": "full" } } @@ -6977,67 +6977,67 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 444210.1, + "us": 405734.1, "level": "full" }, "best_any": { "variant": "parse", - "us": 444210.1, + "us": 405734.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 444210.1, + "us": 405734.1, "level": "full" }, "structs (from_json)": { - "us": 450085.9, + "us": 411168.4, "level": "full" } } }, "yyjson": { "best": { - "variant": "read (raw numbers)", - "us": 131454.5, + "variant": "insitu (copy)", + "us": 135813.3, "level": "full" }, "best_any": { - "variant": "read (raw numbers)", - "us": 131454.5, + "variant": "insitu (copy)", + "us": 135813.3, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 67645.6, + "us": 67036.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 67645.6, + "us": 67036.3, "level": "full" }, "variants": { "read (reused allocator)": { - "us": 67645.6, + "us": 67036.3, "level": "full" }, "insitu (copy untimed)": { - "us": 92550.7, - "level": "full" - }, - "read (raw numbers)": { - "us": 131454.5, - "level": "full" - }, - "read": { - "us": 132061.4, + "us": 96071.6, "level": "full" }, "insitu (copy)": { - "us": 132476.1, + "us": 135813.3, + "level": "full" + }, + "read": { + "us": 136880.5, + "level": "full" + }, + "read (raw numbers)": { + "us": 137067.2, "level": "full" } } @@ -7045,47 +7045,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 120808.3, + "us": 129985.9, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 48823.0, + "us": 50659.9, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 57830.4, + "us": 59459.1, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 29167.2, + "us": 29063.0, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 29167.2, + "us": 29063.0, "level": "partial" }, "On-Demand": { - "us": 48823.0, + "us": 50659.9, "level": "partial" }, "On-Demand (key selectors)": { - "us": 50711.7, + "us": 55675.7, "level": "partial" }, "DOM (reused)": { - "us": 57830.4, + "us": 59459.1, "level": "full" }, "On-Demand structs": { - "us": 72459.0, + "us": 74195.7, "level": "partial" }, "DOM": { - "us": 120808.3, + "us": 129985.9, "level": "full" } } @@ -7094,14 +7094,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 108244.8, + "us": 112621.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 108244.8, + "us": 112621.3, "level": "no UTF-8" } } @@ -7109,43 +7109,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 85744.7, + "us": 83906.6, "level": "full" }, "best_any": { "variant": "structs", - "us": 66442.3, + "us": 68454.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 66442.3, + "us": 68454.9, "level": "partial" }, "structs (validate_skipped)": { - "us": 85744.7, + "us": 83906.6, "level": "full" }, "lazy_json": { - "us": 103198.3, + "us": 105331.7, "level": "partial" }, "generic (double)": { - "us": 253056.8, + "us": 253033.8, "level": "partial" }, "generic (double, strict)": { - "us": 253538.1, + "us": 264858.6, "level": "full" }, "generic (strict)": { - "us": 395135.3, + "us": 398474.1, "level": "full" }, "generic": { - "us": 400960.2, + "us": 406251.0, "level": "partial" } }, @@ -7156,35 +7156,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 97680.7, + "us": 97007.8, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 97680.7, + "us": 97007.8, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 140679.2, + "us": 143742.2, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 140679.2, + "us": 143742.2, "level": "full" }, "variants": { "parse_into structs": { - "us": 97680.7, + "us": 97007.8, "level": "full" }, "parser (reused)": { - "us": 140679.2, + "us": 143742.2, "level": "full" }, "parse": { - "us": 199764.5, + "us": 205161.9, "level": "full" } }, @@ -7195,71 +7195,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 246084.7, + "us": 257761.5, "level": "full" }, "best_any": { "variant": "Document (string stream) (no encoding check)", - "us": 173298.8, + "us": 171715.7, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 287964.9, + "us": 294804.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 198838.2, + "us": 198039.9, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 142851.9, + "us": 140002.6, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 173298.8, + "us": 171715.7, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 185761.4, - "level": "no UTF-8" - }, - "Document (raw numbers) (no encoding check)": { - "us": 198545.7, + "us": 184178.8, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 198838.2, + "us": 198039.9, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 203308.5, + "us": 199059.1, + "level": "no UTF-8" + }, + "Document (raw numbers) (no encoding check)": { + "us": 212724.7, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 209290.0, + "us": 213815.0, "level": "full" }, "insitu (copy)": { - "us": 246084.7, + "us": 257761.5, "level": "full" }, "Document (string stream)": { - "us": 267647.7, - "level": "full" - }, - "Document (reused allocator)": { - "us": 287964.9, - "level": "full" - }, - "Document (raw numbers)": { - "us": 290589.9, + "us": 264286.3, "level": "full" }, "Document": { - "us": 302957.4, + "us": 286913.1, + "level": "full" + }, + "Document (reused allocator)": { + "us": 294804.6, + "level": "full" + }, + "Document (raw numbers)": { + "us": 295932.7, "level": "full" } } @@ -7384,24 +7384,24 @@ }, "nlohmann json": { "best": { - "variant": "parse", - "us": 20.2, + "variant": "structs (from_json)", + "us": 18.9, "level": "full" }, "best_any": { - "variant": "parse", - "us": 20.2, + "variant": "structs (from_json)", + "us": 18.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "parse": { - "us": 20.2, + "structs (from_json)": { + "us": 18.9, "level": "full" }, - "structs (from_json)": { - "us": 20.2, + "parse": { + "us": 19.2, "level": "full" } } @@ -7428,10 +7428,6 @@ "level": "full" }, "variants": { - "insitu (copy untimed)": { - "us": 1.6, - "level": "full" - }, "read (reused allocator)": { "us": 1.6, "level": "full" @@ -7444,16 +7440,20 @@ "us": 1.7, "level": "full" }, - "read (raw numbers)": { + "insitu (copy untimed)": { "us": 1.7, "level": "full" + }, + "read (raw numbers)": { + "us": 1.8, + "level": "full" } } }, "simdjson": { "best": { "variant": "DOM", - "us": 1.9, + "us": 2.0, "level": "full" }, "best_any": { @@ -7480,12 +7480,12 @@ "us": 1.1, "level": "partial" }, - "On-Demand": { + "On-Demand structs": { "us": 1.2, "level": "partial" }, - "On-Demand structs": { - "us": 1.2, + "On-Demand": { + "us": 1.3, "level": "partial" }, "DOM (reused)": { @@ -7493,7 +7493,7 @@ "level": "full" }, "DOM": { - "us": 1.9, + "us": 2.0, "level": "full" } } @@ -7502,14 +7502,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1.9, + "us": 2.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1.9, + "us": 2.0, "level": "no UTF-8" } } @@ -7533,7 +7533,7 @@ "level": "partial" }, "lazy_json": { - "us": 2.0, + "us": 2.1, "level": "partial" }, "structs (validate_skipped)": { @@ -7541,20 +7541,20 @@ "level": "full" }, "generic (double)": { - "us": 9.9, + "us": 10.2, "level": "partial" }, "generic (double, strict)": { - "us": 10.0, - "level": "full" - }, - "generic (strict)": { - "us": 15.6, + "us": 10.6, "level": "full" }, "generic": { - "us": 15.7, + "us": 16.4, "level": "partial" + }, + "generic (strict)": { + "us": 16.5, + "level": "full" } }, "excluded": { @@ -7574,12 +7574,12 @@ }, "best_reused": { "variant": "parser (reused)", - "us": 5.6, + "us": 5.9, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 5.6, + "us": 5.9, "level": "full" }, "variants": { @@ -7587,12 +7587,12 @@ "us": 3.2, "level": "full" }, - "parser (reused)": { - "us": 5.6, + "parse": { + "us": 5.9, "level": "full" }, - "parse": { - "us": 5.8, + "parser (reused)": { + "us": 5.9, "level": "full" } }, @@ -7603,17 +7603,17 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 8.3, + "us": 8.7, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 4.2, + "us": 4.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 11.4, + "us": 11.8, "level": "full" }, "best_reused_any": { @@ -7627,47 +7627,47 @@ "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 4.2, + "us": 4.3, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 5.2, + "us": 5.4, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { "us": 7.5, "level": "no UTF-8" }, + "insitu (copy untimed)": { + "us": 8.4, + "level": "full" + }, "Document (no encoding check)": { - "us": 7.8, + "us": 8.4, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 8.0, + "us": 8.6, "level": "no UTF-8" }, - "insitu (copy untimed)": { - "us": 8.2, - "level": "full" - }, "insitu (copy)": { - "us": 8.3, + "us": 8.7, "level": "full" }, "Document (string stream)": { - "us": 10.7, - "level": "full" - }, - "Document (reused allocator)": { - "us": 11.4, - "level": "full" - }, - "Document": { - "us": 11.7, + "us": 10.9, "level": "full" }, "Document (raw numbers)": { - "us": 11.7, + "us": 11.8, + "level": "full" + }, + "Document (reused allocator)": { + "us": 11.8, + "level": "full" + }, + "Document": { + "us": 12.3, "level": "full" } } @@ -7753,39 +7753,39 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 273.2, + "us": 266.3, "level": "full" }, "best_any": { "variant": "parse", - "us": 273.2, + "us": 266.3, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 267.0, + "us": 258.8, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 267.0, + "us": 258.8, "level": "full" }, "variants": { "read (reused)": { - "us": 267.0, + "us": 258.8, "level": "full" }, "parse": { - "us": 273.2, + "us": 266.3, "level": "full" }, "structs (from_json)": { - "us": 275.8, + "us": 268.7, "level": "full" }, "parse_copy": { - "us": 302.1, + "us": 296.5, "level": "full" } } @@ -7793,23 +7793,23 @@ "nlohmann json": { "best": { "variant": "structs (from_json)", - "us": 3454.7, + "us": 3075.2, "level": "full" }, "best_any": { "variant": "structs (from_json)", - "us": 3454.7, + "us": 3075.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "structs (from_json)": { - "us": 3454.7, + "us": 3075.2, "level": "full" }, "parse": { - "us": 3460.3, + "us": 3081.6, "level": "full" } } @@ -7817,39 +7817,39 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 326.0, + "us": 326.2, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 326.0, + "us": 326.2, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 328.4, + "us": 329.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 328.4, + "us": 329.3, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 297.0, + "us": 295.9, "level": "full" }, "insitu (copy)": { - "us": 326.0, - "level": "full" - }, - "read": { - "us": 326.6, + "us": 326.2, "level": "full" }, "read (reused allocator)": { - "us": 328.4, + "us": 329.3, + "level": "full" + }, + "read": { + "us": 329.6, "level": "full" }, "read (raw numbers)": { @@ -7861,47 +7861,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 298.2, + "us": 300.1, "level": "full" }, "best_any": { - "variant": "On-Demand structs", - "us": 159.7, + "variant": "On-Demand", + "us": 163.4, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 297.4, + "us": 299.0, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 158.3, + "us": 160.6, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 158.3, - "level": "partial" - }, - "On-Demand structs": { - "us": 159.7, + "us": 160.6, "level": "partial" }, "On-Demand": { - "us": 161.6, + "us": 163.4, "level": "partial" }, "On-Demand (key selectors)": { - "us": 163.8, + "us": 164.2, + "level": "partial" + }, + "On-Demand structs": { + "us": 166.6, "level": "partial" }, "DOM (reused)": { - "us": 297.4, + "us": 299.0, "level": "full" }, "DOM": { - "us": 298.2, + "us": 300.1, "level": "full" } } @@ -7910,14 +7910,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 344.7, + "us": 341.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 344.7, + "us": 341.6, "level": "no UTF-8" } } @@ -7925,43 +7925,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 439.8, + "us": 438.1, "level": "full" }, "best_any": { "variant": "structs", - "us": 295.1, + "us": 296.2, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 295.1, + "us": 296.2, "level": "partial" }, "lazy_json": { - "us": 416.1, + "us": 418.8, "level": "partial" }, "structs (validate_skipped)": { - "us": 439.8, - "level": "full" - }, - "generic (double, strict)": { - "us": 2279.6, + "us": 438.1, "level": "full" }, "generic (double)": { - "us": 2285.3, + "us": 2272.7, "level": "partial" }, + "generic (double, strict)": { + "us": 2272.9, + "level": "full" + }, "generic (strict)": { - "us": 3278.9, + "us": 3296.1, "level": "full" }, "generic": { - "us": 3326.3, + "us": 3325.2, "level": "partial" } }, @@ -7972,35 +7972,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 661.7, + "us": 668.2, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 661.7, + "us": 668.2, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1136.2, + "us": 1127.2, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1136.2, + "us": 1127.2, "level": "full" }, "variants": { "parse_into structs": { - "us": 661.7, + "us": 668.2, "level": "full" }, "parser (reused)": { - "us": 1136.2, + "us": 1127.2, "level": "full" }, "parse": { - "us": 1137.0, + "us": 1136.0, "level": "full" } }, @@ -8011,71 +8011,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1496.0, + "us": 1486.2, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 914.6, + "us": 920.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2068.6, + "us": 2131.9, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1382.9, + "us": 1386.3, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 885.5, + "us": 890.2, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 914.6, + "us": 920.3, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 1176.6, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 1382.9, + "us": 1178.7, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1386.4, + "us": 1384.1, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 1386.3, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 1410.1, + "us": 1411.5, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1466.8, + "us": 1464.0, "level": "full" }, "insitu (copy)": { - "us": 1496.0, + "us": 1486.2, "level": "full" }, "Document (string stream)": { - "us": 1950.3, - "level": "full" - }, - "Document (reused allocator)": { - "us": 2068.6, + "us": 1937.4, "level": "full" }, "Document (raw numbers)": { - "us": 2095.3, + "us": 2086.1, "level": "full" }, "Document": { - "us": 2147.9, + "us": 2089.4, + "level": "full" + }, + "Document (reused allocator)": { + "us": 2131.9, "level": "full" } } @@ -8161,39 +8161,39 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 535.4, + "us": 508.4, "level": "full" }, "best_any": { "variant": "parse", - "us": 535.4, + "us": 508.4, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 509.8, + "us": 508.3, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 509.8, + "us": 508.3, "level": "full" }, "variants": { "read (reused)": { - "us": 509.8, + "us": 508.3, "level": "full" }, "parse": { - "us": 535.4, - "level": "full" - }, - "structs (from_json)": { - "us": 560.2, + "us": 508.4, "level": "full" }, "parse_copy": { - "us": 568.3, + "us": 539.3, + "level": "full" + }, + "structs (from_json)": { + "us": 553.3, "level": "full" } } @@ -8201,67 +8201,67 @@ "nlohmann json": { "best": { "variant": "structs (from_json)", - "us": 5307.8, + "us": 4253.9, "level": "full" }, "best_any": { "variant": "structs (from_json)", - "us": 5307.8, + "us": 4253.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "structs (from_json)": { - "us": 5307.8, + "us": 4253.9, "level": "full" }, "parse": { - "us": 5338.5, + "us": 4296.4, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 490.7, + "variant": "read", + "us": 490.5, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 490.7, + "variant": "read", + "us": 490.5, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 503.2, + "us": 491.2, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 503.2, + "us": 491.2, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 457.9, - "level": "full" - }, - "insitu (copy)": { - "us": 490.7, + "us": 459.2, "level": "full" }, "read": { - "us": 500.9, + "us": 490.5, + "level": "full" + }, + "insitu (copy)": { + "us": 490.9, "level": "full" }, "read (reused allocator)": { - "us": 503.2, + "us": 491.2, "level": "full" }, "read (raw numbers)": { - "us": 538.7, + "us": 528.7, "level": "full" } } @@ -8269,47 +8269,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 577.7, + "us": 574.8, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 323.1, + "us": 323.2, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 603.0, + "us": 573.9, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 322.7, + "us": 322.1, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 322.7, + "us": 322.1, "level": "partial" }, "On-Demand": { - "us": 323.1, + "us": 323.2, "level": "partial" }, "On-Demand (key selectors)": { - "us": 346.5, + "us": 335.6, "level": "partial" }, "On-Demand structs": { - "us": 376.1, + "us": 377.4, "level": "partial" }, - "DOM": { - "us": 577.7, + "DOM (reused)": { + "us": 573.9, "level": "full" }, - "DOM (reused)": { - "us": 603.0, + "DOM": { + "us": 574.8, "level": "full" } } @@ -8318,14 +8318,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 719.5, + "us": 688.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 719.5, + "us": 688.7, "level": "no UTF-8" } } @@ -8333,44 +8333,44 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 731.3, + "us": 702.5, "level": "full" }, "best_any": { "variant": "structs", - "us": 211.7, + "us": 211.5, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 211.7, + "us": 211.5, "level": "partial" }, "structs (validate_skipped)": { - "us": 731.3, + "us": 702.5, "level": "full" }, "lazy_json": { - "us": 1509.2, + "us": 1413.9, + "level": "partial" + }, + "generic (double)": { + "us": 3367.4, "level": "partial" }, "generic (double, strict)": { - "us": 3714.3, + "us": 3381.5, "level": "full" }, - "generic (double)": { - "us": 3756.2, - "level": "partial" - }, - "generic": { - "us": 6712.3, - "level": "partial" - }, "generic (strict)": { - "us": 6747.3, + "us": 6022.3, "level": "full" + }, + "generic": { + "us": 6080.5, + "level": "partial" } }, "excluded": { @@ -8380,35 +8380,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 1225.7, + "us": 1143.9, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 1225.7, + "us": 1143.9, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1449.9, + "us": 1350.4, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1449.9, + "us": 1350.4, "level": "full" }, "variants": { "parse_into structs": { - "us": 1225.7, + "us": 1143.9, "level": "full" }, "parser (reused)": { - "us": 1449.9, + "us": 1350.4, "level": "full" }, "parse": { - "us": 1487.9, + "us": 1352.4, "level": "full" } }, @@ -8419,71 +8419,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1899.4, + "us": 1752.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1555.3, + "us": 1456.7, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2422.6, + "us": 2215.5, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1792.5, + "us": 1704.3, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1506.2, + "us": 1424.2, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1555.3, + "us": 1456.7, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 1766.8, + "us": 1610.5, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1792.5, + "us": 1704.3, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1868.0, + "us": 1719.1, "level": "full" }, "insitu (copy)": { - "us": 1899.4, + "us": 1752.1, "level": "full" }, "Document (no encoding check)": { - "us": 1920.0, - "level": "no UTF-8" - }, - "Document (raw numbers) (no encoding check)": { - "us": 2206.0, + "us": 1767.8, "level": "no UTF-8" }, "Document (string stream)": { - "us": 2212.9, + "us": 2028.5, "level": "full" }, + "Document (raw numbers) (no encoding check)": { + "us": 2033.2, + "level": "no UTF-8" + }, "Document (reused allocator)": { - "us": 2422.6, + "us": 2215.5, "level": "full" }, "Document": { - "us": 2468.0, + "us": 2234.0, "level": "full" }, "Document (raw numbers)": { - "us": 2693.0, + "us": 2436.6, "level": "full" } } @@ -8570,24 +8570,24 @@ "twitter": { "nlohmann json_document": { "best": { - "variant": "editable", - "us": 526.0, + "variant": "editable (source numbers)", + "us": 517.9, "level": "full" }, "best_any": { - "variant": "editable", - "us": 526.0, + "variant": "editable (source numbers)", + "us": 517.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "editable": { - "us": 526.0, + "editable (source numbers)": { + "us": 517.9, "level": "full" }, - "editable (source numbers)": { - "us": 565.7, + "editable": { + "us": 518.8, "level": "full" } } @@ -8595,51 +8595,51 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 3069.2, + "us": 2452.4, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 3069.2, + "us": 2452.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 3069.2, + "us": 2452.4, "level": "full" }, "parse": { - "us": 4420.9, + "us": 3592.0, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy) + mut copy", - "us": 917.8, + "variant": "mut copy", + "us": 832.7, "level": "full" }, "best_any": { - "variant": "insitu (copy) + mut copy", - "us": 917.8, + "variant": "mut copy", + "us": 832.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "insitu (copy) + mut copy": { - "us": 917.8, - "level": "full" - }, "insitu (copy untimed) + mut copy": { - "us": 932.4, + "us": 820.1, "level": "full" }, "mut copy": { - "us": 940.7, + "us": 832.7, + "level": "full" + }, + "insitu (copy) + mut copy": { + "us": 878.2, "level": "full" } } @@ -8648,14 +8648,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 711.4, + "us": 641.9, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 711.4, + "us": 641.9, "level": "no UTF-8" } } @@ -8663,23 +8663,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 4340.8, + "us": 3896.2, "level": "full" }, "best_any": { "variant": "generic", - "us": 4301.2, + "us": 3837.0, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 4301.2, + "us": 3837.0, "level": "partial" }, "generic (strict)": { - "us": 4340.8, + "us": 3896.2, "level": "full" } }, @@ -8691,19 +8691,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 1854.7, + "us": 1715.8, "level": "full" }, "best_any": { "variant": "parse", - "us": 1854.7, + "us": 1715.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 1854.7, + "us": 1715.8, "level": "full" } } @@ -8711,47 +8711,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 2634.9, + "us": 2477.9, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 2029.7, + "us": 1842.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1951.7, + "us": 1797.8, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 2029.7, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 2052.9, + "us": 1842.4, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 2248.2, + "us": 1967.8, "level": "no UTF-8" }, - "insitu (copy)": { - "us": 2634.9, - "level": "full" + "Document (no encoding check)": { + "us": 2045.6, + "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 2686.7, + "us": 2417.1, + "level": "full" + }, + "insitu (copy)": { + "us": 2477.9, "level": "full" }, "Document": { - "us": 3020.8, + "us": 2725.8, "level": "full" }, "Document (string stream)": { - "us": 3126.8, + "us": 2812.6, "level": "full" } } @@ -8825,23 +8825,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 1126.7, + "us": 1152.3, "level": "full" }, "best_any": { "variant": "editable", - "us": 1126.7, + "us": 1152.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 1126.7, + "us": 1152.3, "level": "full" }, "editable (source numbers)": { - "us": 1126.8, + "us": 1157.0, "level": "full" } } @@ -8849,51 +8849,51 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 4905.2, + "us": 4401.6, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 4905.2, + "us": 4401.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 4905.2, + "us": 4401.6, "level": "full" }, "parse": { - "us": 5726.3, + "us": 5319.5, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy) + mut copy", - "us": 1659.2, + "variant": "mut copy", + "us": 1674.2, "level": "full" }, "best_any": { - "variant": "insitu (copy) + mut copy", - "us": 1659.2, + "variant": "mut copy", + "us": 1674.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 1547.7, - "level": "full" - }, - "insitu (copy) + mut copy": { - "us": 1659.2, + "us": 1563.9, "level": "full" }, "mut copy": { - "us": 1661.0, + "us": 1674.2, + "level": "full" + }, + "insitu (copy) + mut copy": { + "us": 1680.6, "level": "full" } } @@ -8902,14 +8902,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1472.1, + "us": 1496.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1472.1, + "us": 1496.7, "level": "no UTF-8" } } @@ -8917,24 +8917,24 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 7321.5, + "us": 7671.0, "level": "full" }, "best_any": { - "variant": "generic (strict)", - "us": 7321.5, - "level": "full" + "variant": "generic", + "us": 7565.9, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (strict)": { - "us": 7321.5, - "level": "full" - }, "generic": { - "us": 7435.9, + "us": 7565.9, "level": "partial" + }, + "generic (strict)": { + "us": 7671.0, + "level": "full" } }, "excluded": { @@ -8945,19 +8945,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 2596.2, + "us": 2578.3, "level": "full" }, "best_any": { "variant": "parse", - "us": 2596.2, + "us": 2578.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 2596.2, + "us": 2578.3, "level": "full" } } @@ -8965,47 +8965,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 3225.3, + "us": 3260.6, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 2838.7, + "us": 2886.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 2728.1, + "us": 2857.4, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 2838.7, + "us": 2886.8, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 2897.4, + "us": 2915.1, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 2972.2, + "us": 2977.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 3103.2, + "us": 3134.1, "level": "full" }, "insitu (copy)": { - "us": 3225.3, + "us": 3260.6, "level": "full" }, "Document": { - "us": 3401.8, + "us": 3440.1, "level": "full" }, "Document (string stream)": { - "us": 3507.7, + "us": 3484.3, "level": "full" } } @@ -9079,23 +9079,23 @@ "nlohmann json_document": { "best": { "variant": "editable (source numbers)", - "us": 2442.9, + "us": 2502.5, "level": "full" }, "best_any": { "variant": "editable (source numbers)", - "us": 2442.9, + "us": 2502.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable (source numbers)": { - "us": 2442.9, + "us": 2502.5, "level": "full" }, "editable": { - "us": 5674.4, + "us": 5670.8, "level": "full" } } @@ -9103,23 +9103,23 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 16701.8, + "us": 14764.9, "level": "full" }, "best_any": { "variant": "parse", - "us": 16701.8, + "us": 14764.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 16701.8, + "us": 14764.9, "level": "full" }, "ordered_json": { - "us": 16785.9, + "us": 15056.9, "level": "full" } } @@ -9127,27 +9127,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 7232.6, + "us": 7249.3, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 7232.6, + "us": 7249.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "insitu (copy untimed) + mut copy": { - "us": 7155.1, + "mut copy": { + "us": 7249.3, "level": "full" }, - "mut copy": { - "us": 7232.6, + "insitu (copy untimed) + mut copy": { + "us": 7461.1, "level": "full" }, "insitu (copy) + mut copy": { - "us": 7340.8, + "us": 7534.6, "level": "full" } } @@ -9156,14 +9156,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 7995.7, + "us": 8153.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 7995.7, + "us": 8153.1, "level": "no UTF-8" } } @@ -9171,24 +9171,24 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 26786.5, + "us": 28104.4, "level": "full" }, "best_any": { - "variant": "generic (strict)", - "us": 26786.5, - "level": "full" + "variant": "generic", + "us": 27110.8, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (strict)": { - "us": 26786.5, - "level": "full" - }, "generic": { - "us": 26840.5, + "us": 27110.8, "level": "partial" + }, + "generic (strict)": { + "us": 28104.4, + "level": "full" } }, "excluded": { @@ -9199,68 +9199,68 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 12765.2, + "us": 13426.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 12765.2, + "us": 13426.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 12765.2, + "us": 13426.6, "level": "full" } } }, "RapidJSON": { "best": { - "variant": "Document (string stream)", - "us": 21307.0, + "variant": "insitu (copy)", + "us": 21685.8, "level": "full" }, "best_any": { - "variant": "Document (string stream) (no encoding check)", - "us": 21154.4, - "level": "no UTF-8" + "variant": "insitu (copy)", + "us": 21685.8, + "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed)": { - "us": 21138.8, - "level": "full" - }, - "Document (string stream) (no encoding check)": { - "us": 21154.4, - "level": "no UTF-8" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 21195.3, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 21200.9, - "level": "no UTF-8" - }, - "Document (string stream)": { - "us": 21307.0, + "us": 21568.8, "level": "full" }, "insitu (copy)": { - "us": 21413.9, + "us": 21685.8, + "level": "full" + }, + "Document (string stream) (no encoding check)": { + "us": 21708.5, + "level": "no UTF-8" + }, + "insitu (copy untimed) (no encoding check)": { + "us": 21742.7, + "level": "no UTF-8" + }, + "insitu (copy) (no encoding check)": { + "us": 21827.2, + "level": "no UTF-8" + }, + "Document (string stream)": { + "us": 21857.9, + "level": "full" + }, + "Document": { + "us": 23216.1, "level": "full" }, "Document (no encoding check)": { - "us": 21695.3, + "us": 23488.8, "level": "no UTF-8" - }, - "Document": { - "us": 22289.4, - "level": "full" } } }, @@ -9333,23 +9333,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 196369.6, + "us": 195715.8, "level": "full" }, "best_any": { "variant": "editable", - "us": 196369.6, + "us": 195715.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 196369.6, + "us": 195715.8, "level": "full" }, "editable (source numbers)": { - "us": 200396.1, + "us": 197796.9, "level": "full" } } @@ -9357,23 +9357,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 666261.1, + "us": 646489.4, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 666261.1, + "us": 646489.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 666261.1, + "us": 646489.4, "level": "full" }, "parse": { - "us": 901257.5, + "us": 845674.5, "level": "full" } } @@ -9381,27 +9381,27 @@ "yyjson": { "best": { "variant": "insitu (copy) + mut copy", - "us": 316649.7, + "us": 316652.3, "level": "full" }, "best_any": { "variant": "insitu (copy) + mut copy", - "us": 316649.7, + "us": 316652.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 270654.0, + "us": 273813.6, "level": "full" }, "insitu (copy) + mut copy": { - "us": 316649.7, + "us": 316652.3, "level": "full" }, "mut copy": { - "us": 328034.7, + "us": 321427.2, "level": "full" } } @@ -9410,14 +9410,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 183852.2, + "us": 184321.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 183852.2, + "us": 184321.0, "level": "no UTF-8" } } @@ -9425,23 +9425,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 725880.6, + "us": 723675.0, "level": "full" }, "best_any": { "variant": "generic (strict)", - "us": 725880.6, + "us": 723675.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "generic (strict)": { - "us": 725880.6, + "us": 723675.0, "level": "full" }, "generic": { - "us": 783351.6, + "us": 741416.1, "level": "partial" } }, @@ -9453,19 +9453,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 350286.2, + "us": 354510.2, "level": "full" }, "best_any": { "variant": "parse", - "us": 350286.2, + "us": 354510.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 350286.2, + "us": 354510.2, "level": "full" } } @@ -9473,47 +9473,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 386367.0, + "us": 378727.1, "level": "full" }, "best_any": { "variant": "Document (string stream) (no encoding check)", - "us": 299765.3, + "us": 294726.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 267080.6, + "us": 269454.2, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 299765.3, + "us": 294726.6, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 310314.1, + "us": 309915.2, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 324206.5, + "us": 329674.0, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 333912.8, + "us": 336245.6, "level": "full" }, "insitu (copy)": { - "us": 386367.0, + "us": 378727.1, "level": "full" }, "Document (string stream)": { - "us": 389205.3, + "us": 388646.1, "level": "full" }, "Document": { - "us": 422735.6, + "us": 404806.1, "level": "full" } } @@ -9587,23 +9587,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 2.9, + "us": 3.0, "level": "full" }, "best_any": { "variant": "editable", - "us": 2.9, + "us": 3.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 2.9, + "us": 3.0, "level": "full" }, "editable (source numbers)": { - "us": 2.9, + "us": 3.2, "level": "full" } } @@ -9611,23 +9611,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 13.1, + "us": 12.6, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 13.1, + "us": 12.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 13.1, + "us": 12.6, "level": "full" }, "parse": { - "us": 22.2, + "us": 21.4, "level": "full" } } @@ -9635,27 +9635,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 3.9, + "us": 4.2, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 3.9, + "us": 4.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { + "insitu (copy untimed) + mut copy": { + "us": 4.1, + "level": "full" + }, "mut copy": { - "us": 3.9, + "us": 4.2, "level": "full" }, "insitu (copy) + mut copy": { - "us": 3.9, - "level": "full" - }, - "insitu (copy untimed) + mut copy": { - "us": 3.9, + "us": 4.3, "level": "full" } } @@ -9664,14 +9664,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3.2, + "us": 3.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3.2, + "us": 3.3, "level": "no UTF-8" } } @@ -9679,23 +9679,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 18.3, + "us": 20.2, "level": "full" }, "best_any": { "variant": "generic", - "us": 17.7, + "us": 19.6, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 17.7, + "us": 19.6, "level": "partial" }, "generic (strict)": { - "us": 18.3, + "us": 20.2, "level": "full" } }, @@ -9707,19 +9707,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 8.3, + "us": 8.9, "level": "full" }, "best_any": { "variant": "parse", - "us": 8.3, + "us": 8.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 8.3, + "us": 8.9, "level": "full" } } @@ -9727,47 +9727,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 11.8, + "us": 13.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 7.7, + "us": 8.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy) (no encoding check)": { - "us": 7.7, + "us": 8.3, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 7.7, + "us": 8.4, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 8.8, + "us": 9.5, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 11.4, + "us": 12.2, "level": "no UTF-8" }, - "insitu (copy)": { - "us": 11.8, + "insitu (copy untimed)": { + "us": 12.7, "level": "full" }, - "insitu (copy untimed)": { - "us": 12.0, + "insitu (copy)": { + "us": 13.1, "level": "full" }, "Document (string stream)": { - "us": 14.3, + "us": 15.7, "level": "full" }, "Document": { - "us": 15.5, + "us": 16.3, "level": "full" } } @@ -9841,23 +9841,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 468.1, + "us": 460.0, "level": "full" }, "best_any": { "variant": "editable", - "us": 468.1, + "us": 460.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 468.1, + "us": 460.0, "level": "full" }, "editable (source numbers)": { - "us": 468.7, + "us": 460.4, "level": "full" } } @@ -9865,23 +9865,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 2652.4, + "us": 2356.9, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 2652.4, + "us": 2356.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 2652.4, + "us": 2356.9, "level": "full" }, "parse": { - "us": 3903.7, + "us": 3500.4, "level": "full" } } @@ -9889,27 +9889,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 810.2, + "us": 786.4, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 810.2, + "us": 786.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 732.8, + "us": 740.8, "level": "full" }, "mut copy": { - "us": 810.2, + "us": 786.4, "level": "full" }, "insitu (copy) + mut copy": { - "us": 812.3, + "us": 795.0, "level": "full" } } @@ -9918,14 +9918,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 522.8, + "us": 521.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 522.8, + "us": 521.4, "level": "no UTF-8" } } @@ -9933,24 +9933,24 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3683.7, + "us": 3699.2, "level": "full" }, "best_any": { - "variant": "generic (strict)", - "us": 3683.7, - "level": "full" + "variant": "generic", + "us": 3666.7, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (strict)": { - "us": 3683.7, - "level": "full" - }, "generic": { - "us": 3705.9, + "us": 3666.7, "level": "partial" + }, + "generic (strict)": { + "us": 3699.2, + "level": "full" } }, "excluded": { @@ -9961,19 +9961,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 1602.9, + "us": 1601.3, "level": "full" }, "best_any": { "variant": "parse", - "us": 1602.9, + "us": 1601.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 1602.9, + "us": 1601.3, "level": "full" } } @@ -9981,47 +9981,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 2142.7, + "us": 2133.3, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1573.9, + "us": 1567.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1543.9, + "us": 1542.9, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1573.9, + "us": 1567.2, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 1745.4, + "us": 1748.0, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1947.8, + "us": 1955.8, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 2110.1, + "us": 2099.9, "level": "full" }, "insitu (copy)": { - "us": 2142.7, + "us": 2133.3, "level": "full" }, "Document (string stream)": { - "us": 2507.6, + "us": 2493.7, "level": "full" }, "Document": { - "us": 2690.7, + "us": 2630.5, "level": "full" } } @@ -10094,24 +10094,24 @@ "citm_catalog_min": { "nlohmann json_document": { "best": { - "variant": "editable (source numbers)", - "us": 855.1, + "variant": "editable", + "us": 860.5, "level": "full" }, "best_any": { - "variant": "editable (source numbers)", - "us": 855.1, + "variant": "editable", + "us": 860.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "editable (source numbers)": { - "us": 855.1, + "editable": { + "us": 860.5, "level": "full" }, - "editable": { - "us": 855.4, + "editable (source numbers)": { + "us": 863.0, "level": "full" } } @@ -10119,23 +10119,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 4606.2, + "us": 4028.5, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 4606.2, + "us": 4028.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 4606.2, + "us": 4028.5, "level": "full" }, "parse": { - "us": 5425.5, + "us": 4844.3, "level": "full" } } @@ -10143,27 +10143,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 1245.4, + "us": 1254.4, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 1245.4, + "us": 1254.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 1213.2, + "us": 1218.6, "level": "full" }, "mut copy": { - "us": 1245.4, + "us": 1254.4, "level": "full" }, "insitu (copy) + mut copy": { - "us": 1247.5, + "us": 1257.6, "level": "full" } } @@ -10172,14 +10172,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1139.7, + "us": 1141.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1139.7, + "us": 1141.4, "level": "no UTF-8" } } @@ -10187,24 +10187,24 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 6647.5, + "us": 6805.4, "level": "full" }, "best_any": { - "variant": "generic (strict)", - "us": 6647.5, - "level": "full" + "variant": "generic", + "us": 6797.0, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (strict)": { - "us": 6647.5, - "level": "full" - }, "generic": { - "us": 6744.4, + "us": 6797.0, "level": "partial" + }, + "generic (strict)": { + "us": 6805.4, + "level": "full" } }, "excluded": { @@ -10215,19 +10215,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 2320.5, + "us": 2286.7, "level": "full" }, "best_any": { "variant": "parse", - "us": 2320.5, + "us": 2286.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 2320.5, + "us": 2286.7, "level": "full" } } @@ -10235,47 +10235,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 2668.7, + "us": 2669.7, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 2360.8, + "us": 2364.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 2342.4, + "us": 2344.4, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 2360.8, + "us": 2364.8, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 2516.6, + "us": 2512.1, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 2633.6, + "us": 2635.8, "level": "full" }, "Document (no encoding check)": { - "us": 2658.0, + "us": 2652.6, "level": "no UTF-8" }, "insitu (copy)": { - "us": 2668.7, + "us": 2669.7, "level": "full" }, "Document (string stream)": { - "us": 2953.8, + "us": 2930.4, "level": "full" }, "Document": { - "us": 3151.8, + "us": 3134.3, "level": "full" } } @@ -10350,40 +10350,40 @@ "twitter": { "nlohmann json_document": { "best": { - "variant": "parse + dump", - "us": 517.7, + "variant": "parse + dump (source numbers)", + "us": 467.1, "level": "full" }, "best_any": { - "variant": "parse + dump", - "us": 517.7, + "variant": "parse + dump (source numbers)", + "us": 467.1, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 497.6, + "us": 466.5, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 497.6, + "us": 466.5, "level": "full" }, "variants": { "read + dump (reused)": { - "us": 497.6, - "level": "full" - }, - "parse + dump": { - "us": 517.7, + "us": 466.5, "level": "full" }, "parse + dump (source numbers)": { - "us": 521.2, + "us": 467.1, + "level": "full" + }, + "parse + dump": { + "us": 472.0, "level": "full" }, "parse_copy + dump": { - "us": 556.1, + "us": 512.9, "level": "full" } } @@ -10391,63 +10391,63 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 4444.8, + "us": 3524.7, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 4444.8, + "us": 3524.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 4444.8, + "us": 3524.7, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy) + write", - "us": 678.4, + "variant": "read + write", + "us": 625.5, "level": "full" }, "best_any": { - "variant": "insitu (copy) + write", - "us": 678.4, + "variant": "read + write", + "us": 625.5, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 727.7, + "us": 631.4, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 727.7, + "us": 631.4, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 619.8, - "level": "full" - }, - "insitu (copy) + write": { - "us": 678.4, - "level": "full" - }, - "read (raw numbers) + write": { - "us": 678.6, + "us": 586.6, "level": "full" }, "read + write": { - "us": 688.3, + "us": 625.5, + "level": "full" + }, + "insitu (copy) + write": { + "us": 629.0, "level": "full" }, "read + write (reused allocator)": { - "us": 727.7, + "us": 631.4, + "level": "full" + }, + "read (raw numbers) + write": { + "us": 633.2, "level": "full" } } @@ -10455,35 +10455,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 783.1, + "us": 706.0, "level": "full" }, "best_any": { "variant": "minify", - "us": 105.4, + "us": 99.0, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 788.0, + "us": 704.7, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 788.0, + "us": 704.7, "level": "full" }, "variants": { "minify": { - "us": 105.4, + "us": 99.0, "level": "partial" }, - "DOM + to_string": { - "us": 783.1, + "DOM (reused) + to_string": { + "us": 704.7, "level": "full" }, - "DOM (reused) + to_string": { - "us": 788.0, + "DOM + to_string": { + "us": 706.0, "level": "full" } } @@ -10492,14 +10492,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 710.1, + "us": 655.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 710.1, + "us": 655.0, "level": "no UTF-8" } } @@ -10507,28 +10507,28 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 4131.9, + "us": 3801.2, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 443.5, + "us": 422.1, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 443.5, + "us": 422.1, + "level": "partial" + }, + "generic": { + "us": 3738.7, "level": "partial" }, "generic (strict)": { - "us": 4131.9, + "us": 3801.2, "level": "full" - }, - "generic": { - "us": 4305.0, - "level": "partial" } }, "excluded": { @@ -10539,31 +10539,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 1924.5, + "us": 1721.5, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 1924.5, + "us": 1721.5, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 1806.3, + "us": 1705.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 1806.3, + "us": 1705.8, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 1806.3, + "us": 1705.8, "level": "full" }, "parse + serialize": { - "us": 1924.5, + "us": 1721.5, "level": "full" } } @@ -10571,63 +10571,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer", - "us": 2808.0, + "us": 2456.3, "level": "full" }, "best_any": { - "variant": "SAX to Writer (raw numbers) (no encoding check)", - "us": 2022.3, + "variant": "SAX to Writer (no encoding check)", + "us": 1794.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 3112.6, + "us": 2850.1, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 2367.0, + "us": 2100.4, "level": "no UTF-8" }, "variants": { - "SAX to Writer (raw numbers) (no encoding check)": { - "us": 2022.3, + "SAX to Writer (no encoding check)": { + "us": 1794.3, "level": "no UTF-8" }, - "SAX to Writer (no encoding check)": { - "us": 2029.7, + "SAX to Writer (raw numbers) (no encoding check)": { + "us": 1839.5, "level": "no UTF-8" }, "SAX to Writer (string stream) (no encoding check)": { - "us": 2074.6, + "us": 1875.9, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 2362.8, + "us": 2089.0, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 2367.0, + "us": 2100.4, "level": "no UTF-8" }, "SAX to Writer": { - "us": 2808.0, - "level": "full" - }, - "SAX to Writer (string stream)": { - "us": 2863.8, + "us": 2456.3, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 2887.1, + "us": 2459.0, "level": "full" }, - "Document + Writer (reused allocator)": { - "us": 3112.6, + "SAX to Writer (string stream)": { + "us": 2607.6, "level": "full" }, "Document + Writer": { - "us": 3194.8, + "us": 2779.8, + "level": "full" + }, + "Document + Writer (reused allocator)": { + "us": 2850.1, "level": "full" } } @@ -10696,40 +10696,40 @@ "citm_catalog": { "nlohmann json_document": { "best": { - "variant": "parse + dump (source numbers)", - "us": 1030.2, + "variant": "parse + dump", + "us": 1054.9, "level": "full" }, "best_any": { - "variant": "parse + dump (source numbers)", - "us": 1030.2, + "variant": "parse + dump", + "us": 1054.9, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 1034.0, + "us": 1055.2, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 1034.0, + "us": 1055.2, "level": "full" }, "variants": { - "parse + dump (source numbers)": { - "us": 1030.2, + "parse + dump": { + "us": 1054.9, "level": "full" }, "read + dump (reused)": { - "us": 1034.0, + "us": 1055.2, "level": "full" }, - "parse + dump": { - "us": 1040.1, + "parse + dump (source numbers)": { + "us": 1076.9, "level": "full" }, "parse_copy + dump": { - "us": 1164.2, + "us": 1174.4, "level": "full" } } @@ -10737,19 +10737,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 5713.0, + "us": 5177.6, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 5713.0, + "us": 5177.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 5713.0, + "us": 5177.6, "level": "full" } } @@ -10757,43 +10757,43 @@ "yyjson": { "best": { "variant": "read (raw numbers) + write", - "us": 1234.6, + "us": 1236.0, "level": "full" }, "best_any": { "variant": "read (raw numbers) + write", - "us": 1234.6, + "us": 1236.0, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 1340.3, + "us": 1296.9, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 1340.3, + "us": 1296.9, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 1189.1, + "us": 1151.9, "level": "full" }, "read (raw numbers) + write": { - "us": 1234.6, + "us": 1236.0, "level": "full" }, "read + write": { - "us": 1257.6, + "us": 1261.4, "level": "full" }, "insitu (copy) + write": { - "us": 1278.1, + "us": 1280.3, "level": "full" }, "read + write (reused allocator)": { - "us": 1340.3, + "us": 1296.9, "level": "full" } } @@ -10801,35 +10801,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 1395.0, + "us": 1411.1, "level": "full" }, "best_any": { "variant": "minify", - "us": 269.0, + "us": 269.7, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 1388.0, + "us": 1401.6, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 1388.0, + "us": 1401.6, "level": "full" }, "variants": { "minify": { - "us": 269.0, + "us": 269.7, "level": "partial" }, "DOM (reused) + to_string": { - "us": 1388.0, + "us": 1401.6, "level": "full" }, "DOM + to_string": { - "us": 1395.0, + "us": 1411.1, "level": "full" } } @@ -10838,14 +10838,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 1485.4, + "us": 1474.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 1485.4, + "us": 1474.3, "level": "no UTF-8" } } @@ -10853,28 +10853,28 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 7465.4, + "us": 7482.4, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 1059.1, + "us": 1051.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 1059.1, + "us": 1051.4, + "level": "partial" + }, + "generic": { + "us": 7349.1, "level": "partial" }, "generic (strict)": { - "us": 7465.4, + "us": 7482.4, "level": "full" - }, - "generic": { - "us": 7838.0, - "level": "partial" } }, "excluded": { @@ -10885,31 +10885,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 2568.7, + "us": 2573.0, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 2568.7, + "us": 2573.0, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 2734.1, + "us": 2503.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 2734.1, + "us": 2503.8, "level": "full" }, "variants": { - "parse + serialize": { - "us": 2568.7, + "parser (reused) + serialize": { + "us": 2503.8, "level": "full" }, - "parser (reused) + serialize": { - "us": 2734.1, + "parse + serialize": { + "us": 2573.0, "level": "full" } } @@ -10917,63 +10917,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer", - "us": 2975.2, + "us": 2863.7, "level": "full" }, "best_any": { "variant": "SAX to Writer (no encoding check)", - "us": 2480.1, + "us": 2444.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 3396.9, + "us": 3389.3, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 2979.8, + "us": 2940.1, "level": "no UTF-8" }, "variants": { "SAX to Writer (no encoding check)": { - "us": 2480.1, + "us": 2444.5, "level": "no UTF-8" }, "SAX to Writer (string stream) (no encoding check)": { - "us": 2559.3, + "us": 2725.6, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 2855.7, + "us": 2831.4, "level": "no UTF-8" }, "SAX to Writer": { - "us": 2975.2, - "level": "full" - }, - "Document + Writer (reused allocator) (no encoding check)": { - "us": 2979.8, - "level": "no UTF-8" - }, - "SAX to Writer (string stream)": { - "us": 3031.7, + "us": 2863.7, "level": "full" }, "Document + Writer (no encoding check)": { - "us": 3045.5, + "us": 2921.4, "level": "no UTF-8" }, + "Document + Writer (reused allocator) (no encoding check)": { + "us": 2940.1, + "level": "no UTF-8" + }, + "SAX to Writer (string stream)": { + "us": 3051.7, + "level": "full" + }, "SAX to Writer (raw numbers)": { - "us": 3243.4, + "us": 3290.5, "level": "full" }, "Document + Writer (reused allocator)": { - "us": 3396.9, + "us": 3389.3, "level": "full" }, "Document + Writer": { - "us": 3521.8, + "us": 3412.5, "level": "full" } } @@ -11043,39 +11043,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 2456.1, + "us": 2362.9, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 2456.1, + "us": 2362.9, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 5286.7, + "us": 5028.9, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 5286.7, + "us": 5028.9, "level": "full" }, "variants": { "parse + dump (source numbers)": { - "us": 2456.1, - "level": "full" - }, - "parse + dump": { - "us": 5042.6, + "us": 2362.9, "level": "full" }, "read + dump (reused)": { - "us": 5286.7, + "us": 5028.9, + "level": "full" + }, + "parse + dump": { + "us": 5041.1, "level": "full" }, "parse_copy + dump": { - "us": 5371.7, + "us": 5193.5, "level": "full" } } @@ -11083,19 +11083,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 16710.6, + "us": 14023.7, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 16710.6, + "us": 14023.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 16710.6, + "us": 14023.7, "level": "full" } } @@ -11103,43 +11103,43 @@ "yyjson": { "best": { "variant": "read (raw numbers) + write", - "us": 3472.2, + "us": 3425.6, "level": "full" }, "best_any": { "variant": "read (raw numbers) + write", - "us": 3472.2, + "us": 3425.6, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 6374.7, + "us": 6181.3, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 6374.7, + "us": 6181.3, "level": "full" }, "variants": { "read (raw numbers) + write": { - "us": 3472.2, + "us": 3425.6, "level": "full" }, "insitu (copy untimed) + write": { - "us": 6282.8, - "level": "full" - }, - "read + write (reused allocator)": { - "us": 6374.7, - "level": "full" - }, - "insitu (copy) + write": { - "us": 6376.0, + "us": 6094.8, "level": "full" }, "read + write": { - "us": 6420.4, + "us": 6179.3, + "level": "full" + }, + "read + write (reused allocator)": { + "us": 6181.3, + "level": "full" + }, + "insitu (copy) + write": { + "us": 6183.4, "level": "full" } } @@ -11147,35 +11147,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 8303.2, + "us": 8125.1, "level": "full" }, "best_any": { "variant": "minify", - "us": 337.1, + "us": 328.7, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 8712.4, + "us": 8488.1, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 8712.4, + "us": 8488.1, "level": "full" }, "variants": { "minify": { - "us": 337.1, + "us": 328.7, "level": "partial" }, "DOM + to_string": { - "us": 8303.2, + "us": 8125.1, "level": "full" }, "DOM (reused) + to_string": { - "us": 8712.4, + "us": 8488.1, "level": "full" } } @@ -11184,14 +11184,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 8121.5, + "us": 7856.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 8121.5, + "us": 7856.1, "level": "no UTF-8" } } @@ -11199,27 +11199,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 26961.6, + "us": 26932.5, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 2221.9, + "us": 2139.6, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 2221.9, + "us": 2139.6, "level": "partial" }, "generic": { - "us": 26550.0, + "us": 26709.7, "level": "partial" }, "generic (strict)": { - "us": 26961.6, + "us": 26932.5, "level": "full" } }, @@ -11231,31 +11231,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 12622.5, + "us": 12677.7, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 12622.5, + "us": 12677.7, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 12883.9, + "us": 12588.3, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 12883.9, + "us": 12588.3, "level": "full" }, "variants": { - "parse + serialize": { - "us": 12622.5, + "parser (reused) + serialize": { + "us": 12588.3, "level": "full" }, - "parser (reused) + serialize": { - "us": 12883.9, + "parse + serialize": { + "us": 12677.7, "level": "full" } } @@ -11263,63 +11263,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (raw numbers)", - "us": 14986.3, + "us": 15326.1, "level": "full" }, "best_any": { - "variant": "SAX to Writer (raw numbers)", - "us": 14986.3, - "level": "full" + "variant": "SAX to Writer (raw numbers) (no encoding check)", + "us": 14706.8, + "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 21630.1, + "us": 21871.5, "level": "full" }, "best_reused_any": { - "variant": "Document + Writer (reused allocator)", - "us": 21630.1, - "level": "full" + "variant": "Document + Writer (reused allocator) (no encoding check)", + "us": 21830.3, + "level": "no UTF-8" }, "variants": { - "SAX to Writer (raw numbers)": { - "us": 14986.3, - "level": "full" - }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 15205.7, + "us": 14706.8, "level": "no UTF-8" }, - "Document + Writer (reused allocator)": { - "us": 21630.1, + "SAX to Writer (raw numbers)": { + "us": 15326.1, "level": "full" }, "SAX to Writer (string stream) (no encoding check)": { - "us": 21691.3, + "us": 20991.9, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 22060.8, - "level": "no UTF-8" - }, - "Document + Writer (reused allocator) (no encoding check)": { - "us": 22298.3, + "us": 21511.1, "level": "no UTF-8" }, "Document + Writer": { - "us": 22589.2, + "us": 21753.0, + "level": "full" + }, + "Document + Writer (reused allocator) (no encoding check)": { + "us": 21830.3, + "level": "no UTF-8" + }, + "Document + Writer (reused allocator)": { + "us": 21871.5, "level": "full" }, "SAX to Writer (string stream)": { - "us": 22811.9, + "us": 22306.2, "level": "full" }, "SAX to Writer (no encoding check)": { - "us": 23647.5, + "us": 22846.5, "level": "no UTF-8" }, "SAX to Writer": { - "us": 24346.5, + "us": 23724.2, "level": "full" } } @@ -11389,39 +11389,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump", - "us": 146125.4, + "us": 149143.2, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 146125.4, + "us": 149143.2, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 113317.7, + "us": 111494.0, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 113317.7, + "us": 111494.0, "level": "full" }, "variants": { "read + dump (reused)": { - "us": 113317.7, + "us": 111494.0, "level": "full" }, "parse + dump": { - "us": 146125.4, + "us": 149143.2, "level": "full" }, "parse + dump (source numbers)": { - "us": 151284.6, + "us": 149412.6, "level": "full" }, "parse_copy + dump": { - "us": 187850.7, + "us": 191343.3, "level": "full" } } @@ -11429,19 +11429,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 543033.4, + "us": 506704.6, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 543033.4, + "us": 506704.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 543033.4, + "us": 506704.6, "level": "full" } } @@ -11449,43 +11449,43 @@ "yyjson": { "best": { "variant": "read (raw numbers) + write", - "us": 193235.3, + "us": 197700.1, "level": "full" }, "best_any": { "variant": "read (raw numbers) + write", - "us": 193235.3, + "us": 197700.1, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 99883.3, + "us": 102589.0, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 99883.3, + "us": 102589.0, "level": "full" }, "variants": { "read + write (reused allocator)": { - "us": 99883.3, + "us": 102589.0, "level": "full" }, "insitu (copy untimed) + write": { - "us": 154016.2, + "us": 159761.2, "level": "full" }, "read (raw numbers) + write": { - "us": 193235.3, + "us": 197700.1, "level": "full" }, "read + write": { - "us": 193451.6, + "us": 200886.5, "level": "full" }, "insitu (copy) + write": { - "us": 198565.4, + "us": 201492.3, "level": "full" } } @@ -11493,35 +11493,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 275006.6, + "us": 270331.5, "level": "full" }, "best_any": { "variant": "minify", - "us": 45087.0, + "us": 42546.5, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 216862.5, + "us": 215222.4, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 216862.5, + "us": 215222.4, "level": "full" }, "variants": { "minify": { - "us": 45087.0, + "us": 42546.5, "level": "partial" }, "DOM (reused) + to_string": { - "us": 216862.5, + "us": 215222.4, "level": "full" }, "DOM + to_string": { - "us": 275006.6, + "us": 270331.5, "level": "full" } } @@ -11530,14 +11530,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 166935.3, + "us": 169992.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 166935.3, + "us": 169992.5, "level": "no UTF-8" } } @@ -11545,27 +11545,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 528810.7, + "us": 544342.1, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 91152.7, + "us": 87841.5, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 91152.7, + "us": 87841.5, "level": "partial" }, "generic": { - "us": 515973.2, + "us": 517373.1, "level": "partial" }, "generic (strict)": { - "us": 528810.7, + "us": 544342.1, "level": "full" } }, @@ -11577,31 +11577,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 329090.3, + "us": 330877.7, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 329090.3, + "us": 330877.7, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 277756.5, + "us": 270620.6, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 277756.5, + "us": 270620.6, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 277756.5, + "us": 270620.6, "level": "full" }, "parse + serialize": { - "us": 329090.3, + "us": 330877.7, "level": "full" } } @@ -11609,63 +11609,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 358806.9, + "us": 338984.9, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 261526.8, + "us": 252655.6, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 398389.8, + "us": 404117.3, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 310770.1, + "us": 310138.4, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 261526.8, - "level": "no UTF-8" - }, - "SAX to Writer (no encoding check)": { - "us": 279575.6, + "us": 252655.6, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 280239.1, + "us": 267162.9, + "level": "no UTF-8" + }, + "SAX to Writer (no encoding check)": { + "us": 270672.0, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 310770.1, + "us": 310138.4, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 326476.3, + "us": 314636.6, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 358806.9, - "level": "full" - }, - "SAX to Writer": { - "us": 370482.2, + "us": 338984.9, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 371569.7, + "us": 351327.4, + "level": "full" + }, + "SAX to Writer": { + "us": 354830.2, "level": "full" }, "Document + Writer (reused allocator)": { - "us": 398389.8, + "us": 404117.3, "level": "full" }, "Document + Writer": { - "us": 425669.0, + "us": 408401.1, "level": "full" } } @@ -11735,59 +11735,59 @@ "nlohmann json_document": { "best": { "variant": "parse + dump", - "us": 2.4, + "us": 2.5, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 2.4, + "us": 2.5, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 2.3, + "us": 2.4, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 2.3, + "us": 2.4, "level": "full" }, "variants": { "read + dump (reused)": { - "us": 2.3, + "us": 2.4, "level": "full" }, "parse + dump": { - "us": 2.4, - "level": "full" - }, - "parse + dump (source numbers)": { - "us": 2.4, + "us": 2.5, "level": "full" }, "parse_copy + dump": { "us": 2.6, "level": "full" + }, + "parse + dump (source numbers)": { + "us": 2.7, + "level": "full" } } }, "nlohmann json": { "best": { "variant": "parse + dump", - "us": 21.4, + "us": 20.6, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 21.4, + "us": 20.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 21.4, + "us": 20.6, "level": "full" } } @@ -11795,43 +11795,43 @@ "yyjson": { "best": { "variant": "read + write", - "us": 3.1, + "us": 3.3, "level": "full" }, "best_any": { "variant": "read + write", - "us": 3.1, + "us": 3.3, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 2.8, + "us": 2.9, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 2.8, + "us": 2.9, "level": "full" }, "variants": { "read + write (reused allocator)": { - "us": 2.8, - "level": "full" - }, - "insitu (copy untimed) + write": { - "us": 3.0, + "us": 2.9, "level": "full" }, "read + write": { - "us": 3.1, + "us": 3.3, + "level": "full" + }, + "insitu (copy untimed) + write": { + "us": 3.4, "level": "full" }, "insitu (copy) + write": { - "us": 3.1, + "us": 3.5, "level": "full" }, "read (raw numbers) + write": { - "us": 3.1, + "us": 3.5, "level": "full" } } @@ -11839,7 +11839,7 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 4.0, + "us": 4.3, "level": "full" }, "best_any": { @@ -11849,12 +11849,12 @@ }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 3.6, + "us": 3.7, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 3.6, + "us": 3.7, "level": "full" }, "variants": { @@ -11863,11 +11863,11 @@ "level": "partial" }, "DOM (reused) + to_string": { - "us": 3.6, + "us": 3.7, "level": "full" }, "DOM + to_string": { - "us": 4.0, + "us": 4.3, "level": "full" } } @@ -11876,14 +11876,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 3.1, + "us": 3.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 3.1, + "us": 3.5, "level": "no UTF-8" } } @@ -11891,27 +11891,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 17.2, + "us": 19.2, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 1.9, + "us": 2.1, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 1.9, + "us": 2.1, "level": "partial" }, "generic": { - "us": 17.0, + "us": 18.3, "level": "partial" }, "generic (strict)": { - "us": 17.2, + "us": 19.2, "level": "full" } }, @@ -11923,31 +11923,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 8.4, + "us": 9.0, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 8.4, + "us": 9.0, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 8.2, + "us": 8.9, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 8.2, + "us": 8.9, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 8.2, + "us": 8.9, "level": "full" }, "parse + serialize": { - "us": 8.4, + "us": 9.0, "level": "full" } } @@ -11955,63 +11955,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 12.7, + "us": 13.6, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 7.2, + "us": 7.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 15.0, + "us": 16.6, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 11.1, + "us": 12.0, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 7.2, - "level": "no UTF-8" - }, - "SAX to Writer (no encoding check)": { - "us": 9.6, + "us": 7.5, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 9.8, + "us": 10.1, + "level": "no UTF-8" + }, + "SAX to Writer (no encoding check)": { + "us": 10.7, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 11.1, + "us": 12.0, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 11.6, + "us": 12.8, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 12.7, + "us": 13.6, "level": "full" }, "SAX to Writer": { - "us": 13.5, + "us": 14.3, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 13.5, + "us": 14.7, "level": "full" }, "Document + Writer (reused allocator)": { - "us": 15.0, + "us": 16.6, "level": "full" }, "Document + Writer": { - "us": 15.6, + "us": 17.3, "level": "full" } } @@ -12081,39 +12081,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 416.0, + "us": 410.3, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 416.0, + "us": 410.3, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 414.1, + "us": 410.9, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 414.1, + "us": 410.9, "level": "full" }, "variants": { - "read + dump (reused)": { - "us": 414.1, + "parse + dump (source numbers)": { + "us": 410.3, "level": "full" }, - "parse + dump (source numbers)": { - "us": 416.0, + "read + dump (reused)": { + "us": 410.9, "level": "full" }, "parse + dump": { - "us": 423.4, + "us": 417.9, "level": "full" }, "parse_copy + dump": { - "us": 453.0, + "us": 450.3, "level": "full" } } @@ -12121,19 +12121,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 3850.0, + "us": 3609.0, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 3850.0, + "us": 3609.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 3850.0, + "us": 3609.0, "level": "full" } } @@ -12141,43 +12141,43 @@ "yyjson": { "best": { "variant": "insitu (copy) + write", - "us": 566.5, + "us": 567.6, "level": "full" }, "best_any": { "variant": "insitu (copy) + write", - "us": 566.5, + "us": 567.6, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 563.5, + "us": 565.6, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 563.5, + "us": 565.6, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 536.4, + "us": 537.3, "level": "full" }, "read + write (reused allocator)": { - "us": 563.5, + "us": 565.6, "level": "full" }, "insitu (copy) + write": { - "us": 566.5, - "level": "full" - }, - "read + write": { - "us": 568.9, + "us": 567.6, "level": "full" }, "read (raw numbers) + write": { - "us": 576.8, + "us": 571.6, + "level": "full" + }, + "read + write": { + "us": 574.1, "level": "full" } } @@ -12185,35 +12185,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 692.6, + "us": 702.8, "level": "full" }, "best_any": { "variant": "minify", - "us": 72.8, + "us": 76.2, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 693.0, + "us": 690.0, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 693.0, + "us": 690.0, "level": "full" }, "variants": { "minify": { - "us": 72.8, + "us": 76.2, "level": "partial" }, - "DOM + to_string": { - "us": 692.6, + "DOM (reused) + to_string": { + "us": 690.0, "level": "full" }, - "DOM (reused) + to_string": { - "us": 693.0, + "DOM + to_string": { + "us": 702.8, "level": "full" } } @@ -12222,14 +12222,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 537.1, + "us": 540.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 537.1, + "us": 540.7, "level": "no UTF-8" } } @@ -12237,28 +12237,28 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3584.2, + "us": 3928.5, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 343.7, + "us": 354.0, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 343.7, + "us": 354.0, + "level": "partial" + }, + "generic": { + "us": 3806.0, "level": "partial" }, "generic (strict)": { - "us": 3584.2, + "us": 3928.5, "level": "full" - }, - "generic": { - "us": 3610.6, - "level": "partial" } }, "excluded": { @@ -12269,31 +12269,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 1613.1, + "us": 1718.6, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 1613.1, + "us": 1718.6, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 1621.1, + "us": 1616.9, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 1621.1, + "us": 1616.9, "level": "full" }, "variants": { - "parse + serialize": { - "us": 1613.1, + "parser (reused) + serialize": { + "us": 1616.9, "level": "full" }, - "parser (reused) + serialize": { - "us": 1621.1, + "parse + serialize": { + "us": 1718.6, "level": "full" } } @@ -12301,63 +12301,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 2268.6, + "us": 2335.0, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 1588.1, + "us": 1610.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2686.4, + "us": 2780.0, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 2005.6, + "us": 1998.0, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 1588.1, + "us": 1610.3, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 1677.3, + "us": 1741.3, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 1720.5, - "level": "no UTF-8" - }, - "Document + Writer (no encoding check)": { - "us": 2003.4, + "us": 1820.3, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 2005.6, + "us": 1998.0, + "level": "no UTF-8" + }, + "Document + Writer (no encoding check)": { + "us": 2042.5, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 2268.6, + "us": 2335.0, "level": "full" }, "SAX to Writer": { - "us": 2394.2, + "us": 2391.9, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 2418.4, + "us": 2406.8, "level": "full" }, "Document + Writer (reused allocator)": { - "us": 2686.4, + "us": 2780.0, "level": "full" }, "Document + Writer": { - "us": 2746.0, + "us": 2854.9, "level": "full" } } @@ -12427,39 +12427,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 773.5, + "us": 815.1, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 773.5, + "us": 815.1, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 816.0, + "us": 840.3, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 816.0, + "us": 840.3, "level": "full" }, "variants": { "parse + dump (source numbers)": { - "us": 773.5, - "level": "full" - }, - "parse + dump": { - "us": 774.0, + "us": 815.1, "level": "full" }, "read + dump (reused)": { - "us": 816.0, + "us": 840.3, + "level": "full" + }, + "parse + dump": { + "us": 841.7, "level": "full" }, "parse_copy + dump": { - "us": 851.0, + "us": 875.7, "level": "full" } } @@ -12467,63 +12467,63 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 5778.1, + "us": 5289.9, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 5778.1, + "us": 5289.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 5778.1, + "us": 5289.9, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy) + write", - "us": 891.6, + "variant": "read (raw numbers) + write", + "us": 853.2, "level": "full" }, "best_any": { - "variant": "insitu (copy) + write", - "us": 891.6, + "variant": "read (raw numbers) + write", + "us": 853.2, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 890.9, + "us": 910.8, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 890.9, + "us": 910.8, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 823.6, - "level": "full" - }, - "read + write (reused allocator)": { - "us": 890.9, - "level": "full" - }, - "insitu (copy) + write": { - "us": 891.6, + "us": 842.5, "level": "full" }, "read (raw numbers) + write": { - "us": 898.1, + "us": 853.2, + "level": "full" + }, + "insitu (copy) + write": { + "us": 868.0, "level": "full" }, "read + write": { - "us": 908.2, + "us": 910.4, + "level": "full" + }, + "read + write (reused allocator)": { + "us": 910.8, "level": "full" } } @@ -12531,35 +12531,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 1329.9, + "us": 1366.2, "level": "full" }, "best_any": { "variant": "minify", - "us": 72.9, + "us": 73.7, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 1265.6, + "us": 1338.4, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 1265.6, + "us": 1338.4, "level": "full" }, "variants": { "minify": { - "us": 72.9, + "us": 73.7, "level": "partial" }, "DOM (reused) + to_string": { - "us": 1265.6, + "us": 1338.4, "level": "full" }, "DOM + to_string": { - "us": 1329.9, + "us": 1366.2, "level": "full" } } @@ -12568,14 +12568,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 1236.7, + "us": 1274.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 1236.7, + "us": 1274.3, "level": "no UTF-8" } } @@ -12583,28 +12583,28 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 7126.2, + "us": 7436.0, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 634.8, + "us": 649.7, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 634.8, + "us": 649.7, + "level": "partial" + }, + "generic": { + "us": 7186.2, "level": "partial" }, "generic (strict)": { - "us": 7126.2, + "us": 7436.0, "level": "full" - }, - "generic": { - "us": 7268.4, - "level": "partial" } }, "excluded": { @@ -12615,31 +12615,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 2476.7, + "us": 2497.5, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 2476.7, + "us": 2497.5, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 2411.1, + "us": 2442.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 2411.1, + "us": 2442.8, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 2411.1, + "us": 2442.8, "level": "full" }, "parse + serialize": { - "us": 2476.7, + "us": 2497.5, "level": "full" } } @@ -12647,63 +12647,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 2696.0, + "us": 2529.0, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 2209.3, + "us": 2342.2, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 3286.6, + "us": 3478.3, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 2816.6, + "us": 2906.0, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 2209.3, + "us": 2342.2, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 2368.2, - "level": "no UTF-8" - }, - "SAX to Writer (raw numbers) (no encoding check)": { - "us": 2656.7, + "us": 2375.3, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 2696.0, + "us": 2529.0, "level": "full" }, - "Document + Writer (reused allocator) (no encoding check)": { - "us": 2816.6, + "SAX to Writer (raw numbers) (no encoding check)": { + "us": 2572.4, "level": "no UTF-8" }, "SAX to Writer": { - "us": 2885.7, + "us": 2788.8, "level": "full" }, + "Document + Writer (reused allocator) (no encoding check)": { + "us": 2906.0, + "level": "no UTF-8" + }, "Document + Writer (no encoding check)": { - "us": 2906.1, + "us": 2933.5, "level": "no UTF-8" }, "SAX to Writer (raw numbers)": { - "us": 3223.5, - "level": "full" - }, - "Document + Writer (reused allocator)": { - "us": 3286.6, + "us": 3256.0, "level": "full" }, "Document + Writer": { - "us": 3470.2, + "us": 3367.5, + "level": "full" + }, + "Document + Writer (reused allocator)": { + "us": 3478.3, "level": "full" } } @@ -12775,23 +12775,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 153.8, + "us": 152.6, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 153.8, + "us": 152.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 153.8, + "us": 152.6, "level": "n/a" }, "dump": { - "us": 159.7, + "us": 158.1, "level": "n/a" } } @@ -12799,19 +12799,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 450.9, + "us": 437.9, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 450.9, + "us": 437.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 450.9, + "us": 437.9, "level": "n/a" } } @@ -12819,19 +12819,19 @@ "yyjson": { "best": { "variant": "write", - "us": 217.8, + "us": 216.5, "level": "n/a" }, "best_any": { "variant": "write", - "us": 217.8, + "us": 216.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 217.8, + "us": 216.5, "level": "n/a" } } @@ -12839,19 +12839,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 388.9, + "us": 382.5, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 388.9, + "us": 382.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 388.9, + "us": 382.5, "level": "n/a" } } @@ -12859,19 +12859,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 627.2, + "us": 632.7, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 627.2, + "us": 632.7, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 627.2, + "us": 632.7, "level": "n/a" } } @@ -12879,19 +12879,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 223.8, + "us": 227.6, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 223.8, + "us": 227.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 223.8, + "us": 227.6, "level": "n/a" } } @@ -12899,23 +12899,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 399.1, + "us": 396.4, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 399.1, + "us": 396.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 399.1, + "us": 396.4, "level": "n/a" }, "generic (strict)": { - "us": 417.1, + "us": 413.0, "level": "n/a" } }, @@ -12927,19 +12927,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 478.5, + "us": 477.6, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 478.5, + "us": 477.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 478.5, + "us": 477.6, "level": "n/a" } } @@ -13009,23 +13009,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 278.6, + "us": 275.6, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 278.6, + "us": 275.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 278.6, + "us": 275.6, "level": "n/a" }, "dump": { - "us": 310.7, + "us": 278.8, "level": "n/a" } } @@ -13033,19 +13033,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 628.3, + "us": 598.6, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 628.3, + "us": 598.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 628.3, + "us": 598.6, "level": "n/a" } } @@ -13053,19 +13053,19 @@ "yyjson": { "best": { "variant": "write", - "us": 386.0, + "us": 367.3, "level": "n/a" }, "best_any": { "variant": "write", - "us": 386.0, + "us": 367.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 386.0, + "us": 367.3, "level": "n/a" } } @@ -13073,19 +13073,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 655.5, + "us": 661.2, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 655.5, + "us": 661.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 655.5, + "us": 661.2, "level": "n/a" } } @@ -13093,19 +13093,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 1008.0, + "us": 960.3, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 1008.0, + "us": 960.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 1008.0, + "us": 960.3, "level": "n/a" } } @@ -13113,43 +13113,43 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 474.9, + "us": 474.2, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 474.9, + "us": 474.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 474.9, + "us": 474.2, "level": "n/a" } } }, "Glaze": { "best": { - "variant": "generic", - "us": 748.2, + "variant": "generic (strict)", + "us": 725.4, "level": "n/a" }, "best_any": { - "variant": "generic", - "us": 748.2, + "variant": "generic (strict)", + "us": 725.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic": { - "us": 748.2, + "generic (strict)": { + "us": 725.4, "level": "n/a" }, - "generic (strict)": { - "us": 786.5, + "generic": { + "us": 737.1, "level": "n/a" } }, @@ -13161,19 +13161,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 916.0, + "us": 912.6, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 916.0, + "us": 912.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 916.0, + "us": 912.6, "level": "n/a" } } @@ -13243,23 +13243,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 989.1, + "us": 982.4, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 989.1, + "us": 982.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 989.1, + "us": 982.4, "level": "n/a" }, "dump": { - "us": 3714.5, + "us": 3637.0, "level": "n/a" } } @@ -13267,19 +13267,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 4506.5, + "us": 4458.4, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 4506.5, + "us": 4458.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 4506.5, + "us": 4458.4, "level": "n/a" } } @@ -13287,19 +13287,19 @@ "yyjson": { "best": { "variant": "write", - "us": 3476.1, + "us": 3365.8, "level": "n/a" }, "best_any": { "variant": "write", - "us": 3476.1, + "us": 3365.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 3476.1, + "us": 3365.8, "level": "n/a" } } @@ -13307,19 +13307,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 4895.9, + "us": 4787.2, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 4895.9, + "us": 4787.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 4895.9, + "us": 4787.2, "level": "n/a" } } @@ -13327,19 +13327,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 9596.0, + "us": 9388.2, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 9596.0, + "us": 9388.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 9596.0, + "us": 9388.2, "level": "n/a" } } @@ -13347,43 +13347,43 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 4850.4, + "us": 4766.1, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 4850.4, + "us": 4766.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 4850.4, + "us": 4766.1, "level": "n/a" } } }, "Glaze": { "best": { - "variant": "generic", - "us": 4220.3, + "variant": "generic (strict)", + "us": 4107.1, "level": "n/a" }, "best_any": { - "variant": "generic", - "us": 4220.3, + "variant": "generic (strict)", + "us": 4107.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic": { - "us": 4220.3, + "generic (strict)": { + "us": 4107.1, "level": "n/a" }, - "generic (strict)": { - "us": 4254.8, + "generic": { + "us": 4153.5, "level": "n/a" } }, @@ -13395,19 +13395,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 5614.9, + "us": 5610.3, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 5614.9, + "us": 5610.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 5614.9, + "us": 5610.3, "level": "n/a" } } @@ -13476,24 +13476,24 @@ "jeopardy": { "nlohmann json_document": { "best": { - "variant": "dump (source numbers)", - "us": 64301.4, + "variant": "dump", + "us": 67365.8, "level": "n/a" }, "best_any": { - "variant": "dump (source numbers)", - "us": 64301.4, + "variant": "dump", + "us": 67365.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "dump (source numbers)": { - "us": 64301.4, + "dump": { + "us": 67365.8, "level": "n/a" }, - "dump": { - "us": 67038.5, + "dump (source numbers)": { + "us": 67711.9, "level": "n/a" } } @@ -13501,19 +13501,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 116528.8, + "us": 116317.5, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 116528.8, + "us": 116317.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 116528.8, + "us": 116317.5, "level": "n/a" } } @@ -13521,19 +13521,19 @@ "yyjson": { "best": { "variant": "write", - "us": 71247.3, + "us": 73272.4, "level": "n/a" }, "best_any": { "variant": "write", - "us": 71247.3, + "us": 73272.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 71247.3, + "us": 73272.4, "level": "n/a" } } @@ -13541,19 +13541,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 157616.0, + "us": 162220.4, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 157616.0, + "us": 162220.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 157616.0, + "us": 162220.4, "level": "n/a" } } @@ -13561,19 +13561,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 123763.6, + "us": 127318.6, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 123763.6, + "us": 127318.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 123763.6, + "us": 127318.6, "level": "n/a" } } @@ -13581,19 +13581,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 65131.2, + "us": 66618.9, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 65131.2, + "us": 66618.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 65131.2, + "us": 66618.9, "level": "n/a" } } @@ -13601,23 +13601,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 128019.6, + "us": 132573.2, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 128019.6, + "us": 132573.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 128019.6, + "us": 132573.2, "level": "n/a" }, "generic (strict)": { - "us": 140059.9, + "us": 142984.1, "level": "n/a" } }, @@ -13629,19 +13629,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 141845.7, + "us": 141993.6, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 141845.7, + "us": 141993.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 141845.7, + "us": 141993.6, "level": "n/a" } } @@ -13735,19 +13735,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 2.0, + "us": 1.9, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 2.0, + "us": 1.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 2.0, + "us": 1.9, "level": "n/a" } } @@ -13795,19 +13795,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 3.7, + "us": 3.8, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 3.7, + "us": 3.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 3.7, + "us": 3.8, "level": "n/a" } } @@ -13835,23 +13835,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 2.0, + "us": 2.1, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 2.0, + "us": 2.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 2.0, + "us": 2.1, "level": "n/a" }, "generic (strict)": { - "us": 2.3, + "us": 2.2, "level": "n/a" } }, @@ -13863,19 +13863,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 2.5, + "us": 2.6, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 2.5, + "us": 2.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 2.5, + "us": 2.6, "level": "n/a" } } @@ -13945,23 +13945,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 148.8, + "us": 150.7, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 148.8, + "us": 150.7, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 148.8, + "us": 150.7, "level": "n/a" }, "dump": { - "us": 155.7, + "us": 154.2, "level": "n/a" } } @@ -13969,19 +13969,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 444.8, + "us": 446.7, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 444.8, + "us": 446.7, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 444.8, + "us": 446.7, "level": "n/a" } } @@ -13989,19 +13989,19 @@ "yyjson": { "best": { "variant": "write", - "us": 217.3, + "us": 219.3, "level": "n/a" }, "best_any": { "variant": "write", - "us": 217.3, + "us": 219.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 217.3, + "us": 219.3, "level": "n/a" } } @@ -14009,19 +14009,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 384.4, + "us": 386.9, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 384.4, + "us": 386.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 384.4, + "us": 386.9, "level": "n/a" } } @@ -14029,19 +14029,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 613.8, + "us": 620.1, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 613.8, + "us": 620.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 613.8, + "us": 620.1, "level": "n/a" } } @@ -14049,19 +14049,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 202.4, + "us": 204.4, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 202.4, + "us": 204.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 202.4, + "us": 204.4, "level": "n/a" } } @@ -14069,23 +14069,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 393.9, + "us": 404.9, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 393.9, + "us": 404.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 393.9, + "us": 404.9, "level": "n/a" }, "generic (strict)": { - "us": 413.9, + "us": 421.7, "level": "n/a" } }, @@ -14097,19 +14097,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 474.8, + "us": 491.6, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 474.8, + "us": 491.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 474.8, + "us": 491.6, "level": "n/a" } } @@ -14179,23 +14179,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 266.1, + "us": 264.5, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 266.1, + "us": 264.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 266.1, + "us": 264.5, "level": "n/a" }, "dump": { - "us": 272.1, + "us": 267.1, "level": "n/a" } } @@ -14203,19 +14203,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 635.3, + "us": 611.6, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 635.3, + "us": 611.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 635.3, + "us": 611.6, "level": "n/a" } } @@ -14223,19 +14223,19 @@ "yyjson": { "best": { "variant": "write", - "us": 363.4, + "us": 366.2, "level": "n/a" }, "best_any": { "variant": "write", - "us": 363.4, + "us": 366.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 363.4, + "us": 366.2, "level": "n/a" } } @@ -14243,19 +14243,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 670.2, + "us": 674.1, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 670.2, + "us": 674.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 670.2, + "us": 674.1, "level": "n/a" } } @@ -14263,19 +14263,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 967.6, + "us": 985.1, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 967.6, + "us": 985.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 967.6, + "us": 985.1, "level": "n/a" } } @@ -14283,43 +14283,43 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 478.8, + "us": 469.5, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 478.8, + "us": 469.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 478.8, + "us": 469.5, "level": "n/a" } } }, "Glaze": { "best": { - "variant": "generic (strict)", - "us": 753.3, + "variant": "generic", + "us": 756.5, "level": "n/a" }, "best_any": { - "variant": "generic (strict)", - "us": 753.3, + "variant": "generic", + "us": 756.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (strict)": { - "us": 753.3, + "generic": { + "us": 756.5, "level": "n/a" }, - "generic": { - "us": 785.5, + "generic (strict)": { + "us": 769.1, "level": "n/a" } }, @@ -14331,19 +14331,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 918.1, + "us": 947.3, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 918.1, + "us": 947.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 918.1, + "us": 947.3, "level": "n/a" } } diff --git a/docs/mkdocs/scripts/figures/data/perf_usecases_x86-gcc.json b/docs/mkdocs/scripts/figures/data/perf_usecases_x86-gcc.json index cbcb94d83..b50a67296 100644 --- a/docs/mkdocs/scripts/figures/data/perf_usecases_x86-gcc.json +++ b/docs/mkdocs/scripts/figures/data/perf_usecases_x86-gcc.json @@ -4,35 +4,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 258.1, + "us": 253.9, "level": "full" }, "best_any": { "variant": "accept", - "us": 258.1, + "us": 253.9, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 313.6, + "us": 306.6, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 313.6, + "us": 306.6, "level": "full" }, "variants": { "accept": { - "us": 258.1, + "us": 253.9, "level": "full" }, "read (reused)": { - "us": 313.6, + "us": 306.6, "level": "full" }, "parse": { - "us": 324.2, + "us": 312.8, "level": "full" } } @@ -40,23 +40,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 682.7, + "us": 369.9, "level": "full" }, "best_any": { "variant": "accept", - "us": 682.7, + "us": 369.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 682.7, + "us": 369.9, "level": "full" }, "parse": { - "us": 3479.3, + "us": 3025.5, "level": "full" } } @@ -64,43 +64,43 @@ "yyjson": { "best": { "variant": "read", - "us": 395.9, + "us": 392.9, "level": "full" }, "best_any": { "variant": "read", - "us": 395.9, + "us": 392.9, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 396.8, + "us": 421.2, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 396.8, + "us": 421.2, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 352.5, + "us": 352.3, "level": "full" }, "read": { - "us": 395.9, - "level": "full" - }, - "read (reused allocator)": { - "us": 396.8, + "us": 392.9, "level": "full" }, "insitu (copy)": { - "us": 398.8, + "us": 396.5, "level": "full" }, "read (raw numbers)": { - "us": 404.3, + "us": 397.2, + "level": "full" + }, + "read (reused allocator)": { + "us": 421.2, "level": "full" } } @@ -108,31 +108,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 301.2, + "us": 297.2, "level": "full" }, "best_any": { "variant": "DOM", - "us": 301.2, + "us": 297.2, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 301.1, + "us": 298.7, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 301.1, + "us": 298.7, "level": "full" }, "variants": { - "DOM (reused)": { - "us": 301.1, + "DOM": { + "us": 297.2, "level": "full" }, - "DOM": { - "us": 301.2, + "DOM (reused)": { + "us": 298.7, "level": "full" } } @@ -141,14 +141,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 402.8, + "us": 403.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 402.8, + "us": 403.5, "level": "no UTF-8" } } @@ -156,35 +156,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 712.4, + "us": 705.1, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 712.4, + "us": 705.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 712.4, - "level": "full" - }, - "generic (double, strict)": { - "us": 2356.2, + "us": 705.1, "level": "full" }, "generic (double)": { - "us": 2363.7, + "us": 2301.5, "level": "partial" }, + "generic (double, strict)": { + "us": 2304.7, + "level": "full" + }, "generic": { - "us": 2849.1, + "us": 2864.4, "level": "partial" }, "generic (strict)": { - "us": 2915.2, + "us": 2898.9, "level": "full" } } @@ -192,47 +192,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 690.5, + "us": 683.2, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 690.5, + "us": 683.2, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 697.5, + "us": 689.2, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 697.5, + "us": 689.2, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 690.5, + "us": 683.2, "level": "full" }, "SAX (reused)": { - "us": 697.5, + "us": 689.2, "level": "full" }, "SAX": { - "us": 734.3, - "level": "full" - }, - "parse": { - "us": 1282.5, + "us": 696.1, "level": "full" }, "parse (numbers: none)": { - "us": 1339.2, + "us": 1357.7, "level": "full" }, "parser (reused)": { - "us": 1363.9, + "us": 1366.0, + "level": "full" + }, + "parse": { + "us": 1392.0, "level": "full" } } @@ -240,95 +240,95 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1230.1, + "us": 1215.0, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1051.7, + "us": 1051.6, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1516.9, + "us": 1523.1, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1401.1, + "us": 1392.6, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1011.8, + "us": 1008.7, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1051.7, + "us": 1051.6, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 1120.8, + "us": 1123.9, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 1132.9, + "us": 1129.1, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1166.4, + "us": 1167.7, "level": "full" }, "insitu (copy)": { - "us": 1230.1, + "us": 1215.0, "level": "full" }, - "SAX (default precision) (no encoding check)": { + "SAX (no encoding check)": { "us": 1247.9, "level": "no UTF-8" }, - "SAX (no encoding check)": { - "us": 1252.0, + "SAX (default precision) (no encoding check)": { + "us": 1250.3, + "level": "no UTF-8" + }, + "SAX (raw numbers) (no encoding check)": { + "us": 1348.1, "level": "no UTF-8" }, "SAX (string stream, default precision)": { - "us": 1318.7, + "us": 1359.1, "level": "full" }, "SAX (string stream)": { - "us": 1324.7, + "us": 1379.6, "level": "full" }, - "SAX (raw numbers) (no encoding check)": { - "us": 1324.9, + "Document (reused allocator) (no encoding check)": { + "us": 1392.6, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1393.2, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 1401.1, + "us": 1407.2, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1516.9, + "us": 1523.1, "level": "full" }, "SAX (default precision)": { - "us": 1943.2, - "level": "full" - }, - "SAX (raw numbers)": { - "us": 2008.5, + "us": 1927.5, "level": "full" }, "SAX": { - "us": 2039.8, + "us": 1946.2, + "level": "full" + }, + "SAX (raw numbers)": { + "us": 2001.4, "level": "full" }, "Document": { - "us": 2195.1, + "us": 2127.4, "level": "full" } } @@ -426,35 +426,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 512.8, + "us": 515.4, "level": "full" }, "best_any": { "variant": "accept", - "us": 512.8, + "us": 515.4, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 827.6, + "us": 862.5, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 827.6, + "us": 862.5, "level": "full" }, "variants": { "accept": { - "us": 512.8, + "us": 515.4, "level": "full" }, "parse": { - "us": 821.9, + "us": 840.5, "level": "full" }, "read (reused)": { - "us": 827.6, + "us": 862.5, "level": "full" } } @@ -462,23 +462,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 1418.7, + "us": 883.4, "level": "full" }, "best_any": { "variant": "accept", - "us": 1418.7, + "us": 883.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 1418.7, + "us": 883.4, "level": "full" }, "parse": { - "us": 5293.3, + "us": 4511.9, "level": "full" } } @@ -486,43 +486,43 @@ "yyjson": { "best": { "variant": "read (raw numbers)", - "us": 940.0, + "us": 930.0, "level": "full" }, "best_any": { "variant": "read (raw numbers)", - "us": 940.0, + "us": 930.0, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 1001.1, + "us": 967.0, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1001.1, + "us": 967.0, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 837.2, + "us": 829.3, "level": "full" }, "read (raw numbers)": { - "us": 940.0, + "us": 930.0, "level": "full" }, "insitu (copy)": { - "us": 947.5, + "us": 939.5, "level": "full" }, "read": { - "us": 956.5, + "us": 946.2, "level": "full" }, "read (reused allocator)": { - "us": 1001.1, + "us": 967.0, "level": "full" } } @@ -530,31 +530,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 694.8, + "us": 686.7, "level": "full" }, "best_any": { "variant": "DOM", - "us": 694.8, + "us": 686.7, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 687.8, + "us": 685.4, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 687.8, + "us": 685.4, "level": "full" }, "variants": { "DOM (reused)": { - "us": 687.8, + "us": 685.4, "level": "full" }, "DOM": { - "us": 694.8, + "us": 686.7, "level": "full" } } @@ -563,14 +563,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 932.1, + "us": 922.9, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 932.1, + "us": 922.9, "level": "no UTF-8" } } @@ -578,35 +578,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 1982.9, + "us": 1970.7, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 1982.9, + "us": 1970.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 1982.9, + "us": 1970.7, "level": "full" }, "generic (double)": { - "us": 3997.4, + "us": 3802.1, "level": "partial" }, "generic (double, strict)": { - "us": 4043.9, + "us": 3829.2, "level": "full" }, "generic (strict)": { - "us": 5297.4, + "us": 5151.6, "level": "full" }, "generic": { - "us": 5360.0, + "us": 5230.4, "level": "partial" } } @@ -614,47 +614,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 917.3, + "us": 913.1, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 917.3, + "us": 913.1, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 951.1, + "us": 943.7, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 951.1, + "us": 943.7, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 917.3, + "us": 913.1, "level": "full" }, "SAX (reused)": { - "us": 951.1, + "us": 943.7, "level": "full" }, "SAX": { - "us": 971.1, + "us": 951.4, "level": "full" }, "parse (numbers: none)": { - "us": 1610.3, - "level": "full" - }, - "parse": { - "us": 1636.0, + "us": 1570.6, "level": "full" }, "parser (reused)": { - "us": 1637.0, + "us": 1621.1, + "level": "full" + }, + "parse": { + "us": 1626.1, "level": "full" } } @@ -662,95 +662,95 @@ "RapidJSON": { "best": { "variant": "SAX (string stream, default precision)", - "us": 1552.9, + "us": 1549.8, "level": "full" }, "best_any": { "variant": "SAX (default precision) (no encoding check)", - "us": 1433.7, + "us": 1427.0, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1993.2, + "us": 1888.5, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator) (no encoding check)", - "us": 1911.7, - "level": "no UTF-8" + "variant": "Document (reused allocator)", + "us": 1888.5, + "level": "full" }, "variants": { "SAX (default precision) (no encoding check)": { - "us": 1433.7, + "us": 1427.0, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 1471.0, + "us": 1496.6, "level": "no UTF-8" }, "SAX (string stream, default precision)": { - "us": 1552.9, + "us": 1549.8, "level": "full" }, - "SAX (string stream)": { - "us": 1605.2, - "level": "full" - }, - "SAX (no encoding check)": { - "us": 1609.4, - "level": "no UTF-8" - }, "SAX (string stream) (no encoding check)": { - "us": 1616.2, + "us": 1573.9, "level": "no UTF-8" }, + "SAX (no encoding check)": { + "us": 1589.7, + "level": "no UTF-8" + }, + "SAX (string stream)": { + "us": 1627.3, + "level": "full" + }, "insitu (copy untimed) (no encoding check)": { - "us": 1695.4, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 1766.6, + "us": 1635.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1790.7, + "us": 1681.5, "level": "full" }, - "SAX (default precision)": { - "us": 1861.2, - "level": "full" - }, - "SAX (raw numbers) (no encoding check)": { - "us": 1865.6, + "insitu (copy) (no encoding check)": { + "us": 1754.5, "level": "no UTF-8" }, "insitu (copy)": { - "us": 1895.8, + "us": 1783.5, "level": "full" }, - "Document (reused allocator) (no encoding check)": { - "us": 1911.7, - "level": "no UTF-8" + "SAX (default precision)": { + "us": 1840.7, + "level": "full" }, - "Document (no encoding check)": { - "us": 1913.1, + "SAX (raw numbers) (no encoding check)": { + "us": 1885.2, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1993.2, + "us": 1888.5, "level": "full" }, + "Document (no encoding check)": { + "us": 1888.9, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 1905.3, + "level": "no UTF-8" + }, "SAX": { - "us": 2082.3, - "level": "full" - }, - "Document": { - "us": 2302.9, + "us": 2003.2, "level": "full" }, "SAX (raw numbers)": { - "us": 2335.0, + "us": 2269.5, + "level": "full" + }, + "Document": { + "us": 2270.0, "level": "full" } } @@ -848,35 +848,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 934.3, + "us": 892.1, "level": "full" }, "best_any": { "variant": "accept", - "us": 934.3, + "us": 892.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 1367.1, + "us": 1306.2, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 1367.1, + "us": 1306.2, "level": "full" }, "variants": { "accept": { - "us": 934.3, - "level": "full" - }, - "parse": { - "us": 1354.7, + "us": 892.1, "level": "full" }, "read (reused)": { - "us": 1367.1, + "us": 1306.2, + "level": "full" + }, + "parse": { + "us": 1306.5, "level": "full" } } @@ -884,23 +884,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 4558.8, + "us": 2441.0, "level": "full" }, "best_any": { "variant": "accept", - "us": 4558.8, + "us": 2441.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 4558.8, + "us": 2441.0, "level": "full" }, "parse": { - "us": 11796.5, + "us": 9320.3, "level": "full" } } @@ -908,43 +908,43 @@ "yyjson": { "best": { "variant": "read (raw numbers)", - "us": 2199.0, + "us": 2140.1, "level": "full" }, "best_any": { "variant": "read (raw numbers)", - "us": 2199.0, + "us": 2140.1, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 3531.0, + "us": 3320.6, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 3531.0, + "us": 3320.6, "level": "full" }, "variants": { "read (raw numbers)": { - "us": 2199.0, + "us": 2140.1, "level": "full" }, "insitu (copy untimed)": { - "us": 3238.7, + "us": 3118.3, "level": "full" }, "insitu (copy)": { - "us": 3282.1, - "level": "full" - }, - "read": { - "us": 3439.1, + "us": 3274.3, "level": "full" }, "read (reused allocator)": { - "us": 3531.0, + "us": 3320.6, + "level": "full" + }, + "read": { + "us": 3332.8, "level": "full" } } @@ -952,31 +952,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 3336.7, + "us": 3164.8, "level": "full" }, "best_any": { "variant": "DOM", - "us": 3336.7, + "us": 3164.8, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 3354.2, + "us": 3197.8, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 3354.2, + "us": 3197.8, "level": "full" }, "variants": { "DOM": { - "us": 3336.7, + "us": 3164.8, "level": "full" }, "DOM (reused)": { - "us": 3354.2, + "us": 3197.8, "level": "full" } } @@ -985,14 +985,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3349.0, + "us": 3216.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3349.0, + "us": 3216.3, "level": "no UTF-8" } } @@ -1000,35 +1000,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 2625.2, + "us": 2532.5, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 2625.2, + "us": 2532.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 2625.2, + "us": 2532.5, "level": "full" }, "generic (double)": { - "us": 10379.7, + "us": 9550.6, "level": "partial" }, "generic (double, strict)": { - "us": 10379.9, + "us": 9824.7, "level": "full" }, "generic": { - "us": 17925.1, + "us": 16688.3, "level": "partial" }, "generic (strict)": { - "us": 18350.8, + "us": 17014.1, "level": "full" } } @@ -1036,47 +1036,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 1676.0, + "us": 1642.5, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 1676.0, + "us": 1642.5, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 5755.4, + "us": 5520.5, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 5755.4, + "us": 5520.5, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 1676.0, + "us": 1642.5, "level": "full" }, "parse (numbers: none)": { - "us": 3045.3, - "level": "full" - }, - "SAX": { - "us": 5674.9, + "us": 2931.1, "level": "full" }, "SAX (reused)": { - "us": 5755.4, + "us": 5520.5, + "level": "full" + }, + "SAX": { + "us": 5563.2, "level": "full" }, "parser (reused)": { - "us": 7024.6, + "us": 6647.7, "level": "full" }, "parse": { - "us": 7050.3, + "us": 6759.2, "level": "full" } } @@ -1084,95 +1084,95 @@ "RapidJSON": { "best": { "variant": "SAX (string stream, default precision)", - "us": 3875.2, + "us": 3624.7, "level": "full" }, "best_any": { "variant": "SAX (string stream, default precision)", - "us": 3875.2, + "us": 3624.7, "level": "full" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 11932.5, + "us": 11967.1, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 11932.5, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 11892.6, + "level": "no UTF-8" }, "variants": { "SAX (string stream, default precision)": { - "us": 3875.2, + "us": 3624.7, "level": "full" }, "SAX (string stream, default precision) (no encoding check)": { - "us": 3909.8, - "level": "no UTF-8" - }, - "SAX (default precision) (no encoding check)": { - "us": 4364.7, + "us": 3629.2, "level": "no UTF-8" }, "SAX (default precision)": { - "us": 4522.5, + "us": 4310.0, "level": "full" }, + "SAX (default precision) (no encoding check)": { + "us": 4353.8, + "level": "no UTF-8" + }, "SAX (string stream) (no encoding check)": { - "us": 9361.8, + "us": 9133.5, "level": "no UTF-8" }, "SAX (string stream)": { - "us": 9682.3, + "us": 9150.6, "level": "full" }, "insitu (copy untimed)": { - "us": 10216.5, + "us": 9924.8, "level": "full" }, - "insitu (copy untimed) (no encoding check)": { - "us": 10385.2, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 10498.8, - "level": "no UTF-8" - }, "insitu (copy)": { - "us": 10675.1, + "us": 10078.7, "level": "full" }, + "insitu (copy) (no encoding check)": { + "us": 10263.1, + "level": "no UTF-8" + }, + "insitu (copy untimed) (no encoding check)": { + "us": 10263.3, + "level": "no UTF-8" + }, "SAX (raw numbers) (no encoding check)": { - "us": 10929.3, + "us": 10350.4, "level": "no UTF-8" }, "SAX (raw numbers)": { - "us": 11335.1, - "level": "full" - }, - "SAX": { - "us": 11351.6, + "us": 10403.6, "level": "full" }, "SAX (no encoding check)": { - "us": 11634.9, + "us": 10558.2, "level": "no UTF-8" }, - "Document (reused allocator)": { - "us": 11932.5, + "SAX": { + "us": 10756.1, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 12244.9, + "us": 11892.6, "level": "no UTF-8" }, + "Document (reused allocator)": { + "us": 11967.1, + "level": "full" + }, "Document": { - "us": 12311.1, + "us": 12030.4, "level": "full" }, "Document (no encoding check)": { - "us": 12870.4, + "us": 12073.4, "level": "no UTF-8" } } @@ -1270,35 +1270,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 34514.4, + "us": 33005.7, "level": "full" }, "best_any": { "variant": "accept", - "us": 34514.4, + "us": 33005.7, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 42941.5, + "us": 41211.5, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 42941.5, + "us": 41211.5, "level": "full" }, "variants": { "accept": { - "us": 34514.4, + "us": 33005.7, "level": "full" }, "read (reused)": { - "us": 42941.5, + "us": 41211.5, "level": "full" }, "parse": { - "us": 80105.0, + "us": 76844.0, "level": "full" } } @@ -1306,23 +1306,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 74331.3, + "us": 39141.6, "level": "full" }, "best_any": { "variant": "accept", - "us": 74331.3, + "us": 39141.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 74331.3, + "us": 39141.6, "level": "full" }, "parse": { - "us": 381484.0, + "us": 320505.6, "level": "full" } } @@ -1330,43 +1330,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 130541.4, + "us": 122230.5, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 130541.4, + "us": 122230.5, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 65147.4, + "us": 61497.2, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 65147.4, + "us": 61497.2, "level": "full" }, "variants": { "read (reused allocator)": { - "us": 65147.4, + "us": 61497.2, "level": "full" }, "insitu (copy untimed)": { - "us": 93043.0, + "us": 83859.7, "level": "full" }, "insitu (copy)": { - "us": 130541.4, + "us": 122230.5, "level": "full" }, "read": { - "us": 135114.5, + "us": 125363.3, "level": "full" }, "read (raw numbers)": { - "us": 137990.8, + "us": 126182.7, "level": "full" } } @@ -1374,31 +1374,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 120981.8, + "us": 111630.6, "level": "full" }, "best_any": { "variant": "DOM", - "us": 120981.8, + "us": 111630.6, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 48708.1, + "us": 48124.1, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 48708.1, + "us": 48124.1, "level": "full" }, "variants": { "DOM (reused)": { - "us": 48708.1, + "us": 48124.1, "level": "full" }, "DOM": { - "us": 120981.8, + "us": 111630.6, "level": "full" } } @@ -1407,14 +1407,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 98510.6, + "us": 93142.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 98510.6, + "us": 93142.0, "level": "no UTF-8" } } @@ -1422,35 +1422,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 76758.9, + "us": 74805.1, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 76758.9, + "us": 74805.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 76758.9, + "us": 74805.1, + "level": "full" + }, + "generic (double, strict)": { + "us": 211967.0, "level": "full" }, "generic (double)": { - "us": 227348.8, + "us": 219883.4, "level": "partial" }, - "generic (double, strict)": { - "us": 231309.1, - "level": "full" - }, "generic": { - "us": 301949.1, + "us": 290823.8, "level": "partial" }, "generic (strict)": { - "us": 316773.4, + "us": 303622.6, "level": "full" } } @@ -1458,47 +1458,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 62780.9, + "us": 57932.0, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 62780.9, + "us": 57932.0, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 62485.1, + "us": 58259.0, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 62485.1, + "us": 58259.0, "level": "full" }, "variants": { - "SAX (reused)": { - "us": 62485.1, + "SAX (numbers: none)": { + "us": 57932.0, "level": "full" }, - "SAX (numbers: none)": { - "us": 62780.9, + "SAX (reused)": { + "us": 58259.0, "level": "full" }, "SAX": { - "us": 65009.7, + "us": 60164.9, "level": "full" }, "parser (reused)": { - "us": 127335.3, - "level": "full" - }, - "parse": { - "us": 181460.1, + "us": 119710.1, "level": "full" }, "parse (numbers: none)": { - "us": 185393.2, + "us": 174389.4, + "level": "full" + }, + "parse": { + "us": 179324.5, "level": "full" } } @@ -1506,95 +1506,95 @@ "RapidJSON": { "best": { "variant": "SAX (string stream, default precision)", - "us": 124439.7, + "us": 125139.4, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 115815.1, + "us": 104342.4, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 188950.8, + "us": 176563.3, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 179981.0, + "us": 168096.0, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 102634.9, + "us": 99871.5, + "level": "no UTF-8" + }, + "SAX (string stream) (no encoding check)": { + "us": 104342.4, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 114703.8, + "us": 108211.0, "level": "full" }, - "SAX (string stream) (no encoding check)": { - "us": 115815.1, - "level": "no UTF-8" - }, "SAX (string stream, default precision) (no encoding check)": { - "us": 119164.9, + "us": 108714.2, "level": "no UTF-8" }, "SAX (string stream, default precision)": { - "us": 124439.7, + "us": 125139.4, "level": "full" }, "SAX (string stream)": { - "us": 134338.3, + "us": 126476.1, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 146440.1, + "us": 138968.9, "level": "no UTF-8" }, - "insitu (copy)": { - "us": 157490.4, - "level": "full" - }, "SAX (no encoding check)": { - "us": 161291.9, - "level": "no UTF-8" - }, - "SAX (raw numbers) (no encoding check)": { - "us": 161993.3, + "us": 147387.4, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 164699.2, + "us": 150224.2, + "level": "no UTF-8" + }, + "insitu (copy)": { + "us": 151806.0, + "level": "full" + }, + "SAX (raw numbers) (no encoding check)": { + "us": 153223.8, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 179981.0, + "us": 168096.0, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 184784.0, + "us": 174467.2, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 188950.8, - "level": "full" - }, - "SAX (raw numbers)": { - "us": 240366.9, + "us": 176563.3, "level": "full" }, "SAX": { - "us": 246653.0, + "us": 232949.6, "level": "full" }, "SAX (default precision)": { - "us": 260697.4, + "us": 236135.2, + "level": "full" + }, + "SAX (raw numbers)": { + "us": 241826.8, "level": "full" }, "Document": { - "us": 273829.6, + "us": 255619.9, "level": "full" } } @@ -1728,23 +1728,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 3.1, + "us": 1.3, "level": "full" }, "best_any": { "variant": "accept", - "us": 3.1, + "us": 1.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 3.1, + "us": 1.3, "level": "full" }, "parse": { - "us": 18.1, + "us": 14.7, "level": "full" } } @@ -1860,19 +1860,19 @@ "level": "full" }, "generic (double)": { - "us": 8.1, + "us": 7.9, "level": "partial" }, "generic (double, strict)": { - "us": 8.5, + "us": 7.9, "level": "full" }, "generic": { - "us": 11.4, + "us": 11.1, "level": "partial" }, "generic (strict)": { - "us": 11.4, + "us": 11.1, "level": "full" } } @@ -1912,7 +1912,7 @@ "level": "full" }, "parser (reused)": { - "us": 5.8, + "us": 5.7, "level": "full" }, "parse": { @@ -1932,7 +1932,7 @@ "level": "full" }, "best_any": { - "variant": "SAX (string stream, default precision) (no encoding check)", + "variant": "SAX (string stream) (no encoding check)", "us": 3.2, "level": "no UTF-8" }, @@ -1951,7 +1951,7 @@ "us": 3.2, "level": "no UTF-8" }, - "SAX (string stream, default precision) (no encoding check)": { + "SAX (string stream) (no encoding check)": { "us": 3.2, "level": "no UTF-8" }, @@ -1959,7 +1959,7 @@ "us": 3.3, "level": "no UTF-8" }, - "SAX (string stream) (no encoding check)": { + "SAX (string stream, default precision) (no encoding check)": { "us": 3.3, "level": "no UTF-8" }, @@ -1971,24 +1971,24 @@ "us": 4.9, "level": "full" }, - "SAX (string stream, default precision)": { - "us": 5.3, - "level": "full" - }, "SAX (string stream)": { "us": 5.4, "level": "full" }, + "SAX (string stream, default precision)": { + "us": 5.4, + "level": "full" + }, "SAX (no encoding check)": { - "us": 6.3, + "us": 6.2, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 6.3, + "us": 6.2, "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 6.7, + "us": 6.6, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { @@ -2003,6 +2003,10 @@ "us": 7.5, "level": "full" }, + "SAX": { + "us": 10.2, + "level": "full" + }, "SAX (default precision)": { "us": 10.2, "level": "full" @@ -2011,12 +2015,8 @@ "us": 10.5, "level": "full" }, - "SAX": { - "us": 10.6, - "level": "full" - }, "Document": { - "us": 11.5, + "us": 11.3, "level": "full" } } @@ -2114,35 +2114,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 212.4, + "us": 221.2, "level": "full" }, "best_any": { "variant": "accept", - "us": 212.4, + "us": 221.2, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 259.4, + "us": 253.7, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 259.4, + "us": 253.7, "level": "full" }, "variants": { "accept": { - "us": 212.4, + "us": 221.2, "level": "full" }, "read (reused)": { - "us": 259.4, + "us": 253.7, "level": "full" }, "parse": { - "us": 265.6, + "us": 261.7, "level": "full" } } @@ -2150,23 +2150,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 546.2, + "us": 250.0, "level": "full" }, "best_any": { "variant": "accept", - "us": 546.2, + "us": 250.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 546.2, + "us": 250.0, "level": "full" }, "parse": { - "us": 3115.1, + "us": 3100.2, "level": "full" } } @@ -2174,43 +2174,43 @@ "yyjson": { "best": { "variant": "read", - "us": 321.6, + "us": 325.3, "level": "full" }, "best_any": { "variant": "read", - "us": 321.6, + "us": 325.3, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 320.4, + "us": 336.1, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 320.4, + "us": 336.1, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 286.7, - "level": "full" - }, - "read (reused allocator)": { - "us": 320.4, + "us": 293.0, "level": "full" }, "read": { - "us": 321.6, + "us": 325.3, + "level": "full" + }, + "read (reused allocator)": { + "us": 336.1, "level": "full" }, "insitu (copy)": { - "us": 321.8, + "us": 340.4, "level": "full" }, "read (raw numbers)": { - "us": 326.2, + "us": 352.7, "level": "full" } } @@ -2218,31 +2218,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 281.4, + "us": 304.0, "level": "full" }, "best_any": { "variant": "DOM", - "us": 281.4, + "us": 304.0, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 280.4, + "us": 286.3, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 280.4, + "us": 286.3, "level": "full" }, "variants": { "DOM (reused)": { - "us": 280.4, + "us": 286.3, "level": "full" }, "DOM": { - "us": 281.4, + "us": 304.0, "level": "full" } } @@ -2251,14 +2251,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 297.2, + "us": 319.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 297.2, + "us": 319.3, "level": "no UTF-8" } } @@ -2266,83 +2266,83 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 509.1, + "us": 509.3, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 509.1, + "us": 509.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 509.1, + "us": 509.3, + "level": "full" + }, + "generic (double, strict)": { + "us": 2021.5, "level": "full" }, "generic (double)": { - "us": 2016.1, - "level": "partial" - }, - "generic (double, strict)": { - "us": 2035.9, - "level": "full" - }, - "generic": { - "us": 2570.7, + "us": 2165.0, "level": "partial" }, "generic (strict)": { - "us": 2581.7, + "us": 2654.7, "level": "full" + }, + "generic": { + "us": 2760.2, + "level": "partial" } } }, "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 545.9, + "us": 553.7, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 545.9, + "us": 553.7, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 554.5, + "us": 551.2, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 554.5, + "us": 551.2, "level": "full" }, "variants": { + "SAX (reused)": { + "us": 551.2, + "level": "full" + }, "SAX (numbers: none)": { - "us": 545.9, + "us": 553.7, "level": "full" }, "SAX": { - "us": 554.2, - "level": "full" - }, - "SAX (reused)": { - "us": 554.5, - "level": "full" - }, - "parse (numbers: none)": { - "us": 1165.7, + "us": 564.2, "level": "full" }, "parser (reused)": { - "us": 1173.9, + "us": 1185.7, + "level": "full" + }, + "parse (numbers: none)": { + "us": 1257.9, "level": "full" }, "parse": { - "us": 1178.1, + "us": 1313.5, "level": "full" } } @@ -2350,95 +2350,95 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 855.8, + "us": 863.3, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 767.8, + "us": 813.1, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1436.1, + "us": 1486.3, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1310.4, + "us": 1400.7, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 736.1, + "us": 784.9, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 767.8, + "us": 813.1, "level": "no UTF-8" }, - "insitu (copy untimed)": { - "us": 825.3, - "level": "full" - }, "insitu (copy)": { - "us": 855.8, + "us": 863.3, "level": "full" }, - "SAX (string stream, default precision) (no encoding check)": { - "us": 860.7, - "level": "no UTF-8" + "insitu (copy untimed)": { + "us": 884.3, + "level": "full" }, "SAX (string stream) (no encoding check)": { - "us": 863.5, + "us": 915.3, + "level": "no UTF-8" + }, + "SAX (string stream, default precision) (no encoding check)": { + "us": 928.4, "level": "no UTF-8" }, "SAX (string stream, default precision)": { - "us": 1010.5, + "us": 1105.9, "level": "full" }, "SAX (string stream)": { - "us": 1015.4, + "us": 1112.1, "level": "full" }, - "SAX (default precision) (no encoding check)": { - "us": 1147.4, + "SAX (no encoding check)": { + "us": 1208.6, "level": "no UTF-8" }, - "SAX (no encoding check)": { - "us": 1162.1, + "SAX (default precision) (no encoding check)": { + "us": 1224.9, "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 1204.9, + "us": 1234.3, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1310.4, + "us": 1400.7, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1327.2, + "us": 1422.7, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1436.1, + "us": 1486.3, "level": "full" }, "SAX (default precision)": { - "us": 1828.7, + "us": 1918.6, "level": "full" }, "SAX": { - "us": 1837.2, - "level": "full" - }, - "SAX (raw numbers)": { - "us": 1881.4, + "us": 1957.9, "level": "full" }, "Document": { - "us": 2015.1, + "us": 2041.4, + "level": "full" + }, + "SAX (raw numbers)": { + "us": 2059.5, "level": "full" } } @@ -2536,35 +2536,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 302.9, + "us": 308.9, "level": "full" }, "best_any": { "variant": "accept", - "us": 302.9, + "us": 308.9, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 514.3, + "us": 511.0, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 514.3, + "us": 511.0, "level": "full" }, "variants": { "accept": { - "us": 302.9, + "us": 308.9, "level": "full" }, "read (reused)": { - "us": 514.3, + "us": 511.0, "level": "full" }, "parse": { - "us": 514.7, + "us": 511.7, "level": "full" } } @@ -2572,67 +2572,67 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 1087.2, + "us": 451.3, "level": "full" }, "best_any": { "variant": "accept", - "us": 1087.2, + "us": 451.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 1087.2, + "us": 451.3, "level": "full" }, "parse": { - "us": 4796.0, + "us": 3974.1, "level": "full" } } }, "yyjson": { "best": { - "variant": "read", - "us": 490.0, + "variant": "insitu (copy)", + "us": 489.1, "level": "full" }, "best_any": { - "variant": "read", - "us": 490.0, + "variant": "insitu (copy)", + "us": 489.1, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 488.4, + "us": 489.0, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 488.4, + "us": 489.0, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 454.8, + "us": 453.3, "level": "full" }, "read (reused allocator)": { - "us": 488.4, - "level": "full" - }, - "read": { - "us": 490.0, + "us": 489.0, "level": "full" }, "insitu (copy)": { - "us": 490.7, + "us": 489.1, + "level": "full" + }, + "read": { + "us": 493.9, "level": "full" }, "read (raw numbers)": { - "us": 504.2, + "us": 504.4, "level": "full" } } @@ -2640,31 +2640,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 534.4, + "us": 534.5, "level": "full" }, "best_any": { "variant": "DOM", - "us": 534.4, + "us": 534.5, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 535.9, + "us": 535.2, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 535.9, + "us": 535.2, "level": "full" }, "variants": { "DOM": { - "us": 534.4, + "us": 534.5, "level": "full" }, "DOM (reused)": { - "us": 535.9, + "us": 535.2, "level": "full" } } @@ -2673,14 +2673,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 600.8, + "us": 601.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 600.8, + "us": 601.7, "level": "no UTF-8" } } @@ -2688,35 +2688,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 751.0, + "us": 757.9, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 751.0, + "us": 757.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 751.0, + "us": 757.9, + "level": "full" + }, + "generic (double, strict)": { + "us": 2937.6, "level": "full" }, "generic (double)": { - "us": 2950.5, + "us": 2947.6, "level": "partial" }, - "generic (double, strict)": { - "us": 3010.4, - "level": "full" - }, "generic": { - "us": 4339.4, + "us": 4347.6, "level": "partial" }, "generic (strict)": { - "us": 4381.5, + "us": 4359.3, "level": "full" } } @@ -2724,47 +2724,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 561.6, + "us": 561.4, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 561.6, + "us": 561.4, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 608.6, + "us": 609.4, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 608.6, + "us": 609.4, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 561.6, + "us": 561.4, "level": "full" }, "SAX": { - "us": 608.4, + "us": 608.8, "level": "full" }, "SAX (reused)": { - "us": 608.6, + "us": 609.4, "level": "full" }, "parse (numbers: none)": { - "us": 1264.8, + "us": 1294.2, "level": "full" }, "parser (reused)": { - "us": 1342.7, + "us": 1347.3, "level": "full" }, "parse": { - "us": 1346.4, + "us": 1374.0, "level": "full" } } @@ -2772,95 +2772,95 @@ "RapidJSON": { "best": { "variant": "SAX (string stream, default precision)", - "us": 987.4, + "us": 1019.5, "level": "full" }, "best_any": { "variant": "SAX (string stream, default precision) (no encoding check)", - "us": 984.8, + "us": 1008.1, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1681.6, + "us": 1687.3, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator)", - "us": 1681.6, + "us": 1687.3, "level": "full" }, "variants": { "SAX (string stream, default precision) (no encoding check)": { - "us": 984.8, + "us": 1008.1, "level": "no UTF-8" }, "SAX (string stream, default precision)": { - "us": 987.4, - "level": "full" - }, - "SAX (string stream)": { - "us": 1105.3, + "us": 1019.5, "level": "full" }, "SAX (string stream) (no encoding check)": { - "us": 1106.7, + "us": 1100.5, "level": "no UTF-8" }, + "SAX (string stream)": { + "us": 1108.0, + "level": "full" + }, "SAX (default precision) (no encoding check)": { - "us": 1141.4, + "us": 1145.4, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1144.1, + "us": 1154.5, "level": "full" }, "insitu (copy untimed) (no encoding check)": { - "us": 1176.4, + "us": 1180.2, "level": "no UTF-8" }, "insitu (copy)": { - "us": 1180.5, + "us": 1186.9, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 1210.5, + "us": 1221.7, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1320.6, - "level": "no UTF-8" - }, - "SAX (raw numbers) (no encoding check)": { - "us": 1558.3, + "us": 1292.2, "level": "no UTF-8" }, "SAX (default precision)": { - "us": 1561.2, + "us": 1549.9, "level": "full" }, + "SAX (raw numbers) (no encoding check)": { + "us": 1580.0, + "level": "no UTF-8" + }, "Document (no encoding check)": { - "us": 1657.2, + "us": 1678.2, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1681.6, + "us": 1687.3, "level": "full" }, "SAX": { - "us": 1701.5, + "us": 1699.7, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 1738.6, + "us": 1721.2, "level": "no UTF-8" }, "SAX (raw numbers)": { - "us": 1990.6, + "us": 1999.6, "level": "full" }, "Document": { - "us": 2109.5, + "us": 2109.1, "level": "full" } } @@ -2960,35 +2960,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 397.9, + "us": 384.1, "level": "full" }, "best_any": { "variant": "parse", - "us": 397.9, + "us": 384.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 387.6, + "us": 375.7, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 387.6, + "us": 375.7, "level": "full" }, "variants": { "read (reused)": { - "us": 387.6, + "us": 375.7, "level": "full" }, "parse": { - "us": 397.9, + "us": 384.1, "level": "full" }, "parse_copy": { - "us": 428.2, + "us": 421.0, "level": "full" } } @@ -2996,63 +2996,63 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 813.7, + "us": 532.8, "level": "full" }, "best_any": { "variant": "sax", - "us": 813.7, + "us": 532.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 813.7, + "us": 532.8, "level": "full" }, "parse": { - "us": 3499.0, + "us": 3091.3, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 444.7, + "variant": "read", + "us": 445.0, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 444.7, + "variant": "read", + "us": 445.0, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 446.2, + "us": 443.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 446.2, + "us": 443.3, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 415.0, - "level": "full" - }, - "insitu (copy)": { - "us": 444.7, + "us": 409.9, "level": "full" }, "read (reused allocator)": { - "us": 446.2, + "us": 443.3, "level": "full" }, "read": { - "us": 446.4, + "us": 445.0, + "level": "full" + }, + "insitu (copy)": { + "us": 447.3, "level": "full" } } @@ -3060,39 +3060,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 347.8, + "us": 343.9, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 347.8, + "us": 343.9, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 346.2, + "us": 344.3, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 346.2, + "us": 344.3, "level": "full" }, "variants": { - "On-Demand (reused)": { - "us": 346.2, - "level": "full" - }, "On-Demand": { - "us": 347.8, + "us": 343.9, "level": "full" }, - "DOM (reused)": { - "us": 376.6, + "On-Demand (reused)": { + "us": 344.3, "level": "full" }, "DOM": { - "us": 379.1, + "us": 377.7, + "level": "full" + }, + "DOM (reused)": { + "us": 378.0, "level": "full" } } @@ -3101,14 +3101,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 455.8, + "us": 457.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 455.8, + "us": 457.6, "level": "no UTF-8" } } @@ -3116,35 +3116,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 2482.6, + "us": 2317.3, "level": "full" }, "best_any": { - "variant": "generic (double)", - "us": 2447.6, - "level": "partial" + "variant": "generic (double, strict)", + "us": 2317.3, + "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (double)": { - "us": 2447.6, - "level": "partial" - }, "generic (double, strict)": { - "us": 2482.6, + "us": 2317.3, "level": "full" }, - "generic (strict)": { - "us": 2905.9, - "level": "full" + "generic (double)": { + "us": 2322.3, + "level": "partial" }, "generic": { - "us": 2908.2, + "us": 2846.0, "level": "partial" }, + "generic (strict)": { + "us": 2870.8, + "level": "full" + }, "lazy_json": { - "us": 3130.7, + "us": 3096.8, "level": "partial" } }, @@ -3155,39 +3155,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 698.9, + "us": 690.5, "level": "full" }, "best_any": { "variant": "SAX", - "us": 698.9, + "us": 690.5, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 699.0, + "us": 690.6, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 699.0, + "us": 690.6, "level": "full" }, "variants": { "SAX": { - "us": 698.9, + "us": 690.5, "level": "full" }, "SAX (reused)": { - "us": 699.0, + "us": 690.6, "level": "full" }, "parser (reused)": { - "us": 1341.5, + "us": 1351.2, "level": "full" }, "parse": { - "us": 1350.5, + "us": 1361.3, "level": "full" } } @@ -3195,71 +3195,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1258.1, + "us": 1256.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1101.1, + "us": 1099.0, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1576.2, + "us": 1573.8, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1447.8, + "us": 1450.9, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1063.0, + "us": 1060.8, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1101.1, + "us": 1099.0, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 1172.5, + "us": 1147.3, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1221.4, + "us": 1219.6, "level": "full" }, "insitu (copy)": { - "us": 1258.1, + "us": 1256.1, "level": "full" }, "SAX (no encoding check)": { - "us": 1280.9, + "us": 1284.2, "level": "no UTF-8" }, "SAX (string stream)": { - "us": 1382.1, + "us": 1401.8, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 1447.8, + "us": 1450.9, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1453.6, + "us": 1465.1, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1576.2, + "us": 1573.8, "level": "full" }, "SAX": { - "us": 1988.6, + "us": 1987.1, "level": "full" }, "Document": { - "us": 2166.2, + "us": 2143.1, "level": "full" } } @@ -3353,35 +3353,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 972.5, + "us": 1066.3, "level": "full" }, "best_any": { "variant": "parse", - "us": 972.5, + "us": 1066.3, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 958.6, + "us": 1061.8, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 958.6, + "us": 1061.8, "level": "full" }, "variants": { "read (reused)": { - "us": 958.6, + "us": 1061.8, "level": "full" }, "parse": { - "us": 972.5, + "us": 1066.3, "level": "full" }, "parse_copy": { - "us": 1118.3, + "us": 1182.2, "level": "full" } } @@ -3389,23 +3389,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 1665.5, + "us": 1112.9, "level": "full" }, "best_any": { "variant": "sax", - "us": 1665.5, + "us": 1112.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 1665.5, + "us": 1112.9, "level": "full" }, "parse": { - "us": 5466.4, + "us": 4769.7, "level": "full" } } @@ -3413,39 +3413,39 @@ "yyjson": { "best": { "variant": "read", - "us": 1097.5, + "us": 1093.3, "level": "full" }, "best_any": { "variant": "read", - "us": 1097.5, + "us": 1093.3, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 1113.4, + "us": 1107.5, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1113.4, + "us": 1107.5, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 986.3, + "us": 984.2, "level": "full" }, "read": { - "us": 1097.5, + "us": 1093.3, "level": "full" }, "insitu (copy)": { - "us": 1098.8, + "us": 1096.1, "level": "full" }, "read (reused allocator)": { - "us": 1113.4, + "us": 1107.5, "level": "full" } } @@ -3453,39 +3453,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 804.7, + "us": 809.2, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 804.7, + "us": 809.2, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 803.2, + "us": 802.8, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 803.2, + "us": 802.8, "level": "full" }, "variants": { "On-Demand (reused)": { - "us": 803.2, + "us": 802.8, "level": "full" }, "On-Demand": { - "us": 804.7, + "us": 809.2, "level": "full" }, "DOM (reused)": { - "us": 900.1, + "us": 904.1, "level": "full" }, "DOM": { - "us": 906.4, + "us": 908.1, "level": "full" } } @@ -3494,14 +3494,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1114.9, + "us": 1120.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1114.9, + "us": 1120.2, "level": "no UTF-8" } } @@ -3509,35 +3509,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 4413.4, + "us": 4068.4, "level": "full" }, "best_any": { - "variant": "generic (double, strict)", - "us": 4413.4, - "level": "full" + "variant": "generic (double)", + "us": 4006.4, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (double, strict)": { - "us": 4413.4, - "level": "full" - }, "generic (double)": { - "us": 4452.0, + "us": 4006.4, "level": "partial" }, + "generic (double, strict)": { + "us": 4068.4, + "level": "full" + }, "generic (strict)": { - "us": 5334.6, + "us": 5338.7, "level": "full" }, "generic": { - "us": 5369.4, + "us": 5464.8, "level": "partial" }, "lazy_json": { - "us": 14119.5, + "us": 13799.4, "level": "partial" } }, @@ -3548,39 +3548,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 957.0, + "us": 956.3, "level": "full" }, "best_any": { "variant": "SAX", - "us": 957.0, + "us": 956.3, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 958.1, + "us": 959.8, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 958.1, + "us": 959.8, "level": "full" }, "variants": { "SAX": { - "us": 957.0, + "us": 956.3, "level": "full" }, "SAX (reused)": { - "us": 958.1, - "level": "full" - }, - "parser (reused)": { - "us": 1788.9, + "us": 959.8, "level": "full" }, "parse": { - "us": 1789.0, + "us": 1781.7, + "level": "full" + }, + "parser (reused)": { + "us": 1784.8, "level": "full" } } @@ -3588,71 +3588,71 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 1717.2, + "us": 1713.0, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 1635.2, + "us": 1635.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2062.7, + "us": 2040.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator)", - "us": 2062.7, + "us": 2040.6, "level": "full" }, "variants": { "SAX (string stream) (no encoding check)": { - "us": 1635.2, + "us": 1635.3, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1688.3, + "us": 1707.2, "level": "no UTF-8" }, "SAX (string stream)": { - "us": 1717.2, + "us": 1713.0, "level": "full" }, "insitu (copy untimed) (no encoding check)": { - "us": 1798.7, + "us": 1791.9, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1837.9, + "us": 1830.0, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 1906.9, + "us": 1949.1, "level": "no UTF-8" }, "insitu (copy)": { - "us": 1948.8, + "us": 1983.5, + "level": "full" + }, + "Document (reused allocator)": { + "us": 2040.6, "level": "full" }, "Document (no encoding check)": { - "us": 2013.3, + "us": 2043.0, "level": "no UTF-8" }, - "Document (reused allocator)": { - "us": 2062.7, - "level": "full" - }, "Document (reused allocator) (no encoding check)": { - "us": 2068.0, + "us": 2080.7, "level": "no UTF-8" }, "SAX": { - "us": 2112.1, + "us": 2110.0, "level": "full" }, "Document": { - "us": 2426.5, + "us": 2418.1, "level": "full" } } @@ -3746,35 +3746,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 3500.6, + "us": 3525.9, "level": "full" }, "best_any": { "variant": "parse", - "us": 3500.6, + "us": 3525.9, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 3522.2, + "us": 3524.3, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 3522.2, + "us": 3524.3, "level": "full" }, "variants": { - "parse": { - "us": 3500.6, + "read (reused)": { + "us": 3524.3, "level": "full" }, - "read (reused)": { - "us": 3522.2, + "parse": { + "us": 3525.9, "level": "full" }, "parse_copy": { - "us": 3695.6, + "us": 3724.5, "level": "full" } } @@ -3782,63 +3782,63 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 5690.0, + "us": 4134.3, "level": "full" }, "best_any": { "variant": "sax", - "us": 5690.0, + "us": 4134.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 5690.0, + "us": 4134.3, "level": "full" }, "parse": { - "us": 12161.6, + "us": 10141.9, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 4034.8, + "variant": "read", + "us": 3948.5, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 4034.8, + "variant": "read", + "us": 3948.5, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 3945.9, + "us": 3952.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 3945.9, + "us": 3952.3, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 3817.6, - "level": "full" - }, - "read (reused allocator)": { - "us": 3945.9, - "level": "full" - }, - "insitu (copy)": { - "us": 4034.8, + "us": 3885.5, "level": "full" }, "read": { - "us": 4050.5, + "us": 3948.5, + "level": "full" + }, + "read (reused allocator)": { + "us": 3952.3, + "level": "full" + }, + "insitu (copy)": { + "us": 4037.3, "level": "full" } } @@ -3846,39 +3846,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 3451.5, + "us": 3404.6, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 3451.5, + "us": 3404.6, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 3366.6, + "us": 3389.0, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 3366.6, + "us": 3389.0, "level": "full" }, "variants": { "On-Demand (reused)": { - "us": 3366.6, + "us": 3389.0, "level": "full" }, "On-Demand": { - "us": 3451.5, - "level": "full" - }, - "DOM (reused)": { - "us": 4036.1, + "us": 3404.6, "level": "full" }, "DOM": { - "us": 4157.9, + "us": 4044.4, + "level": "full" + }, + "DOM (reused)": { + "us": 4071.1, "level": "full" } } @@ -3887,14 +3887,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3979.5, + "us": 3886.9, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3979.5, + "us": 3886.9, "level": "no UTF-8" } } @@ -3902,35 +3902,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 10531.8, + "us": 10332.6, "level": "full" }, "best_any": { "variant": "generic (double)", - "us": 10222.4, + "us": 10066.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic (double)": { - "us": 10222.4, + "us": 10066.4, "level": "partial" }, "generic (double, strict)": { - "us": 10531.8, + "us": 10332.6, "level": "full" }, "generic (strict)": { - "us": 17647.7, + "us": 17208.0, "level": "full" }, "generic": { - "us": 18120.1, + "us": 17584.1, "level": "partial" }, "lazy_json": { - "us": 20661.0, + "us": 19997.2, "level": "partial" } }, @@ -3941,39 +3941,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 5835.4, + "us": 5762.4, "level": "full" }, "best_any": { "variant": "SAX", - "us": 5835.4, + "us": 5762.4, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 5781.2, + "us": 5685.5, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 5781.2, + "us": 5685.5, "level": "full" }, "variants": { "SAX (reused)": { - "us": 5781.2, + "us": 5685.5, "level": "full" }, "SAX": { - "us": 5835.4, - "level": "full" - }, - "parse": { - "us": 7225.8, + "us": 5762.4, "level": "full" }, "parser (reused)": { - "us": 7246.8, + "us": 7222.2, + "level": "full" + }, + "parse": { + "us": 7287.6, "level": "full" } } @@ -3981,72 +3981,72 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 9435.0, + "us": 9547.2, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 9368.2, + "us": 9105.1, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 12220.1, + "us": 12912.7, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 12220.1, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 12341.9, + "level": "no UTF-8" }, "variants": { "SAX (string stream) (no encoding check)": { - "us": 9368.2, + "us": 9105.1, "level": "no UTF-8" }, "SAX (string stream)": { - "us": 9435.0, + "us": 9547.2, "level": "full" }, "insitu (copy untimed)": { - "us": 10294.7, + "us": 10347.0, "level": "full" }, - "insitu (copy) (no encoding check)": { - "us": 10347.7, - "level": "no UTF-8" - }, "insitu (copy)": { - "us": 10515.0, + "us": 10516.5, "level": "full" }, "insitu (copy untimed) (no encoding check)": { - "us": 10555.8, - "level": "no UTF-8" - }, - "SAX (no encoding check)": { - "us": 11200.6, + "us": 10716.3, "level": "no UTF-8" }, "SAX": { - "us": 11375.9, + "us": 11197.3, "level": "full" }, - "Document (reused allocator)": { - "us": 12220.1, - "level": "full" - }, - "Document (reused allocator) (no encoding check)": { - "us": 12472.4, + "insitu (copy) (no encoding check)": { + "us": 11235.3, "level": "no UTF-8" }, - "Document (no encoding check)": { - "us": 12552.4, + "SAX (no encoding check)": { + "us": 11594.7, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 12341.9, "level": "no UTF-8" }, "Document": { - "us": 12602.4, + "us": 12430.2, "level": "full" + }, + "Document (reused allocator)": { + "us": 12912.7, + "level": "full" + }, + "Document (no encoding check)": { + "us": 12968.6, + "level": "no UTF-8" } } }, @@ -4139,35 +4139,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 89756.2, + "us": 88527.1, "level": "full" }, "best_any": { "variant": "parse", - "us": 89756.2, + "us": 88527.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 50992.3, + "us": 50998.1, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 50992.3, + "us": 50998.1, "level": "full" }, "variants": { "read (reused)": { - "us": 50992.3, + "us": 50998.1, "level": "full" }, "parse": { - "us": 89756.2, + "us": 88527.1, "level": "full" }, "parse_copy": { - "us": 132156.3, + "us": 128943.0, "level": "full" } } @@ -4175,23 +4175,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 97414.0, + "us": 66402.6, "level": "full" }, "best_any": { "variant": "sax", - "us": 97414.0, + "us": 66402.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 97414.0, + "us": 66402.6, "level": "full" }, "parse": { - "us": 405297.9, + "us": 360457.1, "level": "full" } } @@ -4199,39 +4199,39 @@ "yyjson": { "best": { "variant": "read", - "us": 138743.5, + "us": 133860.1, "level": "full" }, "best_any": { "variant": "read", - "us": 138743.5, + "us": 133860.1, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 69157.4, + "us": 70525.2, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 69157.4, + "us": 70525.2, "level": "full" }, "variants": { "read (reused allocator)": { - "us": 69157.4, + "us": 70525.2, "level": "full" }, "insitu (copy untimed)": { - "us": 97585.6, + "us": 95873.4, "level": "full" }, "read": { - "us": 138743.5, + "us": 133860.1, "level": "full" }, "insitu (copy)": { - "us": 142125.6, + "us": 138598.6, "level": "full" } } @@ -4239,39 +4239,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 92768.8, + "us": 90960.3, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 92768.8, + "us": 90960.3, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 49571.5, + "us": 48351.2, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 49571.5, + "us": 48351.2, "level": "full" }, "variants": { "On-Demand (reused)": { - "us": 49571.5, + "us": 48351.2, "level": "full" }, "DOM (reused)": { - "us": 58328.5, + "us": 61621.7, "level": "full" }, "On-Demand": { - "us": 92768.8, + "us": 90960.3, "level": "full" }, "DOM": { - "us": 131126.2, + "us": 130125.6, "level": "full" } } @@ -4280,14 +4280,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 105080.8, + "us": 107493.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 105080.8, + "us": 107493.8, "level": "no UTF-8" } } @@ -4295,36 +4295,36 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 231505.3, + "us": 237722.9, "level": "full" }, "best_any": { "variant": "lazy_json", - "us": 225437.9, + "us": 234996.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "lazy_json": { - "us": 225437.9, + "us": 234996.9, "level": "partial" }, "generic (double, strict)": { - "us": 231505.3, + "us": 237722.9, "level": "full" }, "generic (double)": { - "us": 233548.0, + "us": 245308.9, + "level": "partial" + }, + "generic": { + "us": 329290.9, "level": "partial" }, "generic (strict)": { - "us": 314867.5, + "us": 335906.6, "level": "full" - }, - "generic": { - "us": 316327.7, - "level": "partial" } }, "excluded": { @@ -4334,39 +4334,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 59655.5, + "us": 62051.4, "level": "full" }, "best_any": { "variant": "SAX", - "us": 59655.5, + "us": 62051.4, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 59184.3, + "us": 58368.8, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 59184.3, + "us": 58368.8, "level": "full" }, "variants": { "SAX (reused)": { - "us": 59184.3, + "us": 58368.8, "level": "full" }, "SAX": { - "us": 59655.5, + "us": 62051.4, "level": "full" }, "parser (reused)": { - "us": 132393.0, + "us": 131602.2, "level": "full" }, "parse": { - "us": 192260.6, + "us": 191766.6, "level": "full" } } @@ -4374,71 +4374,71 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 128415.3, + "us": 127564.5, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 112449.5, + "us": 113500.4, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 198339.7, + "us": 188981.7, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator) (no encoding check)", - "us": 183038.2, - "level": "no UTF-8" + "variant": "Document (reused allocator)", + "us": 188981.7, + "level": "full" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 105844.6, + "us": 105965.2, + "level": "no UTF-8" + }, + "SAX (string stream) (no encoding check)": { + "us": 113500.4, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 112158.3, + "us": 119786.9, "level": "full" }, - "SAX (string stream) (no encoding check)": { - "us": 112449.5, - "level": "no UTF-8" - }, "SAX (string stream)": { - "us": 128415.3, + "us": 127564.5, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 152055.8, - "level": "no UTF-8" - }, - "SAX (no encoding check)": { - "us": 154426.5, + "us": 150512.5, "level": "no UTF-8" }, "insitu (copy)": { - "us": 158907.5, + "us": 157298.7, "level": "full" }, - "Document (reused allocator) (no encoding check)": { - "us": 183038.2, + "SAX (no encoding check)": { + "us": 158073.6, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 185367.0, + "us": 186955.4, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 198339.7, + "us": 188981.7, "level": "full" }, + "Document (reused allocator) (no encoding check)": { + "us": 189518.2, + "level": "no UTF-8" + }, "SAX": { - "us": 244103.0, + "us": 238688.1, "level": "full" }, "Document": { - "us": 264334.8, + "us": 271744.3, "level": "full" } } @@ -4532,12 +4532,12 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 2.0, + "us": 1.9, "level": "full" }, "best_any": { "variant": "parse", - "us": 2.0, + "us": 1.9, "level": "full" }, "best_reused": { @@ -4551,16 +4551,16 @@ "level": "full" }, "variants": { + "parse": { + "us": 1.9, + "level": "full" + }, "read (reused)": { "us": 1.9, "level": "full" }, - "parse": { - "us": 2.0, - "level": "full" - }, "parse_copy": { - "us": 2.1, + "us": 2.0, "level": "full" } } @@ -4568,23 +4568,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 4.0, + "us": 2.3, "level": "full" }, "best_any": { "variant": "sax", - "us": 4.0, + "us": 2.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 4.0, + "us": 2.3, "level": "full" }, "parse": { - "us": 18.8, + "us": 14.9, "level": "full" } } @@ -4611,6 +4611,10 @@ "level": "full" }, "variants": { + "insitu (copy untimed)": { + "us": 1.8, + "level": "full" + }, "read (reused allocator)": { "us": 1.8, "level": "full" @@ -4622,10 +4626,6 @@ "insitu (copy)": { "us": 1.9, "level": "full" - }, - "insitu (copy untimed)": { - "us": 1.9, - "level": "full" } } }, @@ -4664,7 +4664,7 @@ "level": "full" }, "DOM": { - "us": 2.2, + "us": 2.1, "level": "full" } } @@ -4688,19 +4688,19 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 8.5, + "us": 8.3, "level": "full" }, "best_any": { "variant": "lazy_json", - "us": 6.4, + "us": 6.3, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "lazy_json": { - "us": 6.4, + "us": 6.3, "level": "partial" }, "generic (double)": { @@ -4708,15 +4708,15 @@ "level": "partial" }, "generic (double, strict)": { - "us": 8.5, + "us": 8.3, "level": "full" }, "generic": { - "us": 11.5, + "us": 11.3, "level": "partial" }, "generic (strict)": { - "us": 11.6, + "us": 11.4, "level": "full" } }, @@ -4727,39 +4727,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 3.0, + "us": 2.9, "level": "full" }, "best_any": { "variant": "SAX", - "us": 3.0, + "us": 2.9, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 3.0, + "us": 2.9, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 3.0, + "us": 2.9, "level": "full" }, "variants": { "SAX": { - "us": 3.0, + "us": 2.9, "level": "full" }, "SAX (reused)": { - "us": 3.0, + "us": 2.9, "level": "full" }, "parser (reused)": { - "us": 6.1, + "us": 6.0, "level": "full" }, "parse": { - "us": 6.2, + "us": 6.3, "level": "full" } } @@ -4767,12 +4767,12 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 5.4, + "us": 5.1, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 3.5, + "us": 3.4, "level": "no UTF-8" }, "best_reused": { @@ -4782,56 +4782,56 @@ }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 7.4, + "us": 7.2, "level": "no UTF-8" }, "variants": { "SAX (string stream) (no encoding check)": { - "us": 3.5, + "us": 3.4, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 3.6, + "us": 3.5, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 3.7, + "us": 3.6, "level": "no UTF-8" }, + "insitu (copy)": { + "us": 5.1, + "level": "full" + }, "insitu (copy untimed)": { "us": 5.1, "level": "full" }, - "insitu (copy)": { - "us": 5.4, - "level": "full" - }, "SAX (string stream)": { - "us": 5.8, + "us": 5.7, "level": "full" }, "SAX (no encoding check)": { - "us": 6.8, + "us": 6.5, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 7.4, + "us": 7.2, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 7.7, "level": "no UTF-8" }, "Document (reused allocator)": { "us": 7.8, "level": "full" }, - "Document (no encoding check)": { - "us": 7.9, - "level": "no UTF-8" - }, "SAX": { - "us": 10.7, + "us": 10.4, "level": "full" }, "Document": { - "us": 11.9, + "us": 11.6, "level": "full" } } @@ -4925,35 +4925,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 337.3, + "us": 330.4, "level": "full" }, "best_any": { "variant": "parse", - "us": 337.3, + "us": 330.4, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 331.0, + "us": 326.0, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 331.0, + "us": 326.0, "level": "full" }, "variants": { "read (reused)": { - "us": 331.0, + "us": 326.0, "level": "full" }, "parse": { - "us": 337.3, + "us": 330.4, "level": "full" }, "parse_copy": { - "us": 365.5, + "us": 361.1, "level": "full" } } @@ -4961,63 +4961,63 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 686.3, + "us": 402.0, "level": "full" }, "best_any": { "variant": "sax", - "us": 686.3, + "us": 402.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 686.3, + "us": 402.0, "level": "full" }, "parse": { - "us": 3289.8, + "us": 2949.9, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 375.0, + "variant": "read", + "us": 372.3, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 375.0, + "variant": "read", + "us": 372.3, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 373.5, + "us": 373.6, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 373.5, + "us": 373.6, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 343.6, - "level": "full" - }, - "read (reused allocator)": { - "us": 373.5, - "level": "full" - }, - "insitu (copy)": { - "us": 375.0, + "us": 346.6, "level": "full" }, "read": { - "us": 376.2, + "us": 372.3, + "level": "full" + }, + "read (reused allocator)": { + "us": 373.6, + "level": "full" + }, + "insitu (copy)": { + "us": 375.7, "level": "full" } } @@ -5025,39 +5025,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 329.8, + "us": 331.1, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 329.8, + "us": 331.1, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 325.8, + "us": 329.2, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 325.8, + "us": 329.2, "level": "full" }, "variants": { "On-Demand (reused)": { - "us": 325.8, + "us": 329.2, "level": "full" }, "On-Demand": { - "us": 329.8, + "us": 331.1, "level": "full" }, "DOM (reused)": { - "us": 359.4, + "us": 361.8, "level": "full" }, "DOM": { - "us": 362.3, + "us": 362.2, "level": "full" } } @@ -5066,14 +5066,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 353.7, + "us": 356.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 353.7, + "us": 356.7, "level": "no UTF-8" } } @@ -5081,35 +5081,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 2103.7, + "us": 2090.9, "level": "full" }, "best_any": { "variant": "lazy_json", - "us": 1815.3, + "us": 1834.1, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "lazy_json": { - "us": 1815.3, - "level": "partial" - }, - "generic (double)": { - "us": 2083.1, + "us": 1834.1, "level": "partial" }, "generic (double, strict)": { - "us": 2103.7, + "us": 2090.9, "level": "full" }, + "generic (double)": { + "us": 2100.1, + "level": "partial" + }, "generic": { - "us": 2629.8, + "us": 2691.1, "level": "partial" }, "generic (strict)": { - "us": 2652.7, + "us": 2724.3, "level": "full" } }, @@ -5120,39 +5120,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 568.0, + "us": 562.2, "level": "full" }, "best_any": { "variant": "SAX", - "us": 568.0, + "us": 562.2, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 567.7, + "us": 561.4, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 567.7, + "us": 561.4, "level": "full" }, "variants": { "SAX (reused)": { - "us": 567.7, + "us": 561.4, "level": "full" }, "SAX": { - "us": 568.0, + "us": 562.2, "level": "full" }, "parser (reused)": { - "us": 1234.9, + "us": 1242.8, "level": "full" }, "parse": { - "us": 1242.5, + "us": 1247.9, "level": "full" } } @@ -5160,71 +5160,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 901.4, + "us": 911.8, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 820.2, + "us": 819.9, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1497.0, + "us": 1501.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1365.0, + "us": 1363.5, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 791.1, + "us": 789.9, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 820.2, + "us": 819.9, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 871.8, - "level": "full" - }, - "insitu (copy)": { - "us": 901.4, + "us": 878.2, "level": "full" }, "SAX (string stream) (no encoding check)": { - "us": 901.4, + "us": 906.2, "level": "no UTF-8" }, + "insitu (copy)": { + "us": 911.8, + "level": "full" + }, "SAX (string stream)": { - "us": 1063.2, + "us": 1083.6, "level": "full" }, "SAX (no encoding check)": { - "us": 1197.5, + "us": 1202.2, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1365.0, + "us": 1363.5, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1385.7, + "us": 1391.3, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1497.0, + "us": 1501.6, "level": "full" }, "SAX": { - "us": 1910.6, + "us": 1951.0, "level": "full" }, "Document": { - "us": 2070.4, + "us": 2082.7, "level": "full" } } @@ -5318,35 +5318,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 729.8, + "us": 700.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 729.8, + "us": 700.5, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 714.6, + "us": 701.5, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 714.6, + "us": 701.5, "level": "full" }, "variants": { - "read (reused)": { - "us": 714.6, + "parse": { + "us": 700.5, "level": "full" }, - "parse": { - "us": 729.8, + "read (reused)": { + "us": 701.5, "level": "full" }, "parse_copy": { - "us": 745.1, + "us": 729.7, "level": "full" } } @@ -5354,23 +5354,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 1431.5, + "us": 658.2, "level": "full" }, "best_any": { "variant": "sax", - "us": 1431.5, + "us": 658.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 1431.5, + "us": 658.2, "level": "full" }, "parse": { - "us": 5393.7, + "us": 4214.1, "level": "full" } } @@ -5378,39 +5378,39 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 636.4, + "us": 635.3, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 636.4, + "us": 635.3, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 635.1, + "us": 641.0, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 635.1, + "us": 641.0, "level": "full" }, "variants": { - "read (reused allocator)": { - "us": 635.1, + "insitu (copy untimed)": { + "us": 605.6, "level": "full" }, "insitu (copy)": { - "us": 636.4, - "level": "full" - }, - "insitu (copy untimed)": { - "us": 638.1, + "us": 635.3, "level": "full" }, "read": { - "us": 645.0, + "us": 636.6, + "level": "full" + }, + "read (reused allocator)": { + "us": 641.0, "level": "full" } } @@ -5418,39 +5418,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 652.3, + "us": 652.8, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 652.3, + "us": 652.8, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 658.9, + "us": 652.6, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 658.9, + "us": 652.6, "level": "full" }, "variants": { - "On-Demand": { - "us": 652.3, - "level": "full" - }, "On-Demand (reused)": { - "us": 658.9, + "us": 652.6, "level": "full" }, - "DOM (reused)": { - "us": 753.4, + "On-Demand": { + "us": 652.8, "level": "full" }, "DOM": { - "us": 760.8, + "us": 745.4, + "level": "full" + }, + "DOM (reused)": { + "us": 746.6, "level": "full" } } @@ -5459,14 +5459,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 787.1, + "us": 785.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 787.1, + "us": 785.5, "level": "no UTF-8" } } @@ -5474,35 +5474,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 3253.1, + "us": 3101.6, "level": "full" }, "best_any": { - "variant": "generic (double)", - "us": 3243.4, - "level": "partial" + "variant": "generic (double, strict)", + "us": 3101.6, + "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (double)": { - "us": 3243.4, - "level": "partial" - }, "generic (double, strict)": { - "us": 3253.1, + "us": 3101.6, "level": "full" }, + "generic (double)": { + "us": 3105.9, + "level": "partial" + }, "lazy_json": { - "us": 3800.9, + "us": 3684.6, "level": "partial" }, "generic": { - "us": 4795.4, + "us": 4524.2, "level": "partial" }, "generic (strict)": { - "us": 4815.8, + "us": 4550.0, "level": "full" } }, @@ -5513,39 +5513,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 633.8, + "us": 633.6, "level": "full" }, "best_any": { "variant": "SAX", - "us": 633.8, + "us": 633.6, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 640.6, + "us": 632.5, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 640.6, + "us": 632.5, "level": "full" }, "variants": { - "SAX": { - "us": 633.8, - "level": "full" - }, "SAX (reused)": { - "us": 640.6, + "us": 632.5, "level": "full" }, - "parse": { - "us": 1566.3, + "SAX": { + "us": 633.6, "level": "full" }, "parser (reused)": { - "us": 1604.9, + "us": 1499.0, + "level": "full" + }, + "parse": { + "us": 1509.2, "level": "full" } } @@ -5553,71 +5553,71 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 1203.3, + "us": 1216.3, "level": "full" }, "best_any": { - "variant": "SAX (string stream)", - "us": 1203.3, - "level": "full" + "variant": "SAX (string stream) (no encoding check)", + "us": 1188.3, + "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1834.6, + "us": 1844.9, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator)", - "us": 1834.6, + "us": 1844.9, "level": "full" }, "variants": { - "SAX (string stream)": { - "us": 1203.3, - "level": "full" - }, "SAX (string stream) (no encoding check)": { - "us": 1212.1, + "us": 1188.3, "level": "no UTF-8" }, - "insitu (copy untimed)": { - "us": 1295.9, + "SAX (string stream)": { + "us": 1216.3, "level": "full" }, + "insitu (copy untimed)": { + "us": 1295.6, + "level": "full" + }, + "insitu (copy untimed) (no encoding check)": { + "us": 1328.3, + "level": "no UTF-8" + }, "insitu (copy)": { - "us": 1334.5, + "us": 1332.8, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 1361.4, - "level": "no UTF-8" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 1416.6, + "us": 1362.5, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1523.3, + "us": 1408.8, "level": "no UTF-8" }, - "Document (reused allocator)": { - "us": 1834.6, - "level": "full" - }, "Document (no encoding check)": { - "us": 1901.5, + "us": 1831.5, "level": "no UTF-8" }, "SAX": { - "us": 1964.3, + "us": 1842.5, + "level": "full" + }, + "Document (reused allocator)": { + "us": 1844.9, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 1967.6, + "us": 1871.6, "level": "no UTF-8" }, "Document": { - "us": 2258.0, + "us": 2257.5, "level": "full" } } @@ -5712,108 +5712,108 @@ "twitter": { "nlohmann json_document": { "best": { - "variant": "structs (from_json)", - "us": 332.8, + "variant": "parse", + "us": 324.8, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 332.8, + "variant": "parse", + "us": 324.8, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 327.7, + "us": 317.2, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 327.7, + "us": 317.2, "level": "full" }, "variants": { "read (reused)": { - "us": 327.7, - "level": "full" - }, - "structs (from_json)": { - "us": 332.8, + "us": 317.2, "level": "full" }, "parse": { - "us": 334.4, + "us": 324.8, + "level": "full" + }, + "structs (from_json)": { + "us": 327.6, "level": "full" }, "parse_copy": { - "us": 371.1, + "us": 367.1, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "structs (from_json)", - "us": 3360.1, + "variant": "parse", + "us": 2984.4, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 3360.1, + "variant": "parse", + "us": 2984.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "structs (from_json)": { - "us": 3360.1, + "parse": { + "us": 2984.4, "level": "full" }, - "parse": { - "us": 3362.5, + "structs (from_json)": { + "us": 3136.1, "level": "full" } } }, "yyjson": { "best": { - "variant": "read", - "us": 401.9, + "variant": "read (raw numbers)", + "us": 402.3, "level": "full" }, "best_any": { - "variant": "read", - "us": 401.9, + "variant": "read (raw numbers)", + "us": 402.3, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 404.8, + "us": 403.7, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 404.8, + "us": 403.7, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 365.6, - "level": "full" - }, - "read": { - "us": 401.9, - "level": "full" - }, - "insitu (copy)": { - "us": 402.5, - "level": "full" - }, - "read (reused allocator)": { - "us": 404.8, + "us": 360.8, "level": "full" }, "read (raw numbers)": { - "us": 405.1, + "us": 402.3, + "level": "full" + }, + "read": { + "us": 402.5, + "level": "full" + }, + "insitu (copy)": { + "us": 402.7, + "level": "full" + }, + "read (reused allocator)": { + "us": 403.7, "level": "full" } } @@ -5821,17 +5821,17 @@ "simdjson": { "best": { "variant": "DOM", - "us": 313.0, + "us": 311.2, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 180.0, + "us": 178.5, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 311.3, + "us": 313.6, "level": "full" }, "best_reused_any": { @@ -5845,23 +5845,23 @@ "level": "partial" }, "On-Demand": { - "us": 180.0, + "us": 178.5, "level": "partial" }, "On-Demand (key selectors)": { - "us": 181.1, + "us": 178.7, "level": "partial" }, "On-Demand structs": { - "us": 181.5, + "us": 181.1, "level": "partial" }, - "DOM (reused)": { - "us": 311.3, + "DOM": { + "us": 311.2, "level": "full" }, - "DOM": { - "us": 313.0, + "DOM (reused)": { + "us": 313.6, "level": "full" } } @@ -5870,14 +5870,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 406.6, + "us": 407.9, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 406.6, + "us": 407.9, "level": "no UTF-8" } } @@ -5885,44 +5885,44 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 605.8, + "us": 608.2, "level": "full" }, "best_any": { "variant": "structs", - "us": 343.5, + "us": 344.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 343.5, + "us": 344.9, "level": "partial" }, "structs (validate_skipped)": { - "us": 605.8, + "us": 608.2, "level": "full" }, "lazy_json": { - "us": 989.4, - "level": "partial" - }, - "generic (double)": { - "us": 2377.5, + "us": 993.3, "level": "partial" }, "generic (double, strict)": { - "us": 2411.1, + "us": 2393.0, "level": "full" }, - "generic (strict)": { - "us": 2946.7, - "level": "full" + "generic (double)": { + "us": 2398.7, + "level": "partial" }, "generic": { - "us": 2987.6, + "us": 2918.8, "level": "partial" + }, + "generic (strict)": { + "us": 2954.3, + "level": "full" } }, "excluded": { @@ -5932,35 +5932,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 887.3, + "us": 883.0, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 887.3, + "us": 883.0, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1370.9, + "us": 1341.0, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1370.9, + "us": 1341.0, "level": "full" }, "variants": { "parse_into structs": { - "us": 887.3, - "level": "full" - }, - "parse": { - "us": 1316.5, + "us": 883.0, "level": "full" }, "parser (reused)": { - "us": 1370.9, + "us": 1341.0, + "level": "full" + }, + "parse": { + "us": 1349.1, "level": "full" } }, @@ -5971,47 +5971,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1218.7, + "us": 1217.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1061.0, + "us": 1056.4, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1533.1, + "us": 1522.2, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1401.9, + "us": 1395.6, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1021.7, + "us": 1016.1, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1061.0, + "us": 1056.4, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1180.1, + "us": 1176.8, "level": "full" }, "insitu (copy)": { - "us": 1218.7, + "us": 1217.1, "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 1275.6, + "us": 1285.1, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1401.9, + "us": 1395.6, "level": "no UTF-8" }, "Document (no encoding check)": { @@ -6019,23 +6019,23 @@ "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 1442.6, + "us": 1433.2, "level": "no UTF-8" }, "Document (string stream)": { - "us": 1507.5, + "us": 1459.0, "level": "full" }, "Document (reused allocator)": { - "us": 1533.1, + "us": 1522.2, "level": "full" }, "Document": { - "us": 2117.6, + "us": 2094.8, "level": "full" }, "Document (raw numbers)": { - "us": 2159.6, + "us": 2118.7, "level": "full" } } @@ -6121,107 +6121,107 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 827.7, + "us": 862.7, "level": "full" }, "best_any": { "variant": "parse", - "us": 827.7, + "us": 862.7, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 820.2, + "us": 887.2, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 820.2, + "us": 887.2, "level": "full" }, "variants": { - "read (reused)": { - "us": 820.2, + "parse": { + "us": 862.7, "level": "full" }, - "parse": { - "us": 827.7, + "read (reused)": { + "us": 887.2, "level": "full" }, "structs (from_json)": { - "us": 844.2, + "us": 924.1, "level": "full" }, "parse_copy": { - "us": 927.6, + "us": 969.4, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "structs (from_json)", - "us": 5267.6, + "variant": "parse", + "us": 4547.6, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 5267.6, + "variant": "parse", + "us": 4547.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "structs (from_json)": { - "us": 5267.6, + "parse": { + "us": 4547.6, "level": "full" }, - "parse": { - "us": 5285.1, + "structs (from_json)": { + "us": 4585.0, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 952.7, + "variant": "read", + "us": 953.9, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 952.7, + "variant": "read", + "us": 953.9, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 998.2, + "us": 963.5, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 998.2, + "us": 963.5, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 839.8, - "level": "full" - }, - "insitu (copy)": { - "us": 952.7, + "us": 839.0, "level": "full" }, "read": { "us": 953.9, "level": "full" }, + "insitu (copy)": { + "us": 954.8, + "level": "full" + }, "read (raw numbers)": { - "us": 962.3, + "us": 956.5, "level": "full" }, "read (reused allocator)": { - "us": 998.2, + "us": 963.5, "level": "full" } } @@ -6229,47 +6229,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 698.8, + "us": 698.0, "level": "full" }, "best_any": { "variant": "On-Demand (key selectors)", - "us": 496.2, + "us": 494.3, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 709.7, + "us": 695.1, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 498.7, + "us": 496.0, "level": "partial" }, "variants": { "On-Demand (key selectors)": { - "us": 496.2, + "us": 494.3, "level": "partial" }, "On-Demand (reused)": { - "us": 498.7, + "us": 496.0, "level": "partial" }, "On-Demand": { - "us": 499.0, + "us": 498.4, "level": "partial" }, "On-Demand structs": { - "us": 533.3, + "us": 533.2, "level": "partial" }, - "DOM": { - "us": 698.8, + "DOM (reused)": { + "us": 695.1, "level": "full" }, - "DOM (reused)": { - "us": 709.7, + "DOM": { + "us": 698.0, "level": "full" } } @@ -6278,14 +6278,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 948.2, + "us": 941.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 948.2, + "us": 941.5, "level": "no UTF-8" } } @@ -6293,43 +6293,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 2476.5, + "us": 1977.7, "level": "full" }, "best_any": { "variant": "structs", - "us": 401.5, + "us": 401.0, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 401.5, + "us": 401.0, "level": "partial" }, "structs (validate_skipped)": { - "us": 2476.5, + "us": 1977.7, + "level": "full" + }, + "generic (double, strict)": { + "us": 3909.8, "level": "full" }, "generic (double)": { - "us": 3940.4, + "us": 3970.8, "level": "partial" }, - "generic (double, strict)": { - "us": 3966.0, - "level": "full" - }, - "generic (strict)": { - "us": 5244.2, - "level": "full" - }, "generic": { - "us": 5256.4, + "us": 5226.9, "level": "partial" }, + "generic (strict)": { + "us": 5261.0, + "level": "full" + }, "lazy_json": { - "us": 8408.8, + "us": 8450.9, "level": "partial" } }, @@ -6340,35 +6340,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 1269.5, + "us": 1285.9, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 1269.5, + "us": 1285.9, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1642.8, + "us": 1632.9, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1642.8, + "us": 1632.9, "level": "full" }, "variants": { "parse_into structs": { - "us": 1269.5, + "us": 1285.9, "level": "full" }, "parser (reused)": { - "us": 1642.8, + "us": 1632.9, "level": "full" }, "parse": { - "us": 1643.6, + "us": 1640.4, "level": "full" } }, @@ -6379,71 +6379,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1809.6, + "us": 1806.9, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1763.6, + "us": 1767.0, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1894.9, + "us": 1898.1, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator)", - "us": 1894.9, + "us": 1898.1, "level": "full" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1648.3, + "us": 1644.9, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1693.1, + "us": 1686.0, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 1763.6, + "us": 1767.0, "level": "no UTF-8" }, "insitu (copy)": { - "us": 1809.6, + "us": 1806.9, "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 1816.7, + "us": 1870.7, "level": "no UTF-8" }, "Document (string stream)": { - "us": 1847.1, + "us": 1878.7, "level": "full" }, "Document (no encoding check)": { - "us": 1865.3, + "us": 1893.6, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1894.9, + "us": 1898.1, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 1920.5, + "us": 1914.5, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 2119.7, + "us": 2112.9, "level": "no UTF-8" }, "Document": { - "us": 2275.6, + "us": 2288.5, "level": "full" }, "Document (raw numbers)": { - "us": 2517.8, + "us": 2522.7, "level": "full" } } @@ -6529,39 +6529,39 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 1368.2, + "us": 1302.2, "level": "full" }, "best_any": { "variant": "parse", - "us": 1368.2, + "us": 1302.2, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 1373.7, + "us": 1304.0, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 1373.7, + "us": 1304.0, "level": "full" }, "variants": { "parse": { - "us": 1368.2, + "us": 1302.2, "level": "full" }, "read (reused)": { - "us": 1373.7, + "us": 1304.0, "level": "full" }, "structs (from_json)": { - "us": 1388.1, + "us": 1305.8, "level": "full" }, "parse_copy": { - "us": 1560.8, + "us": 1465.4, "level": "full" } } @@ -6569,23 +6569,23 @@ "nlohmann json": { "best": { "variant": "structs (from_json)", - "us": 12005.7, + "us": 9123.5, "level": "full" }, "best_any": { "variant": "structs (from_json)", - "us": 12005.7, + "us": 9123.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "structs (from_json)": { - "us": 12005.7, + "us": 9123.5, "level": "full" }, "parse": { - "us": 12483.4, + "us": 9123.9, "level": "full" } } @@ -6593,43 +6593,43 @@ "yyjson": { "best": { "variant": "read (raw numbers)", - "us": 2204.3, + "us": 2127.3, "level": "full" }, "best_any": { "variant": "read (raw numbers)", - "us": 2204.3, + "us": 2127.3, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 3500.0, + "us": 3274.5, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 3500.0, + "us": 3274.5, "level": "full" }, "variants": { "read (raw numbers)": { - "us": 2204.3, + "us": 2127.3, "level": "full" }, "insitu (copy untimed)": { - "us": 3358.7, + "us": 3123.0, "level": "full" }, "read": { - "us": 3434.1, - "level": "full" - }, - "read (reused allocator)": { - "us": 3500.0, + "us": 3266.2, "level": "full" }, "insitu (copy)": { - "us": 3523.0, + "us": 3274.3, + "level": "full" + }, + "read (reused allocator)": { + "us": 3274.5, "level": "full" } } @@ -6637,47 +6637,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 3324.7, + "us": 3140.7, "level": "full" }, "best_any": { - "variant": "On-Demand (key selectors)", - "us": 689.5, + "variant": "On-Demand", + "us": 674.5, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 3490.5, + "us": 3159.2, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 698.4, + "us": 674.3, "level": "partial" }, "variants": { - "On-Demand (key selectors)": { - "us": 689.5, - "level": "partial" - }, "On-Demand (reused)": { - "us": 698.4, + "us": 674.3, "level": "partial" }, "On-Demand": { - "us": 720.0, + "us": 674.5, + "level": "partial" + }, + "On-Demand (key selectors)": { + "us": 675.4, "level": "partial" }, "On-Demand structs": { - "us": 901.8, + "us": 886.0, "level": "partial" }, "DOM": { - "us": 3324.7, + "us": 3140.7, "level": "full" }, "DOM (reused)": { - "us": 3490.5, + "us": 3159.2, "level": "full" } } @@ -6686,14 +6686,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3463.8, + "us": 3166.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3463.8, + "us": 3166.3, "level": "no UTF-8" } } @@ -6701,44 +6701,44 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 2557.2, + "us": 2521.1, "level": "full" }, "best_any": { "variant": "structs", - "us": 416.9, + "us": 414.7, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 416.9, + "us": 414.7, "level": "partial" }, "structs (validate_skipped)": { - "us": 2557.2, + "us": 2521.1, "level": "full" }, "lazy_json": { - "us": 3640.4, + "us": 3446.7, "level": "partial" }, "generic (double)": { - "us": 10383.5, + "us": 9487.9, "level": "partial" }, "generic (double, strict)": { - "us": 10884.7, - "level": "full" - }, - "generic (strict)": { - "us": 18620.2, + "us": 9674.4, "level": "full" }, "generic": { - "us": 18916.1, + "us": 16456.6, "level": "partial" + }, + "generic (strict)": { + "us": 16612.4, + "level": "full" } }, "excluded": { @@ -6748,35 +6748,35 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 7291.6, + "us": 6690.3, "level": "full" }, "best_any": { "variant": "parse", - "us": 7291.6, + "us": 6690.3, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 7307.2, + "us": 6658.1, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 7307.2, + "us": 6658.1, "level": "full" }, "variants": { - "parse": { - "us": 7291.6, + "parser (reused)": { + "us": 6658.1, "level": "full" }, - "parser (reused)": { - "us": 7307.2, + "parse": { + "us": 6690.3, "level": "full" }, "parse_into structs": { - "us": 7567.9, + "us": 6915.3, "level": "full" } }, @@ -6787,71 +6787,71 @@ "RapidJSON": { "best": { "variant": "Document (string stream)", - "us": 10389.8, + "us": 9687.9, "level": "full" }, "best_any": { - "variant": "Document (string stream)", - "us": 10389.8, - "level": "full" + "variant": "Document (string stream) (no encoding check)", + "us": 9632.1, + "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 12439.1, + "us": 11710.3, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 12439.1, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 11636.0, + "level": "no UTF-8" }, "variants": { + "Document (string stream) (no encoding check)": { + "us": 9632.1, + "level": "no UTF-8" + }, "Document (string stream)": { - "us": 10389.8, + "us": 9687.9, "level": "full" }, "insitu (copy untimed)": { - "us": 10515.7, + "us": 9911.9, "level": "full" }, - "insitu (copy) (no encoding check)": { - "us": 10725.2, - "level": "no UTF-8" - }, "insitu (copy)": { - "us": 10787.5, + "us": 9986.6, "level": "full" }, "insitu (copy untimed) (no encoding check)": { - "us": 10836.1, + "us": 10016.6, "level": "no UTF-8" }, - "Document (string stream) (no encoding check)": { - "us": 11011.0, + "insitu (copy) (no encoding check)": { + "us": 10187.8, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 11636.0, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 12439.1, + "us": 11710.3, "level": "full" }, "Document": { - "us": 12575.5, + "us": 11744.9, "level": "full" }, - "Document (reused allocator) (no encoding check)": { - "us": 12906.6, + "Document (no encoding check)": { + "us": 11832.6, "level": "no UTF-8" }, "Document (raw numbers)": { - "us": 12915.3, + "us": 11914.9, "level": "full" }, "Document (raw numbers) (no encoding check)": { - "us": 13024.2, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 13199.0, + "us": 12187.0, "level": "no UTF-8" } } @@ -6937,39 +6937,39 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 89876.3, + "us": 87940.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 89876.3, + "us": 87940.5, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 53056.6, + "us": 52921.6, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 53056.6, + "us": 52921.6, "level": "full" }, "variants": { "read (reused)": { - "us": 53056.6, + "us": 52921.6, "level": "full" }, "parse": { - "us": 89876.3, + "us": 87940.5, "level": "full" }, "structs (from_json)": { - "us": 102875.2, + "us": 105969.9, "level": "full" }, "parse_copy": { - "us": 131355.6, + "us": 131631.2, "level": "full" } } @@ -6977,67 +6977,67 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 410220.7, + "us": 383107.9, "level": "full" }, "best_any": { "variant": "parse", - "us": 410220.7, + "us": 383107.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 410220.7, + "us": 383107.9, "level": "full" }, "structs (from_json)": { - "us": 428036.9, + "us": 391566.1, "level": "full" } } }, "yyjson": { "best": { - "variant": "read (raw numbers)", - "us": 135777.7, + "variant": "read", + "us": 140491.2, "level": "full" }, "best_any": { - "variant": "read (raw numbers)", - "us": 135777.7, + "variant": "read", + "us": 140491.2, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 70652.0, + "us": 74459.2, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 70652.0, + "us": 74459.2, "level": "full" }, "variants": { "read (reused allocator)": { - "us": 70652.0, + "us": 74459.2, "level": "full" }, "insitu (copy untimed)": { - "us": 96172.3, - "level": "full" - }, - "read (raw numbers)": { - "us": 135777.7, - "level": "full" - }, - "insitu (copy)": { - "us": 138922.1, + "us": 98567.4, "level": "full" }, "read": { - "us": 139868.1, + "us": 140491.2, + "level": "full" + }, + "insitu (copy)": { + "us": 144408.1, + "level": "full" + }, + "read (raw numbers)": { + "us": 144981.7, "level": "full" } } @@ -7045,47 +7045,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 122555.9, + "us": 130228.2, "level": "full" }, "best_any": { - "variant": "On-Demand (key selectors)", - "us": 48272.2, + "variant": "On-Demand", + "us": 48492.3, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 56403.4, + "us": 56436.4, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 28436.0, + "us": 29427.8, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 28436.0, - "level": "partial" - }, - "On-Demand (key selectors)": { - "us": 48272.2, + "us": 29427.8, "level": "partial" }, "On-Demand": { - "us": 48772.9, + "us": 48492.3, + "level": "partial" + }, + "On-Demand (key selectors)": { + "us": 48609.5, "level": "partial" }, "DOM (reused)": { - "us": 56403.4, + "us": 56436.4, "level": "full" }, "On-Demand structs": { - "us": 69146.1, + "us": 71886.0, "level": "partial" }, "DOM": { - "us": 122555.9, + "us": 130228.2, "level": "full" } } @@ -7094,14 +7094,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 110884.8, + "us": 110763.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 110884.8, + "us": 110763.1, "level": "no UTF-8" } } @@ -7109,44 +7109,44 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 89957.0, + "us": 90806.7, "level": "full" }, "best_any": { "variant": "structs", - "us": 67466.7, + "us": 67455.8, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 67466.7, + "us": 67455.8, "level": "partial" }, "structs (validate_skipped)": { - "us": 89957.0, + "us": 90806.7, "level": "full" }, "lazy_json": { - "us": 121164.6, + "us": 123651.8, + "level": "partial" + }, + "generic (double)": { + "us": 245538.9, "level": "partial" }, "generic (double, strict)": { - "us": 239604.5, - "level": "full" - }, - "generic (double)": { - "us": 250218.1, - "level": "partial" - }, - "generic (strict)": { - "us": 319624.4, + "us": 251937.8, "level": "full" }, "generic": { - "us": 323477.2, + "us": 322428.3, "level": "partial" + }, + "generic (strict)": { + "us": 337457.9, + "level": "full" } }, "excluded": { @@ -7156,35 +7156,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 95866.3, + "us": 101285.5, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 95866.3, + "us": 101285.5, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 135537.9, + "us": 133593.2, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 135537.9, + "us": 133593.2, "level": "full" }, "variants": { "parse_into structs": { - "us": 95866.3, + "us": 101285.5, "level": "full" }, "parser (reused)": { - "us": 135537.9, + "us": 133593.2, "level": "full" }, "parse": { - "us": 190726.3, + "us": 202474.8, "level": "full" } }, @@ -7195,71 +7195,71 @@ "RapidJSON": { "best": { "variant": "Document (string stream)", - "us": 147469.9, + "us": 152274.8, "level": "full" }, "best_any": { "variant": "Document (string stream) (no encoding check)", - "us": 137983.7, + "us": 148964.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 188613.4, + "us": 193265.0, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 182388.4, + "us": 182301.3, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 108290.1, + "us": 115255.0, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 116393.7, + "us": 125741.2, "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 137983.7, + "us": 148964.3, + "level": "no UTF-8" + }, + "insitu (copy) (no encoding check)": { + "us": 151466.3, "level": "no UTF-8" }, "Document (string stream)": { - "us": 147469.9, + "us": 152274.8, "level": "full" }, - "insitu (copy) (no encoding check)": { - "us": 148650.3, - "level": "no UTF-8" - }, "insitu (copy)": { - "us": 158429.5, + "us": 166264.6, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 182388.4, + "us": 182301.3, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 183032.3, + "us": 190149.5, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 185663.7, + "us": 191641.5, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 188613.4, - "level": "full" - }, - "Document (raw numbers)": { - "us": 261083.0, + "us": 193265.0, "level": "full" }, "Document": { - "us": 266364.1, + "us": 273823.7, + "level": "full" + }, + "Document (raw numbers)": { + "us": 280533.7, "level": "full" } } @@ -7345,12 +7345,12 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 1.7, + "us": 1.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 1.7, + "us": 1.6, "level": "full" }, "best_reused": { @@ -7369,15 +7369,15 @@ "level": "full" }, "parse": { - "us": 1.7, + "us": 1.6, "level": "full" }, "structs (from_json)": { - "us": 1.7, + "us": 1.6, "level": "full" }, "parse_copy": { - "us": 1.8, + "us": 1.7, "level": "full" } } @@ -7385,23 +7385,23 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 17.7, + "us": 15.2, "level": "full" }, "best_any": { "variant": "parse", - "us": 17.7, + "us": 15.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 17.7, + "us": 15.2, "level": "full" }, "structs (from_json)": { - "us": 17.7, + "us": 16.2, "level": "full" } } @@ -7432,21 +7432,21 @@ "us": 1.7, "level": "full" }, + "insitu (copy)": { + "us": 1.7, + "level": "full" + }, "insitu (copy untimed)": { "us": 1.7, "level": "full" }, + "read (raw numbers)": { + "us": 1.7, + "level": "full" + }, "read (reused allocator)": { "us": 1.7, "level": "full" - }, - "insitu (copy)": { - "us": 1.8, - "level": "full" - }, - "read (raw numbers)": { - "us": 1.8, - "level": "full" } } }, @@ -7463,7 +7463,7 @@ }, "best_reused": { "variant": "DOM (reused)", - "us": 1.6, + "us": 1.5, "level": "full" }, "best_reused_any": { @@ -7485,11 +7485,11 @@ "level": "partial" }, "On-Demand structs": { - "us": 1.3, + "us": 1.2, "level": "partial" }, "DOM (reused)": { - "us": 1.6, + "us": 1.5, "level": "full" }, "DOM": { @@ -7545,16 +7545,16 @@ "level": "partial" }, "generic (double, strict)": { - "us": 9.3, + "us": 9.2, + "level": "full" + }, + "generic (strict)": { + "us": 12.3, "level": "full" }, "generic": { - "us": 12.3, + "us": 12.6, "level": "partial" - }, - "generic (strict)": { - "us": 12.5, - "level": "full" } }, "excluded": { @@ -7564,12 +7564,12 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 3.7, + "us": 3.6, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 3.7, + "us": 3.6, "level": "full" }, "best_reused": { @@ -7584,7 +7584,7 @@ }, "variants": { "parse_into structs": { - "us": 3.7, + "us": 3.6, "level": "full" }, "parser (reused)": { @@ -7643,7 +7643,7 @@ "level": "full" }, "Document (string stream)": { - "us": 6.4, + "us": 6.5, "level": "full" }, "Document (reused allocator) (no encoding check)": { @@ -7662,11 +7662,11 @@ "us": 7.7, "level": "no UTF-8" }, - "Document": { - "us": 11.4, + "Document (raw numbers)": { + "us": 11.5, "level": "full" }, - "Document (raw numbers)": { + "Document": { "us": 11.6, "level": "full" } @@ -7752,64 +7752,64 @@ "twitter_min": { "nlohmann json_document": { "best": { - "variant": "parse", - "us": 276.8, + "variant": "structs (from_json)", + "us": 272.4, "level": "full" }, "best_any": { - "variant": "parse", - "us": 276.8, + "variant": "structs (from_json)", + "us": 272.4, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 272.6, + "us": 265.3, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 272.6, + "us": 265.3, "level": "full" }, "variants": { "read (reused)": { - "us": 272.6, - "level": "full" - }, - "parse": { - "us": 276.8, + "us": 265.3, "level": "full" }, "structs (from_json)": { - "us": 281.9, + "us": 272.4, + "level": "full" + }, + "parse": { + "us": 273.0, "level": "full" }, "parse_copy": { - "us": 307.0, + "us": 302.3, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "structs (from_json)", - "us": 3212.0, + "variant": "parse", + "us": 2781.5, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 3212.0, + "variant": "parse", + "us": 2781.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "structs (from_json)": { - "us": 3212.0, + "parse": { + "us": 2781.5, "level": "full" }, - "parse": { - "us": 3244.4, + "structs (from_json)": { + "us": 2937.7, "level": "full" } } @@ -7817,43 +7817,43 @@ "yyjson": { "best": { "variant": "read", - "us": 333.8, + "us": 332.0, "level": "full" }, "best_any": { "variant": "read", - "us": 333.8, + "us": 332.0, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 332.2, + "us": 333.6, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 332.2, + "us": 333.6, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 301.0, - "level": "full" - }, - "read (reused allocator)": { - "us": 332.2, + "us": 301.8, "level": "full" }, "read": { - "us": 333.8, + "us": 332.0, "level": "full" }, "insitu (copy)": { - "us": 334.2, + "us": 332.6, + "level": "full" + }, + "read (reused allocator)": { + "us": 333.6, "level": "full" }, "read (raw numbers)": { - "us": 337.7, + "us": 335.5, "level": "full" } } @@ -7861,47 +7861,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 295.2, + "us": 297.2, "level": "full" }, "best_any": { - "variant": "On-Demand", - "us": 158.9, + "variant": "On-Demand (key selectors)", + "us": 159.3, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 293.1, + "us": 303.2, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 156.2, + "us": 158.5, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 156.2, - "level": "partial" - }, - "On-Demand": { - "us": 158.9, + "us": 158.5, "level": "partial" }, "On-Demand (key selectors)": { - "us": 160.0, + "us": 159.3, + "level": "partial" + }, + "On-Demand": { + "us": 161.6, "level": "partial" }, "On-Demand structs": { - "us": 162.5, + "us": 163.4, "level": "partial" }, - "DOM (reused)": { - "us": 293.1, + "DOM": { + "us": 297.2, "level": "full" }, - "DOM": { - "us": 295.2, + "DOM (reused)": { + "us": 303.2, "level": "full" } } @@ -7910,14 +7910,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 305.1, + "us": 307.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 305.1, + "us": 307.1, "level": "no UTF-8" } } @@ -7925,43 +7925,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 467.5, + "us": 466.9, "level": "full" }, "best_any": { "variant": "structs", - "us": 296.5, + "us": 296.3, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 296.5, + "us": 296.3, "level": "partial" }, "structs (validate_skipped)": { - "us": 467.5, + "us": 466.9, "level": "full" }, "lazy_json": { - "us": 482.2, - "level": "partial" - }, - "generic (double)": { - "us": 2149.2, + "us": 482.6, "level": "partial" }, "generic (double, strict)": { - "us": 2178.3, + "us": 2160.8, "level": "full" }, + "generic (double)": { + "us": 2167.2, + "level": "partial" + }, "generic": { - "us": 2727.9, + "us": 2707.8, "level": "partial" }, "generic (strict)": { - "us": 2793.3, + "us": 2714.6, "level": "full" } }, @@ -7972,35 +7972,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 754.3, + "us": 738.6, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 754.3, + "us": 738.6, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1201.6, + "us": 1209.7, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1201.6, + "us": 1209.7, "level": "full" }, "variants": { "parse_into structs": { - "us": 754.3, + "us": 738.6, "level": "full" }, "parser (reused)": { - "us": 1201.6, + "us": 1209.7, "level": "full" }, "parse": { - "us": 1209.3, + "us": 1210.9, "level": "full" } }, @@ -8011,71 +8011,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 862.7, + "us": 871.4, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 779.0, + "us": 775.7, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1456.8, + "us": 1449.9, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1319.8, + "us": 1315.9, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 746.7, + "us": 744.8, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 779.0, + "us": 775.7, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 833.0, + "us": 835.1, "level": "full" }, "insitu (copy)": { - "us": 862.7, + "us": 871.4, "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 1020.1, + "us": 1029.6, "level": "no UTF-8" }, "Document (string stream)": { - "us": 1131.7, + "us": 1133.6, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 1319.8, + "us": 1315.9, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1343.1, + "us": 1342.0, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 1366.1, + "us": 1359.3, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1456.8, + "us": 1449.9, "level": "full" }, "Document": { - "us": 2024.1, + "us": 2019.4, "level": "full" }, "Document (raw numbers)": { - "us": 2055.2, + "us": 2053.5, "level": "full" } } @@ -8161,39 +8161,39 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 551.4, + "us": 525.0, "level": "full" }, "best_any": { "variant": "parse", - "us": 551.4, + "us": 525.0, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 555.5, + "us": 525.2, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 555.5, + "us": 525.2, "level": "full" }, "variants": { "parse": { - "us": 551.4, + "us": 525.0, "level": "full" }, "read (reused)": { - "us": 555.5, + "us": 525.2, "level": "full" }, "parse_copy": { - "us": 569.8, + "us": 557.8, "level": "full" }, "structs (from_json)": { - "us": 606.4, + "us": 558.3, "level": "full" } } @@ -8201,67 +8201,67 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 5275.0, + "us": 4000.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 5275.0, + "us": 4000.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 5275.0, + "us": 4000.6, "level": "full" }, "structs (from_json)": { - "us": 5363.6, + "us": 4116.6, "level": "full" } } }, "yyjson": { "best": { - "variant": "read", - "us": 509.4, + "variant": "insitu (copy)", + "us": 494.2, "level": "full" }, "best_any": { - "variant": "read", - "us": 509.4, + "variant": "insitu (copy)", + "us": 494.2, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 535.2, + "us": 495.0, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 535.2, + "us": 495.0, "level": "full" }, "variants": { - "read": { - "us": 509.4, + "insitu (copy untimed)": { + "us": 463.8, "level": "full" }, "insitu (copy)": { - "us": 512.1, - "level": "full" - }, - "insitu (copy untimed)": { - "us": 512.3, + "us": 494.2, "level": "full" }, "read (reused allocator)": { - "us": 535.2, + "us": 495.0, + "level": "full" + }, + "read": { + "us": 496.2, "level": "full" }, "read (raw numbers)": { - "us": 561.0, + "us": 516.7, "level": "full" } } @@ -8269,47 +8269,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 572.7, + "us": 547.0, "level": "full" }, "best_any": { - "variant": "On-Demand", - "us": 334.7, + "variant": "On-Demand (key selectors)", + "us": 327.8, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 599.6, + "us": 543.9, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 356.3, + "us": 332.6, "level": "partial" }, "variants": { - "On-Demand": { - "us": 334.7, - "level": "partial" - }, "On-Demand (key selectors)": { - "us": 348.3, + "us": 327.8, "level": "partial" }, "On-Demand (reused)": { - "us": 356.3, + "us": 332.6, + "level": "partial" + }, + "On-Demand": { + "us": 334.1, "level": "partial" }, "On-Demand structs": { - "us": 389.9, + "us": 366.4, "level": "partial" }, - "DOM": { - "us": 572.7, + "DOM (reused)": { + "us": 543.9, "level": "full" }, - "DOM (reused)": { - "us": 599.6, + "DOM": { + "us": 547.0, "level": "full" } } @@ -8318,14 +8318,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 662.6, + "us": 611.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 662.6, + "us": 611.4, "level": "no UTF-8" } } @@ -8333,44 +8333,44 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 815.2, + "us": 786.7, "level": "full" }, "best_any": { "variant": "structs", - "us": 205.2, + "us": 203.3, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 205.2, + "us": 203.3, "level": "partial" }, "structs (validate_skipped)": { - "us": 815.2, + "us": 786.7, "level": "full" }, "lazy_json": { - "us": 1707.1, - "level": "partial" - }, - "generic (double)": { - "us": 3279.8, + "us": 1583.8, "level": "partial" }, "generic (double, strict)": { - "us": 3410.3, + "us": 2994.7, "level": "full" }, - "generic (strict)": { - "us": 4850.0, - "level": "full" + "generic (double)": { + "us": 3069.4, + "level": "partial" }, "generic": { - "us": 4994.5, + "us": 4420.6, "level": "partial" + }, + "generic (strict)": { + "us": 4491.6, + "level": "full" } }, "excluded": { @@ -8380,35 +8380,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 1074.9, + "us": 977.7, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 1074.9, + "us": 977.7, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1435.4, + "us": 1363.0, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1435.4, + "us": 1363.0, "level": "full" }, "variants": { "parse_into structs": { - "us": 1074.9, + "us": 977.7, "level": "full" }, "parser (reused)": { - "us": 1435.4, + "us": 1363.0, "level": "full" }, "parse": { - "us": 1511.7, + "us": 1367.1, "level": "full" } }, @@ -8419,71 +8419,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1282.2, + "us": 1191.3, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 1282.2, + "us": 1191.3, "level": "full" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1895.7, + "us": 1694.3, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator) (no encoding check)", - "us": 1890.2, - "level": "no UTF-8" + "variant": "Document (reused allocator)", + "us": 1694.3, + "level": "full" }, "variants": { - "insitu (copy untimed) (no encoding check)": { - "us": 1269.6, - "level": "no UTF-8" - }, "insitu (copy untimed)": { - "us": 1275.6, + "us": 1160.0, "level": "full" }, + "insitu (copy untimed) (no encoding check)": { + "us": 1186.7, + "level": "no UTF-8" + }, "insitu (copy)": { - "us": 1282.2, + "us": 1191.3, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 1352.2, + "us": 1223.6, "level": "no UTF-8" }, "Document (string stream)": { - "us": 1430.4, + "us": 1323.7, "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 1539.8, + "us": 1432.5, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1839.3, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 1890.2, + "us": 1682.2, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1895.7, + "us": 1694.3, "level": "full" }, + "Document (reused allocator) (no encoding check)": { + "us": 1721.2, + "level": "no UTF-8" + }, "Document (raw numbers) (no encoding check)": { - "us": 2175.1, + "us": 1920.4, "level": "no UTF-8" }, "Document": { - "us": 2325.9, + "us": 2120.4, "level": "full" }, "Document (raw numbers)": { - "us": 2613.7, + "us": 2374.7, "level": "full" } } @@ -8571,23 +8571,23 @@ "nlohmann json_document": { "best": { "variant": "editable (source numbers)", - "us": 529.7, + "us": 533.0, "level": "full" }, "best_any": { "variant": "editable (source numbers)", - "us": 529.7, + "us": 533.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable (source numbers)": { - "us": 529.7, + "us": 533.0, "level": "full" }, "editable": { - "us": 536.5, + "us": 537.9, "level": "full" } } @@ -8595,23 +8595,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 2832.5, + "us": 2534.6, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 2832.5, + "us": 2534.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 2832.5, + "us": 2534.6, "level": "full" }, "parse": { - "us": 3834.2, + "us": 3462.2, "level": "full" } } @@ -8619,27 +8619,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 791.4, + "us": 786.0, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 791.4, + "us": 786.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 746.4, + "us": 748.1, "level": "full" }, "mut copy": { - "us": 791.4, + "us": 786.0, "level": "full" }, "insitu (copy) + mut copy": { - "us": 797.1, + "us": 787.5, "level": "full" } } @@ -8648,14 +8648,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 619.9, + "us": 620.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 619.9, + "us": 620.2, "level": "no UTF-8" } } @@ -8663,23 +8663,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3388.6, + "us": 3364.0, "level": "full" }, "best_any": { "variant": "generic", - "us": 3289.6, + "us": 3287.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 3289.6, + "us": 3287.4, "level": "partial" }, "generic (strict)": { - "us": 3388.6, + "us": 3364.0, "level": "full" } }, @@ -8691,19 +8691,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 1767.2, + "us": 1858.7, "level": "full" }, "best_any": { "variant": "parse", - "us": 1767.2, + "us": 1858.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 1767.2, + "us": 1858.7, "level": "full" } } @@ -8711,47 +8711,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1918.5, + "us": 1895.8, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1747.0, + "us": 1748.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1737.3, + "us": 1746.0, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1747.0, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 1854.3, + "us": 1748.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1865.0, + "us": 1863.2, "level": "full" }, + "Document (string stream) (no encoding check)": { + "us": 1873.5, + "level": "no UTF-8" + }, "insitu (copy)": { - "us": 1918.5, + "us": 1895.8, "level": "full" }, "Document (no encoding check)": { - "us": 2020.1, + "us": 1995.6, "level": "no UTF-8" }, "Document (string stream)": { - "us": 2036.6, + "us": 2045.9, "level": "full" }, "Document": { - "us": 2725.6, + "us": 2662.1, "level": "full" } } @@ -8824,24 +8824,24 @@ "citm_catalog": { "nlohmann json_document": { "best": { - "variant": "editable (source numbers)", - "us": 1148.7, + "variant": "editable", + "us": 1214.5, "level": "full" }, "best_any": { - "variant": "editable (source numbers)", - "us": 1148.7, + "variant": "editable", + "us": 1214.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "editable (source numbers)": { - "us": 1148.7, + "editable": { + "us": 1214.5, "level": "full" }, - "editable": { - "us": 1162.3, + "editable (source numbers)": { + "us": 1226.6, "level": "full" } } @@ -8849,23 +8849,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 4970.1, + "us": 4483.9, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 4970.1, + "us": 4483.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 4970.1, + "us": 4483.9, "level": "full" }, "parse": { - "us": 5811.0, + "us": 5124.8, "level": "full" } } @@ -8873,27 +8873,27 @@ "yyjson": { "best": { "variant": "insitu (copy) + mut copy", - "us": 1631.8, + "us": 1642.1, "level": "full" }, "best_any": { "variant": "insitu (copy) + mut copy", - "us": 1631.8, + "us": 1642.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 1526.1, + "us": 1530.3, "level": "full" }, "insitu (copy) + mut copy": { - "us": 1631.8, + "us": 1642.1, "level": "full" }, "mut copy": { - "us": 1633.3, + "us": 1645.1, "level": "full" } } @@ -8902,14 +8902,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1438.4, + "us": 1426.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1438.4, + "us": 1426.4, "level": "no UTF-8" } } @@ -8917,23 +8917,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 6002.3, + "us": 6035.6, "level": "full" }, "best_any": { "variant": "generic", - "us": 5970.1, + "us": 6028.1, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 5970.1, + "us": 6028.1, "level": "partial" }, "generic (strict)": { - "us": 6002.3, + "us": 6035.6, "level": "full" } }, @@ -8945,19 +8945,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 2493.1, + "us": 2512.7, "level": "full" }, "best_any": { "variant": "parse", - "us": 2493.1, + "us": 2512.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 2493.1, + "us": 2512.7, "level": "full" } } @@ -8965,47 +8965,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 2740.5, + "us": 2753.8, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 2691.0, + "us": 2729.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 2594.8, + "us": 2589.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 2616.4, + "us": 2636.7, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 2691.0, + "us": 2729.6, "level": "no UTF-8" }, "insitu (copy)": { - "us": 2740.5, + "us": 2753.8, "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 2743.8, + "us": 2786.3, "level": "no UTF-8" }, "Document (string stream)": { - "us": 2771.2, + "us": 2812.3, "level": "full" }, "Document (no encoding check)": { - "us": 2787.9, + "us": 2814.8, "level": "no UTF-8" }, "Document": { - "us": 3204.3, + "us": 3211.3, "level": "full" } } @@ -9079,47 +9079,47 @@ "nlohmann json_document": { "best": { "variant": "editable (source numbers)", - "us": 2188.1, + "us": 2139.7, "level": "full" }, "best_any": { "variant": "editable (source numbers)", - "us": 2188.1, + "us": 2139.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable (source numbers)": { - "us": 2188.1, + "us": 2139.7, "level": "full" }, "editable": { - "us": 5567.3, + "us": 5640.4, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "ordered_json", - "us": 15805.5, + "variant": "parse", + "us": 13526.2, "level": "full" }, "best_any": { - "variant": "ordered_json", - "us": 15805.5, + "variant": "parse", + "us": 13526.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "ordered_json": { - "us": 15805.5, + "parse": { + "us": 13526.2, "level": "full" }, - "parse": { - "us": 15845.2, + "ordered_json": { + "us": 13973.7, "level": "full" } } @@ -9127,27 +9127,27 @@ "yyjson": { "best": { "variant": "insitu (copy) + mut copy", - "us": 7654.7, + "us": 7599.2, "level": "full" }, "best_any": { "variant": "insitu (copy) + mut copy", - "us": 7654.7, + "us": 7599.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 7478.9, + "us": 7543.6, "level": "full" }, "insitu (copy) + mut copy": { - "us": 7654.7, + "us": 7599.2, "level": "full" }, "mut copy": { - "us": 7676.3, + "us": 7618.2, "level": "full" } } @@ -9156,14 +9156,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 8495.2, + "us": 8465.9, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 8495.2, + "us": 8465.9, "level": "no UTF-8" } } @@ -9171,23 +9171,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 21598.4, + "us": 21592.5, "level": "full" }, "best_any": { "variant": "generic", - "us": 21329.2, + "us": 21371.2, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 21329.2, + "us": 21371.2, "level": "partial" }, "generic (strict)": { - "us": 21598.4, + "us": 21592.5, "level": "full" } }, @@ -9199,19 +9199,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 12767.4, + "us": 12764.8, "level": "full" }, "best_any": { "variant": "parse", - "us": 12767.4, + "us": 12764.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 12767.4, + "us": 12764.8, "level": "full" } } @@ -9219,47 +9219,47 @@ "RapidJSON": { "best": { "variant": "Document (string stream)", - "us": 18812.1, + "us": 19359.2, "level": "full" }, "best_any": { - "variant": "Document (string stream)", - "us": 18812.1, - "level": "full" + "variant": "Document (string stream) (no encoding check)", + "us": 19154.7, + "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { - "Document (string stream)": { - "us": 18812.1, - "level": "full" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 19170.2, - "level": "no UTF-8" - }, "Document (string stream) (no encoding check)": { - "us": 19443.4, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 19447.6, + "us": 19154.7, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 19448.5, + "us": 19219.0, "level": "full" }, + "Document (string stream)": { + "us": 19359.2, + "level": "full" + }, + "insitu (copy untimed) (no encoding check)": { + "us": 19515.8, + "level": "no UTF-8" + }, "insitu (copy)": { - "us": 19695.5, + "us": 19687.1, "level": "full" }, + "insitu (copy) (no encoding check)": { + "us": 19958.7, + "level": "no UTF-8" + }, "Document": { - "us": 21357.3, + "us": 21380.7, "level": "full" }, "Document (no encoding check)": { - "us": 21810.2, + "us": 21742.1, "level": "no UTF-8" } } @@ -9333,23 +9333,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 192322.7, + "us": 193023.9, "level": "full" }, "best_any": { "variant": "editable", - "us": 192322.7, + "us": 193023.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 192322.7, + "us": 193023.9, "level": "full" }, "editable (source numbers)": { - "us": 193342.7, + "us": 201854.5, "level": "full" } } @@ -9357,23 +9357,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 647704.5, + "us": 635911.8, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 647704.5, + "us": 635911.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 647704.5, + "us": 635911.8, "level": "full" }, "parse": { - "us": 844653.5, + "us": 821442.3, "level": "full" } } @@ -9381,27 +9381,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 313354.7, + "us": 303302.8, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 313354.7, + "us": 303302.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 275024.6, + "us": 266325.7, "level": "full" }, "mut copy": { - "us": 313354.7, + "us": 303302.8, "level": "full" }, "insitu (copy) + mut copy": { - "us": 313654.0, + "us": 314354.8, "level": "full" } } @@ -9410,14 +9410,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 186077.7, + "us": 181035.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 186077.7, + "us": 181035.1, "level": "no UTF-8" } } @@ -9425,24 +9425,24 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 607766.9, + "us": 652302.5, "level": "full" }, "best_any": { - "variant": "generic (strict)", - "us": 607766.9, - "level": "full" + "variant": "generic", + "us": 631008.6, + "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (strict)": { - "us": 607766.9, - "level": "full" - }, "generic": { - "us": 622208.2, + "us": 631008.6, "level": "partial" + }, + "generic (strict)": { + "us": 652302.5, + "level": "full" } }, "excluded": { @@ -9453,19 +9453,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 331309.7, + "us": 348702.8, "level": "full" }, "best_any": { "variant": "parse", - "us": 331309.7, + "us": 348702.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 331309.7, + "us": 348702.8, "level": "full" } } @@ -9473,47 +9473,47 @@ "RapidJSON": { "best": { "variant": "Document (string stream)", - "us": 268046.5, + "us": 269071.3, "level": "full" }, "best_any": { "variant": "Document (string stream) (no encoding check)", - "us": 258426.5, + "us": 259147.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 234669.1, + "us": 245468.2, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 245724.3, + "us": 251889.5, "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 258426.5, + "us": 259147.6, "level": "no UTF-8" }, "Document (string stream)": { - "us": 268046.5, + "us": 269071.3, "level": "full" }, "insitu (copy) (no encoding check)": { - "us": 277333.9, + "us": 289239.5, "level": "no UTF-8" }, "insitu (copy)": { - "us": 287472.3, + "us": 289759.7, "level": "full" }, "Document (no encoding check)": { - "us": 308207.2, + "us": 315057.2, "level": "no UTF-8" }, "Document": { - "us": 383510.1, + "us": 398790.8, "level": "full" } } @@ -9587,19 +9587,19 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 3.0, + "us": 3.1, "level": "full" }, "best_any": { "variant": "editable", - "us": 3.0, + "us": 3.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 3.0, + "us": 3.1, "level": "full" }, "editable (source numbers)": { @@ -9611,23 +9611,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 13.1, + "us": 12.4, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 13.1, + "us": 12.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 13.1, + "us": 12.4, "level": "full" }, "parse": { - "us": 19.2, + "us": 18.2, "level": "full" } } @@ -9635,27 +9635,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 3.6, + "us": 3.8, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 3.6, + "us": 3.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "mut copy": { - "us": 3.6, - "level": "full" - }, - "insitu (copy untimed) + mut copy": { - "us": 3.6, + "us": 3.8, "level": "full" }, "insitu (copy) + mut copy": { - "us": 3.7, + "us": 3.8, + "level": "full" + }, + "insitu (copy untimed) + mut copy": { + "us": 3.8, "level": "full" } } @@ -9664,14 +9664,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3.4, + "us": 3.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3.4, + "us": 3.3, "level": "no UTF-8" } } @@ -9679,23 +9679,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 14.8, + "us": 15.6, "level": "full" }, "best_any": { "variant": "generic", - "us": 14.4, + "us": 15.5, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 14.4, + "us": 15.5, "level": "partial" }, "generic (strict)": { - "us": 14.8, + "us": 15.6, "level": "full" } }, @@ -9707,19 +9707,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 8.5, + "us": 8.8, "level": "full" }, "best_any": { "variant": "parse", - "us": 8.5, + "us": 8.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 8.5, + "us": 8.8, "level": "full" } } @@ -9727,47 +9727,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 8.7, + "us": 9.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 7.2, + "us": 7.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy) (no encoding check)": { - "us": 7.2, + "us": 7.5, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 7.2, + "us": 7.7, "level": "no UTF-8" }, "Document (string stream) (no encoding check)": { - "us": 8.3, + "us": 8.1, "level": "no UTF-8" }, "insitu (copy)": { - "us": 8.7, + "us": 9.1, "level": "full" }, "insitu (copy untimed)": { - "us": 8.7, + "us": 9.2, "level": "full" }, "Document (string stream)": { - "us": 10.1, + "us": 10.7, "level": "full" }, "Document (no encoding check)": { - "us": 11.3, + "us": 11.8, "level": "no UTF-8" }, "Document": { - "us": 15.2, + "us": 16.0, "level": "full" } } @@ -9841,23 +9841,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 474.8, + "us": 469.6, "level": "full" }, "best_any": { "variant": "editable", - "us": 474.8, + "us": 469.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 474.8, + "us": 469.6, "level": "full" }, "editable (source numbers)": { - "us": 476.1, + "us": 472.0, "level": "full" } } @@ -9865,23 +9865,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 2673.6, + "us": 2388.9, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 2673.6, + "us": 2388.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 2673.6, + "us": 2388.9, "level": "full" }, "parse": { - "us": 3656.6, + "us": 3264.5, "level": "full" } } @@ -9889,27 +9889,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 704.3, + "us": 706.8, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 704.3, + "us": 706.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 677.0, + "us": 686.2, "level": "full" }, "mut copy": { - "us": 704.3, + "us": 706.8, "level": "full" }, "insitu (copy) + mut copy": { - "us": 704.9, + "us": 715.4, "level": "full" } } @@ -9918,14 +9918,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 511.4, + "us": 519.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 511.4, + "us": 519.3, "level": "no UTF-8" } } @@ -9933,23 +9933,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3153.2, + "us": 3127.8, "level": "full" }, "best_any": { "variant": "generic", - "us": 3094.5, + "us": 3086.7, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 3094.5, + "us": 3086.7, "level": "partial" }, "generic (strict)": { - "us": 3153.2, + "us": 3127.8, "level": "full" } }, @@ -9961,19 +9961,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 1653.2, + "us": 1661.3, "level": "full" }, "best_any": { "variant": "parse", - "us": 1653.2, + "us": 1661.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 1653.2, + "us": 1661.3, "level": "full" } } @@ -9981,47 +9981,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1538.4, + "us": 1539.3, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1461.7, + "us": 1464.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1428.4, + "us": 1428.8, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1461.7, + "us": 1464.1, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1505.8, + "us": 1515.8, "level": "full" }, "insitu (copy)": { - "us": 1538.4, + "us": 1539.3, "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 1598.8, + "us": 1618.5, "level": "no UTF-8" }, "Document (string stream)": { - "us": 1703.4, + "us": 1718.4, "level": "full" }, "Document (no encoding check)": { - "us": 1914.2, + "us": 1932.2, "level": "no UTF-8" }, "Document": { - "us": 2615.9, + "us": 2605.9, "level": "full" } } @@ -10094,24 +10094,24 @@ "citm_catalog_min": { "nlohmann json_document": { "best": { - "variant": "editable", - "us": 860.5, + "variant": "editable (source numbers)", + "us": 848.5, "level": "full" }, "best_any": { - "variant": "editable", - "us": 860.5, + "variant": "editable (source numbers)", + "us": 848.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "editable": { - "us": 860.5, + "editable (source numbers)": { + "us": 848.5, "level": "full" }, - "editable (source numbers)": { - "us": 877.7, + "editable": { + "us": 852.1, "level": "full" } } @@ -10119,51 +10119,51 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 4746.7, + "us": 4011.7, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 4746.7, + "us": 4011.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 4746.7, + "us": 4011.7, "level": "full" }, "parse": { - "us": 5667.6, + "us": 4743.0, "level": "full" } } }, "yyjson": { "best": { - "variant": "mut copy", - "us": 1173.7, + "variant": "insitu (copy) + mut copy", + "us": 1174.0, "level": "full" }, "best_any": { - "variant": "mut copy", - "us": 1173.7, + "variant": "insitu (copy) + mut copy", + "us": 1174.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 1145.9, - "level": "full" - }, - "mut copy": { - "us": 1173.7, + "us": 1141.2, "level": "full" }, "insitu (copy) + mut copy": { - "us": 1179.1, + "us": 1174.0, + "level": "full" + }, + "mut copy": { + "us": 1182.5, "level": "full" } } @@ -10172,14 +10172,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1102.2, + "us": 1095.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1102.2, + "us": 1095.4, "level": "no UTF-8" } } @@ -10187,23 +10187,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 5385.2, + "us": 5327.2, "level": "full" }, "best_any": { "variant": "generic", - "us": 5287.8, + "us": 5297.6, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 5287.8, + "us": 5297.6, "level": "partial" }, "generic (strict)": { - "us": 5385.2, + "us": 5327.2, "level": "full" } }, @@ -10215,19 +10215,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 2263.4, + "us": 2226.8, "level": "full" }, "best_any": { "variant": "parse", - "us": 2263.4, + "us": 2226.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 2263.4, + "us": 2226.8, "level": "full" } } @@ -10235,47 +10235,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 2132.9, + "us": 2131.3, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 2132.9, + "us": 2131.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed)": { - "us": 2109.7, + "us": 2105.2, "level": "full" }, "insitu (copy)": { - "us": 2132.9, + "us": 2131.3, "level": "full" }, "insitu (copy untimed) (no encoding check)": { - "us": 2139.8, + "us": 2135.0, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 2172.3, + "us": 2172.4, "level": "no UTF-8" }, "Document (string stream)": { - "us": 2253.9, + "us": 2286.7, "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 2323.6, + "us": 2455.7, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 2639.0, + "us": 2617.0, "level": "no UTF-8" }, "Document": { - "us": 3083.6, + "us": 3045.2, "level": "full" } } @@ -10351,39 +10351,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 495.8, + "us": 466.8, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 495.8, + "us": 466.8, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 494.2, + "us": 472.2, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 494.2, + "us": 472.2, "level": "full" }, "variants": { - "read + dump (reused)": { - "us": 494.2, + "parse + dump (source numbers)": { + "us": 466.8, "level": "full" }, - "parse + dump (source numbers)": { - "us": 495.8, + "read + dump (reused)": { + "us": 472.2, "level": "full" }, "parse + dump": { - "us": 518.1, + "us": 477.9, "level": "full" }, "parse_copy + dump": { - "us": 575.7, + "us": 520.9, "level": "full" } } @@ -10391,63 +10391,63 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 4195.9, + "us": 3368.7, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 4195.9, + "us": 3368.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 4195.9, + "us": 3368.7, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy) + write", - "us": 625.5, + "variant": "read (raw numbers) + write", + "us": 609.0, "level": "full" }, "best_any": { - "variant": "insitu (copy) + write", - "us": 625.5, + "variant": "read (raw numbers) + write", + "us": 609.0, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 716.6, + "us": 615.2, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 716.6, + "us": 615.2, "level": "full" }, "variants": { - "insitu (copy) + write": { - "us": 625.5, - "level": "full" - }, "insitu (copy untimed) + write": { - "us": 637.2, - "level": "full" - }, - "read + write": { - "us": 657.9, + "us": 574.2, "level": "full" }, "read (raw numbers) + write": { - "us": 667.1, + "us": 609.0, + "level": "full" + }, + "read + write": { + "us": 610.2, + "level": "full" + }, + "insitu (copy) + write": { + "us": 612.4, "level": "full" }, "read + write (reused allocator)": { - "us": 716.6, + "us": 615.2, "level": "full" } } @@ -10455,35 +10455,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 714.2, + "us": 665.5, "level": "full" }, "best_any": { "variant": "minify", - "us": 99.9, + "us": 93.3, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 703.7, + "us": 664.2, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 703.7, + "us": 664.2, "level": "full" }, "variants": { "minify": { - "us": 99.9, + "us": 93.3, "level": "partial" }, "DOM (reused) + to_string": { - "us": 703.7, + "us": 664.2, "level": "full" }, "DOM + to_string": { - "us": 714.2, + "us": 665.5, "level": "full" } } @@ -10492,14 +10492,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 675.1, + "us": 636.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 675.1, + "us": 636.2, "level": "no UTF-8" } } @@ -10507,27 +10507,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3684.7, + "us": 3243.0, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 442.0, + "us": 417.3, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 442.0, + "us": 417.3, "level": "partial" }, "generic": { - "us": 3529.2, + "us": 3185.5, "level": "partial" }, "generic (strict)": { - "us": 3684.7, + "us": 3243.0, "level": "full" } }, @@ -10539,31 +10539,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 1974.2, + "us": 1782.7, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 1974.2, + "us": 1782.7, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 1889.4, + "us": 1780.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 1889.4, + "us": 1780.8, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 1889.4, + "us": 1780.8, "level": "full" }, "parse + serialize": { - "us": 1974.2, + "us": 1782.7, "level": "full" } } @@ -10571,63 +10571,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 1949.4, + "us": 1851.1, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 1879.7, + "us": 1709.9, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2412.6, + "us": 2168.4, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 2267.0, + "us": 2049.2, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 1879.7, + "us": 1709.9, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 1941.4, + "us": 1774.9, + "level": "no UTF-8" + }, + "SAX to Writer (raw numbers) (no encoding check)": { + "us": 1815.8, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 1949.4, + "us": 1851.1, "level": "full" }, - "SAX to Writer (raw numbers) (no encoding check)": { - "us": 1949.4, - "level": "no UTF-8" - }, "Document + Writer (no encoding check)": { - "us": 2236.8, + "us": 2014.2, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 2267.0, + "us": 2049.2, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 2412.6, - "level": "full" - }, - "SAX to Writer": { - "us": 2683.1, + "us": 2168.4, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 2793.4, + "us": 2472.1, + "level": "full" + }, + "SAX to Writer": { + "us": 2496.3, "level": "full" }, "Document + Writer": { - "us": 2887.6, + "us": 2710.5, "level": "full" } } @@ -10696,40 +10696,40 @@ "citm_catalog": { "nlohmann json_document": { "best": { - "variant": "parse + dump", - "us": 1044.8, + "variant": "parse + dump (source numbers)", + "us": 1117.9, "level": "full" }, "best_any": { - "variant": "parse + dump", - "us": 1044.8, + "variant": "parse + dump (source numbers)", + "us": 1117.9, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 1071.1, + "us": 1153.2, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 1071.1, + "us": 1153.2, "level": "full" }, "variants": { - "parse + dump": { - "us": 1044.8, + "parse + dump (source numbers)": { + "us": 1117.9, "level": "full" }, - "parse + dump (source numbers)": { - "us": 1046.8, + "parse + dump": { + "us": 1151.9, "level": "full" }, "read + dump (reused)": { - "us": 1071.1, + "us": 1153.2, "level": "full" }, "parse_copy + dump": { - "us": 1177.8, + "us": 1256.1, "level": "full" } } @@ -10737,19 +10737,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 5806.5, + "us": 5399.2, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 5806.5, + "us": 5399.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 5806.5, + "us": 5399.2, "level": "full" } } @@ -10757,43 +10757,43 @@ "yyjson": { "best": { "variant": "read (raw numbers) + write", - "us": 1217.9, + "us": 1220.7, "level": "full" }, "best_any": { "variant": "read (raw numbers) + write", - "us": 1217.9, + "us": 1220.7, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 1314.5, + "us": 1407.2, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 1314.5, + "us": 1407.2, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 1159.8, + "us": 1165.4, "level": "full" }, "read (raw numbers) + write": { - "us": 1217.9, - "level": "full" - }, - "insitu (copy) + write": { - "us": 1265.0, + "us": 1220.7, "level": "full" }, "read + write": { - "us": 1265.8, + "us": 1276.8, + "level": "full" + }, + "insitu (copy) + write": { + "us": 1306.7, "level": "full" }, "read + write (reused allocator)": { - "us": 1314.5, + "us": 1407.2, "level": "full" } } @@ -10801,35 +10801,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 1318.4, + "us": 1353.9, "level": "full" }, "best_any": { "variant": "minify", - "us": 278.1, + "us": 279.3, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 1318.1, + "us": 1366.8, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 1318.1, + "us": 1366.8, "level": "full" }, "variants": { "minify": { - "us": 278.1, + "us": 279.3, "level": "partial" }, - "DOM (reused) + to_string": { - "us": 1318.1, + "DOM + to_string": { + "us": 1353.9, "level": "full" }, - "DOM + to_string": { - "us": 1318.4, + "DOM (reused) + to_string": { + "us": 1366.8, "level": "full" } } @@ -10838,14 +10838,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 1417.4, + "us": 1497.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 1417.4, + "us": 1497.5, "level": "no UTF-8" } } @@ -10853,27 +10853,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 5941.5, + "us": 6174.8, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 1292.0, + "us": 1298.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 1292.0, + "us": 1298.9, "level": "partial" }, "generic (strict)": { - "us": 5941.5, + "us": 6174.8, "level": "full" }, "generic": { - "us": 5978.0, + "us": 6275.9, "level": "partial" } }, @@ -10885,31 +10885,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 2525.2, + "us": 2498.1, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 2525.2, + "us": 2498.1, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 2498.2, + "us": 2521.5, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 2498.2, + "us": 2521.5, "level": "full" }, "variants": { - "parser (reused) + serialize": { - "us": 2498.2, + "parse + serialize": { + "us": 2498.1, "level": "full" }, - "parse + serialize": { - "us": 2525.2, + "parser (reused) + serialize": { + "us": 2521.5, "level": "full" } } @@ -10917,63 +10917,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 2382.4, + "us": 2428.6, "level": "full" }, "best_any": { - "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 2314.5, - "level": "no UTF-8" + "variant": "SAX to Writer (string stream)", + "us": 2428.6, + "level": "full" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2811.2, + "us": 2997.3, "level": "full" }, "best_reused_any": { - "variant": "Document + Writer (reused allocator)", - "us": 2811.2, - "level": "full" + "variant": "Document + Writer (reused allocator) (no encoding check)", + "us": 2992.6, + "level": "no UTF-8" }, "variants": { - "SAX to Writer (string stream) (no encoding check)": { - "us": 2314.5, - "level": "no UTF-8" - }, "SAX to Writer (string stream)": { - "us": 2382.4, + "us": 2428.6, "level": "full" }, + "SAX to Writer (string stream) (no encoding check)": { + "us": 2439.6, + "level": "no UTF-8" + }, "SAX to Writer (no encoding check)": { - "us": 2387.7, + "us": 2469.5, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 2623.9, + "us": 2780.8, "level": "no UTF-8" }, "SAX to Writer": { - "us": 2755.5, - "level": "full" - }, - "Document + Writer (no encoding check)": { - "us": 2774.0, - "level": "no UTF-8" - }, - "Document + Writer (reused allocator)": { - "us": 2811.2, + "us": 2875.6, "level": "full" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 2862.5, + "us": 2992.6, + "level": "no UTF-8" + }, + "Document + Writer (reused allocator)": { + "us": 2997.3, + "level": "full" + }, + "Document + Writer (no encoding check)": { + "us": 3050.3, "level": "no UTF-8" }, "SAX to Writer (raw numbers)": { - "us": 3119.6, + "us": 3194.5, "level": "full" }, "Document + Writer": { - "us": 3228.6, + "us": 3311.3, "level": "full" } } @@ -11043,39 +11043,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 2196.2, + "us": 2150.3, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 2196.2, + "us": 2150.3, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 5381.2, + "us": 5212.0, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 5381.2, + "us": 5212.0, "level": "full" }, "variants": { "parse + dump (source numbers)": { - "us": 2196.2, + "us": 2150.3, "level": "full" }, "parse + dump": { - "us": 5240.0, + "us": 5208.7, "level": "full" }, "read + dump (reused)": { - "us": 5381.2, + "us": 5212.0, "level": "full" }, "parse_copy + dump": { - "us": 5650.7, + "us": 5595.2, "level": "full" } } @@ -11083,19 +11083,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 16625.5, + "us": 13402.5, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 16625.5, + "us": 13402.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 16625.5, + "us": 13402.5, "level": "full" } } @@ -11103,43 +11103,43 @@ "yyjson": { "best": { "variant": "read (raw numbers) + write", - "us": 2900.7, + "us": 2859.5, "level": "full" }, "best_any": { "variant": "read (raw numbers) + write", - "us": 2900.7, + "us": 2859.5, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 7057.5, + "us": 6718.8, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 7057.5, + "us": 6718.8, "level": "full" }, "variants": { "read (raw numbers) + write": { - "us": 2900.7, + "us": 2859.5, "level": "full" }, "insitu (copy untimed) + write": { - "us": 6701.2, - "level": "full" - }, - "insitu (copy) + write": { - "us": 6988.5, + "us": 6585.7, "level": "full" }, "read + write": { - "us": 6999.3, + "us": 6630.5, + "level": "full" + }, + "insitu (copy) + write": { + "us": 6634.0, "level": "full" }, "read + write (reused allocator)": { - "us": 7057.5, + "us": 6718.8, "level": "full" } } @@ -11147,35 +11147,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 9135.2, + "us": 8606.5, "level": "full" }, "best_any": { "variant": "minify", - "us": 311.9, + "us": 314.2, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 8851.4, + "us": 8584.8, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 8851.4, + "us": 8584.8, "level": "full" }, "variants": { "minify": { - "us": 311.9, + "us": 314.2, "level": "partial" }, "DOM (reused) + to_string": { - "us": 8851.4, + "us": 8584.8, "level": "full" }, "DOM + to_string": { - "us": 9135.2, + "us": 8606.5, "level": "full" } } @@ -11184,14 +11184,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 8958.4, + "us": 8353.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 8958.4, + "us": 8353.6, "level": "no UTF-8" } } @@ -11199,27 +11199,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 22138.1, + "us": 20960.9, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 2726.4, + "us": 2698.7, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 2726.4, + "us": 2698.7, "level": "partial" }, "generic (strict)": { - "us": 22138.1, + "us": 20960.9, "level": "full" }, "generic": { - "us": 22728.1, + "us": 21073.7, "level": "partial" } }, @@ -11231,31 +11231,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 12747.7, + "us": 12366.7, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 12747.7, + "us": 12366.7, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 13260.2, + "us": 12415.3, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 13260.2, + "us": 12415.3, "level": "full" }, "variants": { "parse + serialize": { - "us": 12747.7, + "us": 12366.7, "level": "full" }, "parser (reused) + serialize": { - "us": 13260.2, + "us": 12415.3, "level": "full" } } @@ -11263,63 +11263,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (raw numbers)", - "us": 14400.4, + "us": 14204.8, "level": "full" }, "best_any": { "variant": "SAX to Writer (raw numbers)", - "us": 14400.4, + "us": 14204.8, "level": "full" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 21158.4, + "us": 20764.2, "level": "full" }, "best_reused_any": { - "variant": "Document + Writer (reused allocator)", - "us": 21158.4, - "level": "full" + "variant": "Document + Writer (reused allocator) (no encoding check)", + "us": 20625.3, + "level": "no UTF-8" }, "variants": { "SAX to Writer (raw numbers)": { - "us": 14400.4, + "us": 14204.8, "level": "full" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 14666.2, + "us": 14310.7, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 19548.0, + "us": 18809.7, "level": "full" }, "SAX to Writer (string stream) (no encoding check)": { - "us": 19577.5, + "us": 19345.8, + "level": "no UTF-8" + }, + "Document + Writer (reused allocator) (no encoding check)": { + "us": 20625.3, + "level": "no UTF-8" + }, + "Document + Writer (no encoding check)": { + "us": 20702.5, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 21158.4, + "us": 20764.2, + "level": "full" + }, + "Document + Writer": { + "us": 20783.7, "level": "full" }, "SAX to Writer": { - "us": 21185.7, + "us": 21444.6, "level": "full" }, - "Document + Writer (reused allocator) (no encoding check)": { - "us": 21372.9, - "level": "no UTF-8" - }, "SAX to Writer (no encoding check)": { - "us": 22129.2, - "level": "no UTF-8" - }, - "Document + Writer": { - "us": 22260.0, - "level": "full" - }, - "Document + Writer (no encoding check)": { - "us": 22285.3, + "us": 21651.9, "level": "no UTF-8" } } @@ -11389,39 +11389,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 143205.7, + "us": 145663.9, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 143205.7, + "us": 145663.9, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 109335.3, + "us": 110500.4, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 109335.3, + "us": 110500.4, "level": "full" }, "variants": { "read + dump (reused)": { - "us": 109335.3, + "us": 110500.4, "level": "full" }, "parse + dump (source numbers)": { - "us": 143205.7, + "us": 145663.9, "level": "full" }, "parse + dump": { - "us": 143736.6, + "us": 152631.3, "level": "full" }, "parse_copy + dump": { - "us": 180536.2, + "us": 190111.3, "level": "full" } } @@ -11429,63 +11429,63 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 529559.5, + "us": 493302.1, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 529559.5, + "us": 493302.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 529559.5, + "us": 493302.1, "level": "full" } } }, "yyjson": { "best": { - "variant": "read + write", - "us": 188179.2, + "variant": "insitu (copy) + write", + "us": 199086.3, "level": "full" }, "best_any": { - "variant": "read + write", - "us": 188179.2, + "variant": "insitu (copy) + write", + "us": 199086.3, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 98203.6, + "us": 101397.1, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 98203.6, + "us": 101397.1, "level": "full" }, "variants": { "read + write (reused allocator)": { - "us": 98203.6, + "us": 101397.1, "level": "full" }, "insitu (copy untimed) + write": { - "us": 156604.6, - "level": "full" - }, - "read + write": { - "us": 188179.2, + "us": 159462.5, "level": "full" }, "insitu (copy) + write": { - "us": 194880.4, + "us": 199086.3, + "level": "full" + }, + "read + write": { + "us": 202581.9, "level": "full" }, "read (raw numbers) + write": { - "us": 198103.7, + "us": 202691.0, "level": "full" } } @@ -11493,35 +11493,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 269597.1, + "us": 280738.9, "level": "full" }, "best_any": { "variant": "minify", - "us": 42643.5, + "us": 46006.1, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 211456.6, + "us": 215243.9, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 211456.6, + "us": 215243.9, "level": "full" }, "variants": { "minify": { - "us": 42643.5, + "us": 46006.1, "level": "partial" }, "DOM (reused) + to_string": { - "us": 211456.6, + "us": 215243.9, "level": "full" }, "DOM + to_string": { - "us": 269597.1, + "us": 280738.9, "level": "full" } } @@ -11530,14 +11530,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 164630.3, + "us": 173180.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 164630.3, + "us": 173180.5, "level": "no UTF-8" } } @@ -11545,27 +11545,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 450321.8, + "us": 451367.8, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 97377.0, + "us": 93793.8, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 97377.0, + "us": 93793.8, "level": "partial" }, "generic": { - "us": 438618.4, + "us": 439061.2, "level": "partial" }, "generic (strict)": { - "us": 450321.8, + "us": 451367.8, "level": "full" } }, @@ -11577,31 +11577,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 314298.9, + "us": 329300.0, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 314298.9, + "us": 329300.0, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 267865.8, + "us": 272863.9, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 267865.8, + "us": 272863.9, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 267865.8, + "us": 272863.9, "level": "full" }, "parse + serialize": { - "us": 314298.9, + "us": 329300.0, "level": "full" } } @@ -11609,63 +11609,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 231978.8, + "us": 229769.0, "level": "full" }, "best_any": { - "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 224249.3, - "level": "no UTF-8" + "variant": "SAX to Writer (string stream)", + "us": 229769.0, + "level": "full" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 311567.3, + "us": 317841.5, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 304495.2, + "us": 303052.7, "level": "no UTF-8" }, "variants": { - "SAX to Writer (string stream) (no encoding check)": { - "us": 224249.3, - "level": "no UTF-8" - }, "SAX to Writer (string stream)": { - "us": 231978.8, + "us": 229769.0, "level": "full" }, - "SAX to Writer (no encoding check)": { - "us": 271455.5, + "SAX to Writer (string stream) (no encoding check)": { + "us": 230566.1, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 271842.8, + "us": 278677.6, + "level": "no UTF-8" + }, + "SAX to Writer (no encoding check)": { + "us": 283717.4, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 304495.2, + "us": 303052.7, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 304609.8, + "us": 311574.0, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 311567.3, + "us": 317841.5, "level": "full" }, "SAX to Writer": { - "us": 353200.1, + "us": 356410.8, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 367515.2, + "us": 359424.7, "level": "full" }, "Document + Writer": { - "us": 387659.4, + "us": 400965.7, "level": "full" } } @@ -11745,12 +11745,12 @@ }, "best_reused": { "variant": "read + dump (reused)", - "us": 2.4, + "us": 2.6, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 2.4, + "us": 2.6, "level": "full" }, "variants": { @@ -11758,80 +11758,80 @@ "us": 2.4, "level": "full" }, - "read + dump (reused)": { - "us": 2.4, - "level": "full" - }, "parse + dump": { - "us": 2.5, + "us": 2.6, "level": "full" }, "parse_copy + dump": { "us": 2.6, "level": "full" + }, + "read + dump (reused)": { + "us": 2.6, + "level": "full" } } }, "nlohmann json": { "best": { "variant": "parse + dump", - "us": 19.2, + "us": 18.4, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 19.2, + "us": 18.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 19.2, + "us": 18.4, "level": "full" } } }, "yyjson": { "best": { - "variant": "read + write", - "us": 2.9, + "variant": "insitu (copy) + write", + "us": 3.0, "level": "full" }, "best_any": { - "variant": "read + write", - "us": 2.9, + "variant": "insitu (copy) + write", + "us": 3.0, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 2.6, + "us": 2.7, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 2.6, + "us": 2.7, "level": "full" }, "variants": { "read + write (reused allocator)": { - "us": 2.6, + "us": 2.7, "level": "full" }, "insitu (copy untimed) + write": { "us": 2.8, "level": "full" }, - "read + write": { - "us": 2.9, + "insitu (copy) + write": { + "us": 3.0, "level": "full" }, - "insitu (copy) + write": { - "us": 2.9, + "read + write": { + "us": 3.1, "level": "full" }, "read (raw numbers) + write": { - "us": 2.9, + "us": 3.1, "level": "full" } } @@ -11839,7 +11839,7 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 3.7, + "us": 3.9, "level": "full" }, "best_any": { @@ -11849,12 +11849,12 @@ }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 3.3, + "us": 3.5, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 3.3, + "us": 3.5, "level": "full" }, "variants": { @@ -11863,11 +11863,11 @@ "level": "partial" }, "DOM (reused) + to_string": { - "us": 3.3, + "us": 3.5, "level": "full" }, "DOM + to_string": { - "us": 3.7, + "us": 3.9, "level": "full" } } @@ -11891,27 +11891,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 14.0, + "us": 15.3, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 1.9, + "us": 2.1, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 1.9, + "us": 2.1, "level": "partial" }, "generic": { - "us": 13.5, + "us": 14.7, "level": "partial" }, "generic (strict)": { - "us": 14.0, + "us": 15.3, "level": "full" } }, @@ -11923,31 +11923,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 8.6, + "us": 8.9, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 8.6, + "us": 8.9, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 8.2, + "us": 8.7, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 8.2, + "us": 8.7, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 8.2, + "us": 8.7, "level": "full" }, "parse + serialize": { - "us": 8.6, + "us": 8.9, "level": "full" } } @@ -11955,63 +11955,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 8.2, + "us": 9.0, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 6.2, + "us": 6.7, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 11.5, + "us": 12.1, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 10.8, + "us": 11.6, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 6.2, + "us": 6.7, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 8.2, + "us": 9.0, "level": "full" }, "SAX to Writer (no encoding check)": { - "us": 9.5, + "us": 10.1, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 10.0, + "us": 10.9, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 10.8, + "us": 11.6, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 11.3, + "us": 12.0, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 11.5, - "level": "full" - }, - "SAX to Writer": { - "us": 13.7, + "us": 12.1, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 13.9, + "us": 14.4, + "level": "full" + }, + "SAX to Writer": { + "us": 14.9, "level": "full" }, "Document + Writer": { - "us": 15.2, + "us": 16.5, "level": "full" } } @@ -12081,39 +12081,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 410.0, + "us": 404.1, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 410.0, + "us": 404.1, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 417.5, + "us": 413.1, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 417.5, + "us": 413.1, "level": "full" }, "variants": { "parse + dump (source numbers)": { - "us": 410.0, + "us": 404.1, "level": "full" }, "read + dump (reused)": { - "us": 417.5, + "us": 413.1, "level": "full" }, "parse + dump": { - "us": 423.3, + "us": 422.9, "level": "full" }, "parse_copy + dump": { - "us": 456.2, + "us": 453.3, "level": "full" } } @@ -12121,63 +12121,63 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 3605.1, + "us": 3238.3, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 3605.1, + "us": 3238.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 3605.1, + "us": 3238.3, "level": "full" } } }, "yyjson": { "best": { - "variant": "read + write", - "us": 542.4, + "variant": "insitu (copy) + write", + "us": 539.5, "level": "full" }, "best_any": { - "variant": "read + write", - "us": 542.4, + "variant": "insitu (copy) + write", + "us": 539.5, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 540.0, + "us": 544.7, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 540.0, + "us": 544.7, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 518.2, - "level": "full" - }, - "read + write (reused allocator)": { - "us": 540.0, - "level": "full" - }, - "read + write": { - "us": 542.4, + "us": 515.1, "level": "full" }, "insitu (copy) + write": { - "us": 545.2, + "us": 539.5, + "level": "full" + }, + "read + write": { + "us": 541.8, "level": "full" }, "read (raw numbers) + write": { - "us": 547.7, + "us": 542.4, + "level": "full" + }, + "read + write (reused allocator)": { + "us": 544.7, "level": "full" } } @@ -12185,35 +12185,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 654.5, + "us": 655.0, "level": "full" }, "best_any": { "variant": "minify", - "us": 67.7, + "us": 77.3, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 652.4, + "us": 655.7, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 652.4, + "us": 655.7, "level": "full" }, "variants": { "minify": { - "us": 67.7, + "us": 77.3, "level": "partial" }, - "DOM (reused) + to_string": { - "us": 652.4, + "DOM + to_string": { + "us": 655.0, "level": "full" }, - "DOM + to_string": { - "us": 654.5, + "DOM (reused) + to_string": { + "us": 655.7, "level": "full" } } @@ -12222,14 +12222,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 526.3, + "us": 531.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 526.3, + "us": 531.7, "level": "no UTF-8" } } @@ -12237,27 +12237,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3043.3, + "us": 3033.6, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 350.0, + "us": 355.3, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 350.0, + "us": 355.3, "level": "partial" }, "generic": { - "us": 2990.2, + "us": 3002.9, "level": "partial" }, "generic (strict)": { - "us": 3043.3, + "us": 3033.6, "level": "full" } }, @@ -12269,31 +12269,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 1668.0, + "us": 1678.5, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 1668.0, + "us": 1678.5, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 1661.0, + "us": 1662.5, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 1661.0, + "us": 1662.5, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 1661.0, + "us": 1662.5, "level": "full" }, "parse + serialize": { - "us": 1668.0, + "us": 1678.5, "level": "full" } } @@ -12301,63 +12301,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 1438.5, + "us": 1466.8, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 1420.4, + "us": 1422.8, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2079.8, + "us": 2087.1, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 1952.6, + "us": 1949.2, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 1420.4, + "us": 1422.8, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 1438.5, + "us": 1466.8, "level": "full" }, "SAX to Writer (no encoding check)": { - "us": 1692.4, + "us": 1674.0, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 1752.8, + "us": 1774.9, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 1929.4, + "us": 1937.8, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 1952.6, + "us": 1949.2, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 2079.8, + "us": 2087.1, "level": "full" }, "SAX to Writer": { - "us": 2365.1, + "us": 2408.1, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 2441.8, + "us": 2428.9, "level": "full" }, "Document + Writer": { - "us": 2681.5, + "us": 2640.4, "level": "full" } } @@ -12427,39 +12427,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 746.3, + "us": 737.6, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 746.3, + "us": 737.6, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 760.4, + "us": 768.4, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 760.4, + "us": 768.4, "level": "full" }, "variants": { "parse + dump (source numbers)": { - "us": 746.3, - "level": "full" - }, - "read + dump (reused)": { - "us": 760.4, + "us": 737.6, "level": "full" }, "parse + dump": { - "us": 760.8, + "us": 760.9, + "level": "full" + }, + "read + dump (reused)": { + "us": 768.4, "level": "full" }, "parse_copy + dump": { - "us": 795.0, + "us": 800.8, "level": "full" } } @@ -12467,19 +12467,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 5370.2, + "us": 4785.2, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 5370.2, + "us": 4785.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 5370.2, + "us": 4785.2, "level": "full" } } @@ -12487,43 +12487,43 @@ "yyjson": { "best": { "variant": "read (raw numbers) + write", - "us": 773.7, + "us": 781.6, "level": "full" }, "best_any": { "variant": "read (raw numbers) + write", - "us": 773.7, + "us": 781.6, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 811.6, + "us": 820.4, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 811.6, + "us": 820.4, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 772.8, + "us": 779.9, "level": "full" }, "read (raw numbers) + write": { - "us": 773.7, + "us": 781.6, "level": "full" }, "insitu (copy) + write": { - "us": 807.0, + "us": 807.8, "level": "full" }, "read + write (reused allocator)": { - "us": 811.6, + "us": 820.4, "level": "full" }, "read + write": { - "us": 818.0, + "us": 836.7, "level": "full" } } @@ -12531,35 +12531,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 1160.0, + "us": 1239.0, "level": "full" }, "best_any": { "variant": "minify", - "us": 69.3, + "us": 69.4, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 1163.9, + "us": 1214.0, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 1163.9, + "us": 1214.0, "level": "full" }, "variants": { "minify": { - "us": 69.3, + "us": 69.4, "level": "partial" }, - "DOM + to_string": { - "us": 1160.0, + "DOM (reused) + to_string": { + "us": 1214.0, "level": "full" }, - "DOM (reused) + to_string": { - "us": 1163.9, + "DOM + to_string": { + "us": 1239.0, "level": "full" } } @@ -12568,14 +12568,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 1097.8, + "us": 1170.9, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 1097.8, + "us": 1170.9, "level": "no UTF-8" } } @@ -12583,27 +12583,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 5181.4, + "us": 5498.8, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 652.4, + "us": 663.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 652.4, + "us": 663.9, "level": "partial" }, "generic": { - "us": 5048.5, + "us": 5177.7, "level": "partial" }, "generic (strict)": { - "us": 5181.4, + "us": 5498.8, "level": "full" } }, @@ -12615,31 +12615,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 2193.8, + "us": 2222.0, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 2193.8, + "us": 2222.0, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 2174.7, + "us": 2289.9, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 2174.7, + "us": 2289.9, "level": "full" }, "variants": { - "parser (reused) + serialize": { - "us": 2174.7, + "parse + serialize": { + "us": 2222.0, "level": "full" }, - "parse + serialize": { - "us": 2193.8, + "parser (reused) + serialize": { + "us": 2289.9, "level": "full" } } @@ -12647,63 +12647,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 1849.8, + "us": 1900.7, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream)", - "us": 1849.8, + "us": 1900.7, "level": "full" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2614.0, + "us": 2756.3, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator)", - "us": 2614.0, + "us": 2756.3, "level": "full" }, "variants": { "SAX to Writer (string stream)": { - "us": 1849.8, + "us": 1900.7, "level": "full" }, "SAX to Writer (string stream) (no encoding check)": { - "us": 1880.8, + "us": 1928.2, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 2174.6, + "us": 2224.2, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 2451.7, + "us": 2557.9, "level": "no UTF-8" }, "SAX to Writer": { - "us": 2529.6, + "us": 2696.1, "level": "full" }, - "Document + Writer (no encoding check)": { - "us": 2586.4, - "level": "no UTF-8" - }, "Document + Writer (reused allocator)": { - "us": 2614.0, + "us": 2756.3, "level": "full" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 2662.9, + "us": 2797.1, + "level": "no UTF-8" + }, + "Document + Writer (no encoding check)": { + "us": 2830.1, "level": "no UTF-8" }, "SAX to Writer (raw numbers)": { - "us": 2886.8, + "us": 3065.3, "level": "full" }, "Document + Writer": { - "us": 3109.2, + "us": 3268.0, "level": "full" } } @@ -12775,23 +12775,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 140.4, + "us": 139.2, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 140.4, + "us": 139.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 140.4, + "us": 139.2, "level": "n/a" }, "dump": { - "us": 155.7, + "us": 154.0, "level": "n/a" } } @@ -12799,19 +12799,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 443.8, + "us": 412.8, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 443.8, + "us": 412.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 443.8, + "us": 412.8, "level": "n/a" } } @@ -12819,19 +12819,19 @@ "yyjson": { "best": { "variant": "write", - "us": 215.3, + "us": 184.6, "level": "n/a" }, "best_any": { "variant": "write", - "us": 215.3, + "us": 184.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 215.3, + "us": 184.6, "level": "n/a" } } @@ -12839,19 +12839,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 361.3, + "us": 346.2, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 361.3, + "us": 346.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 361.3, + "us": 346.2, "level": "n/a" } } @@ -12859,19 +12859,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 678.3, + "us": 637.8, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 678.3, + "us": 637.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 678.3, + "us": 637.8, "level": "n/a" } } @@ -12879,19 +12879,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 248.6, + "us": 258.2, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 248.6, + "us": 258.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 248.6, + "us": 258.2, "level": "n/a" } } @@ -12899,23 +12899,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 381.2, + "us": 376.6, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 381.2, + "us": 376.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 381.2, + "us": 376.6, "level": "n/a" }, "generic (strict)": { - "us": 450.7, + "us": 408.5, "level": "n/a" } }, @@ -12927,19 +12927,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 469.0, + "us": 450.8, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 469.0, + "us": 450.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 469.0, + "us": 450.8, "level": "n/a" } } @@ -13009,23 +13009,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 230.0, + "us": 229.4, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 230.0, + "us": 229.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 230.0, + "us": 229.4, "level": "n/a" }, "dump": { - "us": 250.9, + "us": 250.6, "level": "n/a" } } @@ -13033,19 +13033,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 639.6, + "us": 610.8, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 639.6, + "us": 610.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 639.6, + "us": 610.8, "level": "n/a" } } @@ -13053,19 +13053,19 @@ "yyjson": { "best": { "variant": "write", - "us": 318.9, + "us": 317.8, "level": "n/a" }, "best_any": { "variant": "write", - "us": 318.9, + "us": 317.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 318.9, + "us": 317.8, "level": "n/a" } } @@ -13073,19 +13073,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 613.9, + "us": 609.8, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 613.9, + "us": 609.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 613.9, + "us": 609.8, "level": "n/a" } } @@ -13093,19 +13093,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 979.3, + "us": 983.5, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 979.3, + "us": 983.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 979.3, + "us": 983.5, "level": "n/a" } } @@ -13113,19 +13113,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 509.4, + "us": 507.6, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 509.4, + "us": 507.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 509.4, + "us": 507.6, "level": "n/a" } } @@ -13133,23 +13133,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 730.3, + "us": 730.0, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 730.3, + "us": 730.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 730.3, + "us": 730.0, "level": "n/a" }, "generic (strict)": { - "us": 738.7, + "us": 739.4, "level": "n/a" } }, @@ -13161,19 +13161,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 829.8, + "us": 832.0, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 829.8, + "us": 832.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 829.8, + "us": 832.0, "level": "n/a" } } @@ -13243,23 +13243,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 823.3, + "us": 831.0, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 823.3, + "us": 831.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 823.3, + "us": 831.0, "level": "n/a" }, "dump": { - "us": 3842.2, + "us": 3945.7, "level": "n/a" } } @@ -13267,19 +13267,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 4088.6, + "us": 3904.9, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 4088.6, + "us": 3904.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 4088.6, + "us": 3904.9, "level": "n/a" } } @@ -13287,19 +13287,19 @@ "yyjson": { "best": { "variant": "write", - "us": 3359.8, + "us": 3329.5, "level": "n/a" }, "best_any": { "variant": "write", - "us": 3359.8, + "us": 3329.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 3359.8, + "us": 3329.5, "level": "n/a" } } @@ -13307,19 +13307,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 5609.3, + "us": 5580.0, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 5609.3, + "us": 5580.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 5609.3, + "us": 5580.0, "level": "n/a" } } @@ -13327,19 +13327,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 9095.1, + "us": 8885.9, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 9095.1, + "us": 8885.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 9095.1, + "us": 8885.9, "level": "n/a" } } @@ -13347,19 +13347,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 5074.3, + "us": 5076.9, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 5074.3, + "us": 5076.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 5074.3, + "us": 5076.9, "level": "n/a" } } @@ -13367,23 +13367,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 4070.6, + "us": 4050.0, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 4070.6, + "us": 4050.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 4070.6, + "us": 4050.0, "level": "n/a" }, "generic (strict)": { - "us": 4085.7, + "us": 4082.6, "level": "n/a" } }, @@ -13395,19 +13395,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 5658.6, + "us": 5570.4, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 5658.6, + "us": 5570.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 5658.6, + "us": 5570.4, "level": "n/a" } } @@ -13477,23 +13477,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 65375.7, + "us": 62865.9, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 65375.7, + "us": 62865.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 65375.7, + "us": 62865.9, "level": "n/a" }, "dump": { - "us": 67769.0, + "us": 64775.7, "level": "n/a" } } @@ -13501,19 +13501,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 117316.2, + "us": 113990.4, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 117316.2, + "us": 113990.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 117316.2, + "us": 113990.4, "level": "n/a" } } @@ -13521,19 +13521,19 @@ "yyjson": { "best": { "variant": "write", - "us": 66669.1, + "us": 67530.6, "level": "n/a" }, "best_any": { "variant": "write", - "us": 66669.1, + "us": 67530.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 66669.1, + "us": 67530.6, "level": "n/a" } } @@ -13541,19 +13541,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 158492.1, + "us": 158669.8, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 158492.1, + "us": 158669.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 158492.1, + "us": 158669.8, "level": "n/a" } } @@ -13561,19 +13561,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 131408.2, + "us": 131434.6, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 131408.2, + "us": 131434.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 131408.2, + "us": 131434.6, "level": "n/a" } } @@ -13581,19 +13581,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 69916.0, + "us": 72261.9, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 69916.0, + "us": 72261.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 69916.0, + "us": 72261.9, "level": "n/a" } } @@ -13601,23 +13601,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 131946.3, + "us": 129719.5, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 131946.3, + "us": 129719.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 131946.3, + "us": 129719.5, "level": "n/a" }, "generic (strict)": { - "us": 144261.7, + "us": 138641.0, "level": "n/a" } }, @@ -13629,19 +13629,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 144173.9, + "us": 138780.0, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 144173.9, + "us": 138780.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 144173.9, + "us": 138780.0, "level": "n/a" } } @@ -13795,19 +13795,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 3.8, + "us": 3.9, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 3.8, + "us": 3.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 3.8, + "us": 3.9, "level": "n/a" } } @@ -13945,23 +13945,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 133.7, + "us": 137.0, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 133.7, + "us": 137.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 133.7, + "us": 137.0, "level": "n/a" }, "dump": { - "us": 150.4, + "us": 150.6, "level": "n/a" } } @@ -13969,19 +13969,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 429.0, + "us": 424.8, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 429.0, + "us": 424.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 429.0, + "us": 424.8, "level": "n/a" } } @@ -13989,19 +13989,19 @@ "yyjson": { "best": { "variant": "write", - "us": 201.3, + "us": 185.1, "level": "n/a" }, "best_any": { "variant": "write", - "us": 201.3, + "us": 185.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 201.3, + "us": 185.1, "level": "n/a" } } @@ -14009,19 +14009,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 349.4, + "us": 348.9, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 349.4, + "us": 348.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 349.4, + "us": 348.9, "level": "n/a" } } @@ -14029,19 +14029,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 620.4, + "us": 630.4, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 620.4, + "us": 630.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 620.4, + "us": 630.4, "level": "n/a" } } @@ -14049,19 +14049,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 228.6, + "us": 234.5, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 228.6, + "us": 234.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 228.6, + "us": 234.5, "level": "n/a" } } @@ -14069,23 +14069,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 377.3, + "us": 378.6, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 377.3, + "us": 378.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 377.3, + "us": 378.6, "level": "n/a" }, "generic (strict)": { - "us": 415.3, + "us": 411.7, "level": "n/a" } }, @@ -14097,19 +14097,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 456.4, + "us": 452.9, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 456.4, + "us": 452.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 456.4, + "us": 452.9, "level": "n/a" } } @@ -14179,23 +14179,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 240.1, + "us": 225.6, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 240.1, + "us": 225.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 240.1, + "us": 225.6, "level": "n/a" }, "dump": { - "us": 271.3, + "us": 247.4, "level": "n/a" } } @@ -14203,19 +14203,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 675.9, + "us": 629.5, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 675.9, + "us": 629.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 675.9, + "us": 629.5, "level": "n/a" } } @@ -14223,19 +14223,19 @@ "yyjson": { "best": { "variant": "write", - "us": 347.7, + "us": 316.1, "level": "n/a" }, "best_any": { "variant": "write", - "us": 347.7, + "us": 316.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 347.7, + "us": 316.1, "level": "n/a" } } @@ -14243,19 +14243,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 648.5, + "us": 613.9, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 648.5, + "us": 613.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 648.5, + "us": 613.9, "level": "n/a" } } @@ -14263,19 +14263,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 1057.5, + "us": 984.1, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 1057.5, + "us": 984.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 1057.5, + "us": 984.1, "level": "n/a" } } @@ -14283,43 +14283,43 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 532.0, + "us": 500.3, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 532.0, + "us": 500.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 532.0, + "us": 500.3, "level": "n/a" } } }, "Glaze": { "best": { - "variant": "generic (strict)", - "us": 784.1, + "variant": "generic", + "us": 737.2, "level": "n/a" }, "best_any": { - "variant": "generic (strict)", - "us": 784.1, + "variant": "generic", + "us": 737.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (strict)": { - "us": 784.1, + "generic": { + "us": 737.2, "level": "n/a" }, - "generic": { - "us": 796.7, + "generic (strict)": { + "us": 773.4, "level": "n/a" } }, @@ -14331,19 +14331,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 907.4, + "us": 871.5, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 907.4, + "us": 871.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 907.4, + "us": 871.5, "level": "n/a" } } diff --git a/docs/mkdocs/scripts/figures/data/perf_usecases_x86-gcc13.json b/docs/mkdocs/scripts/figures/data/perf_usecases_x86-gcc13.json index 454c67200..f8f6b984a 100644 --- a/docs/mkdocs/scripts/figures/data/perf_usecases_x86-gcc13.json +++ b/docs/mkdocs/scripts/figures/data/perf_usecases_x86-gcc13.json @@ -4,35 +4,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 271.0, + "us": 266.9, "level": "full" }, "best_any": { "variant": "accept", - "us": 271.0, + "us": 266.9, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 313.2, + "us": 306.4, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 313.2, + "us": 306.4, "level": "full" }, "variants": { "accept": { - "us": 271.0, + "us": 266.9, "level": "full" }, "read (reused)": { - "us": 313.2, + "us": 306.4, "level": "full" }, "parse": { - "us": 319.2, + "us": 314.5, "level": "full" } } @@ -40,23 +40,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 677.0, + "us": 311.5, "level": "full" }, "best_any": { "variant": "accept", - "us": 677.0, + "us": 311.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 677.0, + "us": 311.5, "level": "full" }, "parse": { - "us": 3472.5, + "us": 3045.2, "level": "full" } } @@ -64,43 +64,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 390.8, + "us": 393.5, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 390.8, + "us": 393.5, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 396.6, + "us": 403.5, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 396.6, + "us": 403.5, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 347.9, + "us": 348.2, "level": "full" }, "insitu (copy)": { - "us": 390.8, - "level": "full" - }, - "read (raw numbers)": { - "us": 394.2, + "us": 393.5, "level": "full" }, "read": { - "us": 395.0, + "us": 394.0, + "level": "full" + }, + "read (raw numbers)": { + "us": 394.8, "level": "full" }, "read (reused allocator)": { - "us": 396.6, + "us": 403.5, "level": "full" } } @@ -108,31 +108,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 311.2, + "us": 309.4, "level": "full" }, "best_any": { "variant": "DOM", - "us": 311.2, + "us": 309.4, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 312.2, + "us": 310.6, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 312.2, + "us": 310.6, "level": "full" }, "variants": { "DOM": { - "us": 311.2, + "us": 309.4, "level": "full" }, "DOM (reused)": { - "us": 312.2, + "us": 310.6, "level": "full" } } @@ -141,14 +141,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 408.4, + "us": 409.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 408.4, + "us": 409.3, "level": "no UTF-8" } } @@ -156,83 +156,83 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 590.1, + "us": 584.4, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 590.1, + "us": 584.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 590.1, + "us": 584.4, + "level": "full" + }, + "generic (double, strict)": { + "us": 2315.5, "level": "full" }, "generic (double)": { - "us": 2313.6, - "level": "partial" - }, - "generic (double, strict)": { - "us": 2328.4, - "level": "full" - }, - "generic": { - "us": 2968.4, + "us": 2344.0, "level": "partial" }, "generic (strict)": { - "us": 2986.2, + "us": 2986.7, "level": "full" + }, + "generic": { + "us": 3083.9, + "level": "partial" } } }, "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 709.8, + "us": 730.0, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 709.8, + "us": 730.0, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 721.3, + "us": 729.7, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 721.3, + "us": 729.7, "level": "full" }, "variants": { - "SAX (numbers: none)": { - "us": 709.8, + "SAX (reused)": { + "us": 729.7, "level": "full" }, - "SAX (reused)": { - "us": 721.3, + "SAX (numbers: none)": { + "us": 730.0, "level": "full" }, "SAX": { - "us": 721.9, + "us": 740.0, "level": "full" }, "parse (numbers: none)": { - "us": 1416.7, + "us": 1391.2, "level": "full" }, "parser (reused)": { - "us": 1426.9, + "us": 1394.6, "level": "full" }, "parse": { - "us": 1436.7, + "us": 1402.9, "level": "full" } } @@ -240,95 +240,95 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1594.8, + "us": 1200.8, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1116.1, + "us": 1033.2, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1569.9, + "us": 1604.4, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1526.8, + "us": 1476.2, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1082.1, + "us": 983.4, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1116.1, - "level": "no UTF-8" - }, - "SAX (string stream, default precision) (no encoding check)": { - "us": 1195.8, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 1220.0, - "level": "no UTF-8" - }, - "SAX (default precision) (no encoding check)": { - "us": 1354.2, - "level": "no UTF-8" - }, - "SAX (no encoding check)": { - "us": 1397.4, - "level": "no UTF-8" - }, - "SAX (raw numbers) (no encoding check)": { - "us": 1428.9, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 1495.6, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 1526.8, + "us": 1033.2, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1551.7, - "level": "full" - }, - "Document (reused allocator)": { - "us": 1569.9, + "us": 1157.7, "level": "full" }, "insitu (copy)": { - "us": 1594.8, + "us": 1200.8, + "level": "full" + }, + "SAX (string stream, default precision) (no encoding check)": { + "us": 1201.6, + "level": "no UTF-8" + }, + "SAX (string stream) (no encoding check)": { + "us": 1222.0, + "level": "no UTF-8" + }, + "SAX (default precision) (no encoding check)": { + "us": 1349.4, + "level": "no UTF-8" + }, + "SAX (no encoding check)": { + "us": 1370.3, + "level": "no UTF-8" + }, + "SAX (raw numbers) (no encoding check)": { + "us": 1442.8, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 1476.2, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 1492.8, + "level": "no UTF-8" + }, + "Document (reused allocator)": { + "us": 1604.4, "level": "full" }, "SAX (string stream)": { - "us": 2184.6, + "us": 2154.7, "level": "full" }, "SAX (string stream, default precision)": { - "us": 2236.5, + "us": 2179.6, "level": "full" }, "SAX (default precision)": { - "us": 2253.6, + "us": 2268.9, "level": "full" }, "SAX": { - "us": 2307.9, + "us": 2313.8, "level": "full" }, "SAX (raw numbers)": { - "us": 2354.1, + "us": 2350.3, "level": "full" }, "Document": { - "us": 2387.4, + "us": 2436.2, "level": "full" } } @@ -426,35 +426,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 608.8, + "us": 664.1, "level": "full" }, "best_any": { "variant": "accept", - "us": 608.8, + "us": 664.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 758.1, + "us": 846.1, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 758.1, + "us": 846.1, "level": "full" }, "variants": { "accept": { - "us": 608.8, - "level": "full" - }, - "read (reused)": { - "us": 758.1, + "us": 664.1, "level": "full" }, "parse": { - "us": 805.9, + "us": 839.9, + "level": "full" + }, + "read (reused)": { + "us": 846.1, "level": "full" } } @@ -462,67 +462,67 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 1432.8, + "us": 685.7, "level": "full" }, "best_any": { "variant": "accept", - "us": 1432.8, + "us": 685.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 1432.8, + "us": 685.7, "level": "full" }, "parse": { - "us": 5630.2, + "us": 4454.7, "level": "full" } } }, "yyjson": { "best": { - "variant": "read (raw numbers)", - "us": 997.4, + "variant": "read", + "us": 983.6, "level": "full" }, "best_any": { - "variant": "read (raw numbers)", - "us": 997.4, + "variant": "read", + "us": 983.6, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 1139.7, + "us": 1010.6, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1139.7, + "us": 1010.6, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 878.3, - "level": "full" - }, - "read (raw numbers)": { - "us": 997.4, + "us": 869.9, "level": "full" }, "read": { - "us": 1023.2, + "us": 983.6, "level": "full" }, "insitu (copy)": { - "us": 1042.2, + "us": 985.9, + "level": "full" + }, + "read (raw numbers)": { + "us": 988.1, "level": "full" }, "read (reused allocator)": { - "us": 1139.7, + "us": 1010.6, "level": "full" } } @@ -530,31 +530,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 780.3, + "us": 737.1, "level": "full" }, "best_any": { "variant": "DOM", - "us": 780.3, + "us": 737.1, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 788.4, + "us": 736.0, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 788.4, + "us": 736.0, "level": "full" }, "variants": { - "DOM": { - "us": 780.3, + "DOM (reused)": { + "us": 736.0, "level": "full" }, - "DOM (reused)": { - "us": 788.4, + "DOM": { + "us": 737.1, "level": "full" } } @@ -563,14 +563,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1027.8, + "us": 1024.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1027.8, + "us": 1024.8, "level": "no UTF-8" } } @@ -578,179 +578,179 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 1545.1, + "us": 1402.2, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 1545.1, + "us": 1402.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 1545.1, + "us": 1402.2, + "level": "full" + }, + "generic (double, strict)": { + "us": 3855.8, "level": "full" }, "generic (double)": { - "us": 4117.9, + "us": 3950.7, "level": "partial" }, - "generic (double, strict)": { - "us": 4239.7, - "level": "full" - }, - "generic (strict)": { - "us": 6202.0, - "level": "full" - }, "generic": { - "us": 6281.3, + "us": 5485.3, "level": "partial" + }, + "generic (strict)": { + "us": 5674.5, + "level": "full" } } }, "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 969.1, + "us": 933.8, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 969.1, + "us": 933.8, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 989.0, + "us": 998.1, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 989.0, + "us": 998.1, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 969.1, - "level": "full" - }, - "SAX (reused)": { - "us": 989.0, + "us": 933.8, "level": "full" }, "SAX": { - "us": 1016.1, + "us": 998.1, + "level": "full" + }, + "SAX (reused)": { + "us": 998.1, "level": "full" }, "parse (numbers: none)": { - "us": 1867.4, - "level": "full" - }, - "parser (reused)": { - "us": 1979.7, + "us": 1744.4, "level": "full" }, "parse": { - "us": 1987.7, + "us": 1856.3, + "level": "full" + }, + "parser (reused)": { + "us": 1859.0, "level": "full" } } }, "RapidJSON": { "best": { - "variant": "SAX (string stream, default precision)", - "us": 2214.5, + "variant": "insitu (copy)", + "us": 1930.9, "level": "full" }, "best_any": { "variant": "SAX (default precision) (no encoding check)", - "us": 1570.5, + "us": 1487.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1994.7, + "us": 1984.2, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 1994.7, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 1914.2, + "level": "no UTF-8" }, "variants": { "SAX (default precision) (no encoding check)": { - "us": 1570.5, + "us": 1487.3, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1734.1, - "level": "no UTF-8" - }, - "SAX (string stream, default precision) (no encoding check)": { - "us": 1835.5, + "us": 1683.0, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 1991.2, + "us": 1709.1, "level": "no UTF-8" }, - "Document (reused allocator)": { - "us": 1994.7, - "level": "full" - }, - "SAX (raw numbers) (no encoding check)": { - "us": 2008.0, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 2044.7, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 2045.1, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 2062.6, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 2070.9, + "SAX (string stream, default precision) (no encoding check)": { + "us": 1750.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 2209.8, + "us": 1821.1, "level": "full" }, - "SAX (string stream, default precision)": { - "us": 2214.5, + "insitu (copy) (no encoding check)": { + "us": 1822.5, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 1914.2, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 1918.8, + "level": "no UTF-8" + }, + "SAX (raw numbers) (no encoding check)": { + "us": 1926.1, + "level": "no UTF-8" + }, + "insitu (copy)": { + "us": 1930.9, + "level": "full" + }, + "SAX (string stream) (no encoding check)": { + "us": 1972.9, + "level": "no UTF-8" + }, + "Document (reused allocator)": { + "us": 1984.2, "level": "full" }, "SAX (default precision)": { - "us": 2242.6, + "us": 2074.5, + "level": "full" + }, + "SAX (string stream, default precision)": { + "us": 2130.0, "level": "full" }, "SAX": { - "us": 2338.1, - "level": "full" - }, - "insitu (copy)": { - "us": 2384.0, + "us": 2257.3, "level": "full" }, "SAX (string stream)": { - "us": 2620.9, + "us": 2397.1, "level": "full" }, "SAX (raw numbers)": { - "us": 2692.4, + "us": 2483.8, "level": "full" }, "Document": { - "us": 2811.6, + "us": 2536.8, "level": "full" } } @@ -848,35 +848,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 1011.0, + "us": 985.9, "level": "full" }, "best_any": { "variant": "accept", - "us": 1011.0, + "us": 985.9, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 1485.7, + "us": 1359.4, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 1485.7, + "us": 1359.4, "level": "full" }, "variants": { "accept": { - "us": 1011.0, + "us": 985.9, "level": "full" }, "parse": { - "us": 1482.6, + "us": 1358.4, "level": "full" }, "read (reused)": { - "us": 1485.7, + "us": 1359.4, "level": "full" } } @@ -884,23 +884,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 4584.1, + "us": 2345.4, "level": "full" }, "best_any": { "variant": "accept", - "us": 4584.1, + "us": 2345.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 4584.1, + "us": 2345.4, "level": "full" }, "parse": { - "us": 11889.6, + "us": 9100.4, "level": "full" } } @@ -908,43 +908,43 @@ "yyjson": { "best": { "variant": "read (raw numbers)", - "us": 2255.5, + "us": 2221.7, "level": "full" }, "best_any": { "variant": "read (raw numbers)", - "us": 2255.5, + "us": 2221.7, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 5646.5, + "us": 5331.2, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 5646.5, + "us": 5331.2, "level": "full" }, "variants": { "read (raw numbers)": { - "us": 2255.5, - "level": "full" - }, - "insitu (copy)": { - "us": 5502.1, - "level": "full" - }, - "read": { - "us": 5527.5, + "us": 2221.7, "level": "full" }, "insitu (copy untimed)": { - "us": 5629.1, + "us": 5179.8, "level": "full" }, "read (reused allocator)": { - "us": 5646.5, + "us": 5331.2, + "level": "full" + }, + "read": { + "us": 5378.1, + "level": "full" + }, + "insitu (copy)": { + "us": 5491.3, "level": "full" } } @@ -952,31 +952,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 3350.8, + "us": 3183.1, "level": "full" }, "best_any": { "variant": "DOM", - "us": 3350.8, + "us": 3183.1, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 3313.9, + "us": 3186.6, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 3313.9, + "us": 3186.6, "level": "full" }, "variants": { - "DOM (reused)": { - "us": 3313.9, + "DOM": { + "us": 3183.1, "level": "full" }, - "DOM": { - "us": 3350.8, + "DOM (reused)": { + "us": 3186.6, "level": "full" } } @@ -985,14 +985,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3622.5, + "us": 3561.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3622.5, + "us": 3561.1, "level": "no UTF-8" } } @@ -1000,35 +1000,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 1979.8, + "us": 1837.3, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 1979.8, + "us": 1837.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 1979.8, + "us": 1837.3, + "level": "full" + }, + "generic (double, strict)": { + "us": 9708.0, "level": "full" }, "generic (double)": { - "us": 10134.5, + "us": 9885.4, "level": "partial" }, - "generic (double, strict)": { - "us": 10396.5, - "level": "full" - }, "generic": { - "us": 19520.5, + "us": 18873.7, "level": "partial" }, "generic (strict)": { - "us": 19829.4, + "us": 18922.0, "level": "full" } } @@ -1036,47 +1036,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 1717.9, + "us": 1637.2, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 1717.9, + "us": 1637.2, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 5508.4, + "us": 5248.7, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 5508.4, + "us": 5248.7, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 1717.9, + "us": 1637.2, "level": "full" }, "parse (numbers: none)": { - "us": 2958.7, + "us": 2827.8, "level": "full" }, "SAX": { - "us": 5462.1, + "us": 5242.8, "level": "full" }, "SAX (reused)": { - "us": 5508.4, - "level": "full" - }, - "parser (reused)": { - "us": 7315.4, + "us": 5248.7, "level": "full" }, "parse": { - "us": 7324.4, + "us": 6957.2, + "level": "full" + }, + "parser (reused)": { + "us": 6991.2, "level": "full" } } @@ -1084,95 +1084,95 @@ "RapidJSON": { "best": { "variant": "SAX (string stream, default precision)", - "us": 4104.1, + "us": 4113.6, "level": "full" }, "best_any": { - "variant": "SAX (string stream, default precision)", - "us": 4104.1, - "level": "full" + "variant": "SAX (string stream, default precision) (no encoding check)", + "us": 3965.7, + "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 12066.1, + "us": 11583.8, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator) (no encoding check)", - "us": 11773.4, - "level": "no UTF-8" + "variant": "Document (reused allocator)", + "us": 11583.8, + "level": "full" }, "variants": { + "SAX (string stream, default precision) (no encoding check)": { + "us": 3965.7, + "level": "no UTF-8" + }, "SAX (string stream, default precision)": { - "us": 4104.1, + "us": 4113.6, "level": "full" }, "SAX (default precision)": { - "us": 4222.7, + "us": 4163.5, "level": "full" }, - "SAX (string stream, default precision) (no encoding check)": { - "us": 4363.6, - "level": "no UTF-8" - }, "SAX (default precision) (no encoding check)": { - "us": 4755.9, + "us": 4576.6, "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 10579.3, + "us": 10331.0, "level": "no UTF-8" }, "SAX (raw numbers)": { - "us": 10969.3, - "level": "full" - }, - "SAX (string stream) (no encoding check)": { - "us": 11047.5, - "level": "no UTF-8" - }, - "SAX": { - "us": 11206.5, + "us": 10358.8, "level": "full" }, "SAX (string stream)": { - "us": 11404.7, + "us": 11189.4, "level": "full" }, + "SAX": { + "us": 11207.3, + "level": "full" + }, + "SAX (string stream) (no encoding check)": { + "us": 11298.5, + "level": "no UTF-8" + }, "SAX (no encoding check)": { - "us": 11434.2, - "level": "no UTF-8" - }, - "insitu (copy untimed)": { - "us": 11461.5, - "level": "full" - }, - "Document": { - "us": 11730.2, - "level": "full" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 11766.2, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 11773.4, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 11817.2, - "level": "no UTF-8" - }, - "insitu (copy)": { - "us": 11901.4, - "level": "full" - }, - "Document (no encoding check)": { - "us": 12056.3, + "us": 11469.3, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 12066.1, + "us": 11583.8, + "level": "full" + }, + "Document (reused allocator) (no encoding check)": { + "us": 11658.7, + "level": "no UTF-8" + }, + "insitu (copy untimed) (no encoding check)": { + "us": 11714.2, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 11718.2, + "level": "no UTF-8" + }, + "insitu (copy untimed)": { + "us": 11786.4, + "level": "full" + }, + "insitu (copy) (no encoding check)": { + "us": 11928.4, + "level": "no UTF-8" + }, + "insitu (copy)": { + "us": 12050.6, + "level": "full" + }, + "Document": { + "us": 12179.7, "level": "full" } } @@ -1270,35 +1270,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 34722.1, + "us": 34873.6, "level": "full" }, "best_any": { "variant": "accept", - "us": 34722.1, + "us": 34873.6, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 42164.4, + "us": 41107.2, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 42164.4, + "us": 41107.2, "level": "full" }, "variants": { "accept": { - "us": 34722.1, + "us": 34873.6, "level": "full" }, "read (reused)": { - "us": 42164.4, + "us": 41107.2, "level": "full" }, "parse": { - "us": 76936.0, + "us": 76807.7, "level": "full" } } @@ -1306,23 +1306,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 73561.0, + "us": 38947.7, "level": "full" }, "best_any": { "variant": "accept", - "us": 73561.0, + "us": 38947.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 73561.0, + "us": 38947.7, "level": "full" }, "parse": { - "us": 382491.1, + "us": 341826.4, "level": "full" } } @@ -1330,43 +1330,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 128490.1, + "us": 128527.5, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 128490.1, + "us": 128527.5, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 65056.4, + "us": 62804.0, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 65056.4, + "us": 62804.0, "level": "full" }, "variants": { "read (reused allocator)": { - "us": 65056.4, + "us": 62804.0, "level": "full" }, "insitu (copy untimed)": { - "us": 90958.6, + "us": 86512.4, "level": "full" }, "insitu (copy)": { - "us": 128490.1, - "level": "full" - }, - "read (raw numbers)": { - "us": 128990.8, + "us": 128527.5, "level": "full" }, "read": { - "us": 131323.7, + "us": 129469.9, + "level": "full" + }, + "read (raw numbers)": { + "us": 131687.9, "level": "full" } } @@ -1374,31 +1374,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 116703.6, + "us": 115296.4, "level": "full" }, "best_any": { "variant": "DOM", - "us": 116703.6, + "us": 115296.4, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 48271.1, + "us": 52296.2, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 48271.1, + "us": 52296.2, "level": "full" }, "variants": { "DOM (reused)": { - "us": 48271.1, + "us": 52296.2, "level": "full" }, "DOM": { - "us": 116703.6, + "us": 115296.4, "level": "full" } } @@ -1407,14 +1407,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 96080.3, + "us": 96606.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 96080.3, + "us": 96606.7, "level": "no UTF-8" } } @@ -1422,83 +1422,83 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 76009.4, + "us": 71381.7, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 76009.4, + "us": 71381.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 76009.4, + "us": 71381.7, "level": "full" }, "generic (double, strict)": { - "us": 231870.6, + "us": 228211.6, "level": "full" }, "generic (double)": { - "us": 233240.2, + "us": 229849.8, "level": "partial" }, "generic (strict)": { - "us": 329832.4, + "us": 320451.3, "level": "full" }, "generic": { - "us": 331531.4, + "us": 334059.3, "level": "partial" } } }, "Boost.JSON": { "best": { - "variant": "SAX (numbers: none)", - "us": 61476.5, + "variant": "SAX", + "us": 60744.9, "level": "full" }, "best_any": { - "variant": "SAX (numbers: none)", - "us": 61476.5, + "variant": "SAX", + "us": 60744.9, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 62717.1, + "us": 61078.8, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 62717.1, + "us": 61078.8, "level": "full" }, "variants": { - "SAX (numbers: none)": { - "us": 61476.5, + "SAX": { + "us": 60744.9, "level": "full" }, - "SAX": { - "us": 61948.9, + "SAX (numbers: none)": { + "us": 61025.4, "level": "full" }, "SAX (reused)": { - "us": 62717.1, + "us": 61078.8, "level": "full" }, "parser (reused)": { - "us": 134695.0, + "us": 133201.5, "level": "full" }, "parse": { - "us": 188572.0, + "us": 185277.7, "level": "full" }, "parse (numbers: none)": { - "us": 190538.8, + "us": 188742.1, "level": "full" } } @@ -1506,95 +1506,95 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 214648.7, + "us": 145136.8, "level": "full" }, "best_any": { - "variant": "SAX (string stream, default precision) (no encoding check)", - "us": 130900.6, + "variant": "SAX (string stream) (no encoding check)", + "us": 127587.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 191448.2, + "us": 189729.7, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 186590.7, + "us": 188742.5, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 110856.4, - "level": "no UTF-8" - }, - "SAX (string stream, default precision) (no encoding check)": { - "us": 130900.6, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 134485.1, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 154657.3, + "us": 95130.0, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 168746.8, + "us": 105523.0, "level": "full" }, - "SAX (raw numbers) (no encoding check)": { - "us": 171293.7, + "SAX (string stream) (no encoding check)": { + "us": 127587.3, + "level": "no UTF-8" + }, + "SAX (string stream, default precision) (no encoding check)": { + "us": 128983.6, + "level": "no UTF-8" + }, + "insitu (copy) (no encoding check)": { + "us": 140901.5, + "level": "no UTF-8" + }, + "insitu (copy)": { + "us": 145136.8, + "level": "full" + }, + "SAX (no encoding check)": { + "us": 164777.9, "level": "no UTF-8" }, "SAX (default precision) (no encoding check)": { - "us": 171936.5, + "us": 169524.7, "level": "no UTF-8" }, - "SAX (no encoding check)": { - "us": 177498.7, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 186590.7, + "SAX (raw numbers) (no encoding check)": { + "us": 172688.8, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 188878.8, + "us": 187171.8, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 188742.5, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 191448.2, - "level": "full" - }, - "insitu (copy)": { - "us": 214648.7, + "us": 189729.7, "level": "full" }, "SAX (string stream)": { - "us": 250121.1, + "us": 242007.6, "level": "full" }, "SAX (string stream, default precision)": { - "us": 251293.4, + "us": 251596.7, "level": "full" }, "SAX (default precision)": { - "us": 289135.3, - "level": "full" - }, - "SAX": { - "us": 290081.1, + "us": 279258.6, "level": "full" }, "SAX (raw numbers)": { - "us": 301799.9, + "us": 284587.4, + "level": "full" + }, + "SAX": { + "us": 285477.1, "level": "full" }, "Document": { - "us": 305476.3, + "us": 297246.6, "level": "full" } } @@ -1728,23 +1728,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 3.3, + "us": 1.3, "level": "full" }, "best_any": { "variant": "accept", - "us": 3.3, + "us": 1.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 3.3, + "us": 1.3, "level": "full" }, "parse": { - "us": 18.6, + "us": 15.0, "level": "full" } } @@ -1762,31 +1762,31 @@ }, "best_reused": { "variant": "read (reused allocator)", - "us": 1.6, + "us": 1.5, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1.6, + "us": 1.5, "level": "full" }, "variants": { + "read (reused allocator)": { + "us": 1.5, + "level": "full" + }, "read": { "us": 1.6, "level": "full" }, + "insitu (copy)": { + "us": 1.6, + "level": "full" + }, "insitu (copy untimed)": { "us": 1.6, "level": "full" }, - "read (reused allocator)": { - "us": 1.6, - "level": "full" - }, - "insitu (copy)": { - "us": 1.7, - "level": "full" - }, "read (raw numbers)": { "us": 1.7, "level": "full" @@ -1829,14 +1829,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1.6, + "us": 1.5, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1.6, + "us": 1.5, "level": "no UTF-8" } } @@ -1860,20 +1860,20 @@ "level": "full" }, "generic (double, strict)": { - "us": 8.4, + "us": 8.1, "level": "full" }, "generic (double)": { - "us": 8.6, - "level": "partial" - }, - "generic": { - "us": 13.1, + "us": 8.2, "level": "partial" }, "generic (strict)": { - "us": 13.2, + "us": 12.1, "level": "full" + }, + "generic": { + "us": 12.2, + "level": "partial" } } }, @@ -1911,15 +1911,15 @@ "us": 3.2, "level": "full" }, - "parse": { - "us": 6.6, + "parser (reused)": { + "us": 6.4, "level": "full" }, "parse (numbers: none)": { - "us": 6.6, + "us": 6.5, "level": "full" }, - "parser (reused)": { + "parse": { "us": 6.6, "level": "full" } @@ -1928,31 +1928,31 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 7.0, + "us": 4.8, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 3.7, + "us": 3.2, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 8.3, + "us": 8.0, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 7.8, + "us": 7.5, "level": "no UTF-8" }, "variants": { - "insitu (copy) (no encoding check)": { - "us": 3.7, + "insitu (copy untimed) (no encoding check)": { + "us": 3.1, "level": "no UTF-8" }, - "insitu (copy untimed) (no encoding check)": { - "us": 3.8, + "insitu (copy) (no encoding check)": { + "us": 3.2, "level": "no UTF-8" }, "SAX (string stream, default precision) (no encoding check)": { @@ -1960,63 +1960,63 @@ "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 4.4, + "us": 4.3, "level": "no UTF-8" }, - "insitu (copy untimed)": { - "us": 6.9, + "insitu (copy)": { + "us": 4.8, "level": "full" }, - "insitu (copy)": { - "us": 7.0, + "insitu (copy untimed)": { + "us": 4.8, "level": "full" }, "SAX (default precision) (no encoding check)": { - "us": 7.2, + "us": 6.9, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 7.4, + "us": 7.0, "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 7.6, + "us": 7.1, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 7.8, + "us": 7.5, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 8.3, + "us": 8.0, "level": "full" }, "Document (no encoding check)": { - "us": 8.4, + "us": 8.1, "level": "no UTF-8" }, + "SAX (string stream, default precision)": { + "us": 10.3, + "level": "full" + }, "SAX (string stream)": { "us": 10.5, "level": "full" }, - "SAX (string stream, default precision)": { - "us": 10.8, - "level": "full" - }, "SAX": { - "us": 12.2, + "us": 11.8, "level": "full" }, "SAX (default precision)": { - "us": 12.4, + "us": 11.8, "level": "full" }, "SAX (raw numbers)": { - "us": 12.4, + "us": 11.9, "level": "full" }, "Document": { - "us": 13.3, + "us": 12.7, "level": "full" } } @@ -2114,35 +2114,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 219.0, + "us": 215.1, "level": "full" }, "best_any": { "variant": "accept", - "us": 219.0, + "us": 215.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 260.5, + "us": 258.6, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 260.5, + "us": 258.6, "level": "full" }, "variants": { "accept": { - "us": 219.0, + "us": 215.1, "level": "full" }, "read (reused)": { - "us": 260.5, + "us": 258.6, "level": "full" }, "parse": { - "us": 268.5, + "us": 265.7, "level": "full" } } @@ -2150,23 +2150,23 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 551.1, + "us": 239.8, "level": "full" }, "best_any": { "variant": "accept", - "us": 551.1, + "us": 239.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 551.1, + "us": 239.8, "level": "full" }, "parse": { - "us": 3133.4, + "us": 2996.3, "level": "full" } } @@ -2174,43 +2174,43 @@ "yyjson": { "best": { "variant": "read", - "us": 331.1, + "us": 331.9, "level": "full" }, "best_any": { "variant": "read", - "us": 331.1, + "us": 331.9, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 330.1, + "us": 329.8, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 330.1, + "us": 329.8, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 296.8, + "us": 295.9, "level": "full" }, "read (reused allocator)": { - "us": 330.1, + "us": 329.8, "level": "full" }, "read": { - "us": 331.1, + "us": 331.9, "level": "full" }, "insitu (copy)": { - "us": 334.0, + "us": 334.3, "level": "full" }, "read (raw numbers)": { - "us": 334.3, + "us": 335.0, "level": "full" } } @@ -2218,31 +2218,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 288.9, + "us": 292.3, "level": "full" }, "best_any": { "variant": "DOM", - "us": 288.9, + "us": 292.3, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 287.8, + "us": 293.8, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 287.8, + "us": 293.8, "level": "full" }, "variants": { - "DOM (reused)": { - "us": 287.8, + "DOM": { + "us": 292.3, "level": "full" }, - "DOM": { - "us": 288.9, + "DOM (reused)": { + "us": 293.8, "level": "full" } } @@ -2251,14 +2251,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 288.1, + "us": 290.9, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 288.1, + "us": 290.9, "level": "no UTF-8" } } @@ -2266,35 +2266,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 450.8, + "us": 448.2, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 450.8, + "us": 448.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 450.8, + "us": 448.2, + "level": "full" + }, + "generic (double, strict)": { + "us": 2145.2, "level": "full" }, "generic (double)": { - "us": 2051.4, + "us": 2155.4, "level": "partial" }, - "generic (double, strict)": { - "us": 2062.3, - "level": "full" - }, "generic (strict)": { - "us": 2769.7, + "us": 2819.5, "level": "full" }, "generic": { - "us": 2775.2, + "us": 2938.7, "level": "partial" } } @@ -2302,47 +2302,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 587.8, + "us": 598.2, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 587.8, + "us": 598.2, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 600.6, + "us": 616.0, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 600.6, + "us": 616.0, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 587.8, + "us": 598.2, "level": "full" }, "SAX (reused)": { - "us": 600.6, + "us": 616.0, "level": "full" }, "SAX": { - "us": 601.3, - "level": "full" - }, - "parse (numbers: none)": { - "us": 1284.4, + "us": 630.9, "level": "full" }, "parser (reused)": { - "us": 1289.6, + "us": 1287.0, + "level": "full" + }, + "parse (numbers: none)": { + "us": 1293.9, "level": "full" }, "parse": { - "us": 1298.4, + "us": 1334.3, "level": "full" } } @@ -2350,95 +2350,95 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1259.7, + "us": 880.8, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 844.1, + "us": 749.9, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1501.7, + "us": 1604.5, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1401.4, + "us": 1419.3, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 804.9, + "us": 715.0, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 844.1, - "level": "no UTF-8" - }, - "SAX (string stream, default precision) (no encoding check)": { - "us": 960.4, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 978.6, + "us": 749.9, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1226.0, + "us": 820.5, "level": "full" }, "insitu (copy)": { - "us": 1259.7, + "us": 880.8, "level": "full" }, + "SAX (string stream, default precision) (no encoding check)": { + "us": 965.4, + "level": "no UTF-8" + }, + "SAX (string stream) (no encoding check)": { + "us": 1005.2, + "level": "no UTF-8" + }, "SAX (default precision) (no encoding check)": { - "us": 1279.9, + "us": 1315.5, "level": "no UTF-8" }, "SAX (no encoding check)": { - "us": 1288.3, + "us": 1325.8, "level": "no UTF-8" }, "SAX (raw numbers) (no encoding check)": { - "us": 1324.1, + "us": 1355.0, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1401.4, + "us": 1419.3, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1434.4, + "us": 1475.9, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1501.7, + "us": 1604.5, "level": "full" }, "SAX (string stream, default precision)": { - "us": 1867.0, + "us": 1915.4, "level": "full" }, "SAX (string stream)": { - "us": 1886.3, + "us": 1938.5, "level": "full" }, "SAX (default precision)": { - "us": 2145.8, - "level": "full" - }, - "SAX": { - "us": 2154.2, + "us": 2215.5, "level": "full" }, "SAX (raw numbers)": { - "us": 2179.2, + "us": 2253.6, + "level": "full" + }, + "SAX": { + "us": 2289.5, "level": "full" }, "Document": { - "us": 2271.1, + "us": 2376.6, "level": "full" } } @@ -2536,35 +2536,35 @@ "nlohmann json_document": { "best": { "variant": "accept", - "us": 327.9, + "us": 330.7, "level": "full" }, "best_any": { "variant": "accept", - "us": 327.9, + "us": 330.7, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 523.6, + "us": 510.5, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 523.6, + "us": 510.5, "level": "full" }, "variants": { "accept": { - "us": 327.9, + "us": 330.7, "level": "full" }, "read (reused)": { - "us": 523.6, + "us": 510.5, "level": "full" }, "parse": { - "us": 523.7, + "us": 512.3, "level": "full" } } @@ -2572,51 +2572,55 @@ "nlohmann json": { "best": { "variant": "accept", - "us": 1030.3, + "us": 407.5, "level": "full" }, "best_any": { "variant": "accept", - "us": 1030.3, + "us": 407.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "accept": { - "us": 1030.3, + "us": 407.5, "level": "full" }, "parse": { - "us": 4688.2, + "us": 4030.7, "level": "full" } } }, "yyjson": { "best": { - "variant": "insitu (copy)", - "us": 507.7, + "variant": "read", + "us": 506.6, "level": "full" }, "best_any": { - "variant": "insitu (copy)", - "us": 507.7, + "variant": "read", + "us": 506.6, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 507.8, + "us": 507.7, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 507.8, + "us": 507.7, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 472.2, + "us": 472.3, + "level": "full" + }, + "read": { + "us": 506.6, "level": "full" }, "insitu (copy)": { @@ -2624,15 +2628,11 @@ "level": "full" }, "read (reused allocator)": { - "us": 507.8, - "level": "full" - }, - "read": { - "us": 508.7, + "us": 507.7, "level": "full" }, "read (raw numbers)": { - "us": 520.4, + "us": 527.0, "level": "full" } } @@ -2640,31 +2640,31 @@ "simdjson": { "best": { "variant": "DOM", - "us": 573.6, + "us": 573.7, "level": "full" }, "best_any": { "variant": "DOM", - "us": 573.6, + "us": 573.7, "level": "full" }, "best_reused": { "variant": "DOM (reused)", - "us": 574.7, + "us": 572.6, "level": "full" }, "best_reused_any": { "variant": "DOM (reused)", - "us": 574.7, + "us": 572.6, "level": "full" }, "variants": { - "DOM": { - "us": 573.6, + "DOM (reused)": { + "us": 572.6, "level": "full" }, - "DOM (reused)": { - "us": 574.7, + "DOM": { + "us": 573.7, "level": "full" } } @@ -2673,14 +2673,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 692.5, + "us": 706.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 692.5, + "us": 706.6, "level": "no UTF-8" } } @@ -2688,35 +2688,35 @@ "Glaze": { "best": { "variant": "validate_json", - "us": 623.9, + "us": 617.2, "level": "full" }, "best_any": { "variant": "validate_json", - "us": 623.9, + "us": 617.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "validate_json": { - "us": 623.9, + "us": 617.2, "level": "full" }, "generic (double, strict)": { - "us": 3101.1, + "us": 3108.1, "level": "full" }, "generic (double)": { - "us": 3143.7, + "us": 3323.9, "level": "partial" }, "generic": { - "us": 4862.1, + "us": 4839.7, "level": "partial" }, "generic (strict)": { - "us": 4884.8, + "us": 4887.3, "level": "full" } } @@ -2724,47 +2724,47 @@ "Boost.JSON": { "best": { "variant": "SAX (numbers: none)", - "us": 574.7, + "us": 577.1, "level": "full" }, "best_any": { "variant": "SAX (numbers: none)", - "us": 574.7, + "us": 577.1, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 652.2, + "us": 658.0, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 652.2, + "us": 658.0, "level": "full" }, "variants": { "SAX (numbers: none)": { - "us": 574.7, - "level": "full" - }, - "SAX": { - "us": 651.6, + "us": 577.1, "level": "full" }, "SAX (reused)": { - "us": 652.2, + "us": 658.0, + "level": "full" + }, + "SAX": { + "us": 667.6, "level": "full" }, "parse (numbers: none)": { - "us": 1425.2, + "us": 1404.3, "level": "full" }, "parser (reused)": { - "us": 1532.7, + "us": 1519.6, "level": "full" }, "parse": { - "us": 1533.0, + "us": 1533.7, "level": "full" } } @@ -2772,95 +2772,95 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1633.2, + "us": 1301.9, "level": "full" }, "best_any": { - "variant": "SAX (string stream, default precision) (no encoding check)", - "us": 1182.1, + "variant": "SAX (default precision) (no encoding check)", + "us": 1213.4, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1761.6, + "us": 1774.7, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 1761.6, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 1729.6, + "level": "no UTF-8" }, "variants": { - "SAX (string stream, default precision) (no encoding check)": { - "us": 1182.1, - "level": "no UTF-8" - }, "SAX (default precision) (no encoding check)": { - "us": 1202.5, + "us": 1213.4, "level": "no UTF-8" }, - "SAX (string stream) (no encoding check)": { - "us": 1391.7, - "level": "no UTF-8" - }, - "SAX (no encoding check)": { - "us": 1397.0, - "level": "no UTF-8" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 1404.1, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 1437.9, + "SAX (string stream, default precision) (no encoding check)": { + "us": 1218.3, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1606.0, + "us": 1272.9, "level": "full" }, - "SAX (raw numbers) (no encoding check)": { - "us": 1616.8, + "insitu (copy untimed) (no encoding check)": { + "us": 1273.3, "level": "no UTF-8" }, "insitu (copy)": { - "us": 1633.2, + "us": 1301.9, "level": "full" }, + "insitu (copy) (no encoding check)": { + "us": 1310.7, + "level": "no UTF-8" + }, + "SAX (no encoding check)": { + "us": 1405.8, + "level": "no UTF-8" + }, + "SAX (string stream) (no encoding check)": { + "us": 1457.8, + "level": "no UTF-8" + }, + "SAX (raw numbers) (no encoding check)": { + "us": 1618.6, + "level": "no UTF-8" + }, "SAX (string stream, default precision)": { - "us": 1669.1, + "us": 1678.2, "level": "full" }, - "Document (reused allocator)": { - "us": 1761.6, - "level": "full" - }, - "Document (no encoding check)": { - "us": 1770.4, - "level": "no UTF-8" - }, "Document (reused allocator) (no encoding check)": { - "us": 1772.7, + "us": 1729.6, "level": "no UTF-8" }, + "Document (no encoding check)": { + "us": 1757.7, + "level": "no UTF-8" + }, + "Document (reused allocator)": { + "us": 1774.7, + "level": "full" + }, "SAX (default precision)": { - "us": 1795.8, + "us": 1809.9, "level": "full" }, "SAX (string stream)": { - "us": 1918.0, + "us": 1920.4, "level": "full" }, "SAX": { - "us": 1945.9, + "us": 1937.5, "level": "full" }, "SAX (raw numbers)": { - "us": 2178.1, + "us": 2206.2, "level": "full" }, "Document": { - "us": 2338.1, + "us": 2322.9, "level": "full" } } @@ -2960,35 +2960,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 391.8, + "us": 386.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 391.8, + "us": 386.6, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 384.8, + "us": 384.6, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 384.8, + "us": 384.6, "level": "full" }, "variants": { "read (reused)": { - "us": 384.8, + "us": 384.6, "level": "full" }, "parse": { - "us": 391.8, + "us": 386.6, "level": "full" }, "parse_copy": { - "us": 430.3, + "us": 427.1, "level": "full" } } @@ -2996,23 +2996,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 796.6, + "us": 451.1, "level": "full" }, "best_any": { "variant": "sax", - "us": 796.6, + "us": 451.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 796.6, + "us": 451.1, "level": "full" }, "parse": { - "us": 3537.0, + "us": 3116.3, "level": "full" } } @@ -3020,39 +3020,39 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 443.8, + "us": 443.2, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 443.8, + "us": 443.2, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 449.5, + "us": 446.5, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 449.5, + "us": 446.5, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 407.0, + "us": 406.9, "level": "full" }, "insitu (copy)": { - "us": 443.8, + "us": 443.2, "level": "full" }, "read": { - "us": 446.5, + "us": 445.5, "level": "full" }, "read (reused allocator)": { - "us": 449.5, + "us": 446.5, "level": "full" } } @@ -3060,39 +3060,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 356.1, + "us": 355.7, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 356.1, + "us": 355.7, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 355.8, + "us": 354.6, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 355.8, + "us": 354.6, "level": "full" }, "variants": { "On-Demand (reused)": { - "us": 355.8, + "us": 354.6, "level": "full" }, "On-Demand": { - "us": 356.1, + "us": 355.7, "level": "full" }, "DOM (reused)": { - "us": 428.7, + "us": 412.8, "level": "full" }, "DOM": { - "us": 429.9, + "us": 415.3, "level": "full" } } @@ -3101,14 +3101,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 460.5, + "us": 459.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 460.5, + "us": 459.4, "level": "no UTF-8" } } @@ -3116,36 +3116,36 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 2344.7, + "us": 2341.0, "level": "full" }, "best_any": { - "variant": "generic (double)", - "us": 2338.9, - "level": "partial" + "variant": "generic (double, strict)", + "us": 2341.0, + "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (double)": { - "us": 2338.9, - "level": "partial" - }, "generic (double, strict)": { - "us": 2344.7, + "us": 2341.0, "level": "full" }, - "lazy_json": { - "us": 2953.9, + "generic (double)": { + "us": 2362.5, "level": "partial" }, - "generic": { - "us": 3048.3, + "lazy_json": { + "us": 2928.1, "level": "partial" }, "generic (strict)": { - "us": 3065.0, + "us": 3043.3, "level": "full" + }, + "generic": { + "us": 3058.8, + "level": "partial" } }, "excluded": { @@ -3155,39 +3155,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 733.7, + "us": 745.8, "level": "full" }, "best_any": { "variant": "SAX", - "us": 733.7, + "us": 745.8, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 733.7, + "us": 744.5, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 733.7, + "us": 744.5, "level": "full" }, "variants": { - "SAX": { - "us": 733.7, + "SAX (reused)": { + "us": 744.5, "level": "full" }, - "SAX (reused)": { - "us": 733.7, + "SAX": { + "us": 745.8, "level": "full" }, "parser (reused)": { - "us": 1494.8, + "us": 1459.1, "level": "full" }, "parse": { - "us": 1509.9, + "us": 1466.2, "level": "full" } } @@ -3195,71 +3195,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1656.5, + "us": 1256.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1170.4, + "us": 1085.4, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1637.2, + "us": 1630.1, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1554.3, + "us": 1542.1, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1129.7, + "us": 1046.1, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1170.4, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 1254.3, - "level": "no UTF-8" - }, - "SAX (no encoding check)": { - "us": 1369.4, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 1548.2, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 1554.3, + "us": 1085.4, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1615.8, + "us": 1216.2, "level": "full" }, - "Document (reused allocator)": { - "us": 1637.2, - "level": "full" + "SAX (string stream) (no encoding check)": { + "us": 1252.3, + "level": "no UTF-8" }, "insitu (copy)": { - "us": 1656.5, + "us": 1256.1, + "level": "full" + }, + "SAX (no encoding check)": { + "us": 1367.1, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 1542.1, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 1554.8, + "level": "no UTF-8" + }, + "Document (reused allocator)": { + "us": 1630.1, "level": "full" }, "SAX (string stream)": { - "us": 2195.3, + "us": 2198.3, "level": "full" }, "SAX": { - "us": 2276.2, + "us": 2242.0, "level": "full" }, "Document": { - "us": 2410.6, + "us": 2405.0, "level": "full" } } @@ -3353,35 +3353,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 946.2, + "us": 1036.3, "level": "full" }, "best_any": { "variant": "parse", - "us": 946.2, + "us": 1036.3, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 947.2, + "us": 1039.9, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 947.2, + "us": 1039.9, "level": "full" }, "variants": { "parse": { - "us": 946.2, + "us": 1036.3, "level": "full" }, "read (reused)": { - "us": 947.2, + "us": 1039.9, "level": "full" }, "parse_copy": { - "us": 1060.1, + "us": 1150.8, "level": "full" } } @@ -3389,23 +3389,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 1547.8, + "us": 940.8, "level": "full" }, "best_any": { "variant": "sax", - "us": 1547.8, + "us": 940.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 1547.8, + "us": 940.8, "level": "full" }, "parse": { - "us": 5365.9, + "us": 4676.2, "level": "full" } } @@ -3413,39 +3413,39 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 1155.1, + "us": 1146.0, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 1155.1, + "us": 1146.0, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 1191.6, + "us": 1153.8, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1191.6, + "us": 1153.8, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 1045.4, + "us": 1039.2, "level": "full" }, "insitu (copy)": { - "us": 1155.1, + "us": 1146.0, "level": "full" }, "read": { - "us": 1156.2, + "us": 1147.7, "level": "full" }, "read (reused allocator)": { - "us": 1191.6, + "us": 1153.8, "level": "full" } } @@ -3453,39 +3453,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 812.0, + "us": 819.1, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 812.0, + "us": 819.1, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 811.7, + "us": 812.5, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 811.7, + "us": 812.5, "level": "full" }, "variants": { "On-Demand (reused)": { - "us": 811.7, + "us": 812.5, "level": "full" }, "On-Demand": { - "us": 812.0, - "level": "full" - }, - "DOM": { - "us": 1217.1, + "us": 819.1, "level": "full" }, "DOM (reused)": { - "us": 1222.5, + "us": 1037.8, + "level": "full" + }, + "DOM": { + "us": 1039.7, "level": "full" } } @@ -3494,14 +3494,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1209.8, + "us": 1209.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1209.8, + "us": 1209.1, "level": "no UTF-8" } } @@ -3509,35 +3509,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 4079.9, + "us": 4036.6, "level": "full" }, "best_any": { - "variant": "generic (double)", - "us": 4041.2, - "level": "partial" + "variant": "generic (double, strict)", + "us": 4036.6, + "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (double)": { - "us": 4041.2, - "level": "partial" - }, "generic (double, strict)": { - "us": 4079.9, + "us": 4036.6, "level": "full" }, + "generic (double)": { + "us": 4046.7, + "level": "partial" + }, "generic": { - "us": 5798.0, + "us": 5687.4, "level": "partial" }, "generic (strict)": { - "us": 5979.2, + "us": 5755.1, "level": "full" }, "lazy_json": { - "us": 13446.0, + "us": 13238.7, "level": "partial" } }, @@ -3548,111 +3548,111 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 1030.4, + "us": 1025.3, "level": "full" }, "best_any": { "variant": "SAX", - "us": 1030.4, + "us": 1025.3, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 1028.8, + "us": 1024.0, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 1028.8, + "us": 1024.0, "level": "full" }, "variants": { "SAX (reused)": { - "us": 1028.8, + "us": 1024.0, "level": "full" }, "SAX": { - "us": 1030.4, + "us": 1025.3, "level": "full" }, "parser (reused)": { - "us": 2055.5, + "us": 2020.3, "level": "full" }, "parse": { - "us": 2059.4, + "us": 2024.9, "level": "full" } } }, "RapidJSON": { "best": { - "variant": "SAX", - "us": 2340.1, + "variant": "insitu (copy)", + "us": 2114.2, "level": "full" }, "best_any": { "variant": "SAX (no encoding check)", - "us": 1743.1, + "us": 1749.8, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 2169.4, + "us": 2158.5, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 2148.8, + "us": 2093.6, "level": "no UTF-8" }, "variants": { "SAX (no encoding check)": { - "us": 1743.1, + "us": 1749.8, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { - "us": 1879.1, + "us": 1857.6, "level": "no UTF-8" }, "insitu (copy untimed) (no encoding check)": { - "us": 1979.5, + "us": 1887.0, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 2084.8, + "us": 1998.1, + "level": "no UTF-8" + }, + "insitu (copy untimed)": { + "us": 2006.2, + "level": "full" + }, + "Document (reused allocator) (no encoding check)": { + "us": 2093.6, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 2114.5, + "us": 2095.3, "level": "no UTF-8" }, - "Document (reused allocator) (no encoding check)": { - "us": 2148.8, - "level": "no UTF-8" - }, - "Document (reused allocator)": { - "us": 2169.4, + "insitu (copy)": { + "us": 2114.2, "level": "full" }, - "insitu (copy untimed)": { - "us": 2290.0, + "Document (reused allocator)": { + "us": 2158.5, "level": "full" }, "SAX": { - "us": 2340.1, - "level": "full" - }, - "insitu (copy)": { - "us": 2396.5, + "us": 2303.8, "level": "full" }, "SAX (string stream)": { - "us": 2466.4, + "us": 2411.1, "level": "full" }, "Document": { - "us": 2683.7, + "us": 2667.5, "level": "full" } } @@ -3746,35 +3746,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 3887.9, + "us": 3704.4, "level": "full" }, "best_any": { "variant": "parse", - "us": 3887.9, + "us": 3704.4, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 3880.6, + "us": 3684.6, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 3880.6, + "us": 3684.6, "level": "full" }, "variants": { "read (reused)": { - "us": 3880.6, + "us": 3684.6, "level": "full" }, "parse": { - "us": 3887.9, + "us": 3704.4, "level": "full" }, "parse_copy": { - "us": 4041.7, + "us": 3886.3, "level": "full" } } @@ -3782,23 +3782,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 6003.5, + "us": 3816.3, "level": "full" }, "best_any": { "variant": "sax", - "us": 6003.5, + "us": 3816.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 6003.5, + "us": 3816.3, "level": "full" }, "parse": { - "us": 12388.5, + "us": 9664.6, "level": "full" } } @@ -3806,39 +3806,39 @@ "yyjson": { "best": { "variant": "read", - "us": 6101.7, + "us": 5973.6, "level": "full" }, "best_any": { "variant": "read", - "us": 6101.7, + "us": 5973.6, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 6126.8, + "us": 5970.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 6126.8, + "us": 5970.3, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 6021.1, - "level": "full" - }, - "read": { - "us": 6101.7, + "us": 5819.4, "level": "full" }, "read (reused allocator)": { - "us": 6126.8, + "us": 5970.3, + "level": "full" + }, + "read": { + "us": 5973.6, "level": "full" }, "insitu (copy)": { - "us": 6174.3, + "us": 6030.0, "level": "full" } } @@ -3846,39 +3846,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 3435.3, + "us": 3290.7, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 3435.3, + "us": 3290.7, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 3358.3, + "us": 3298.3, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 3358.3, + "us": 3298.3, "level": "full" }, "variants": { - "On-Demand (reused)": { - "us": 3358.3, + "On-Demand": { + "us": 3290.7, "level": "full" }, - "On-Demand": { - "us": 3435.3, + "On-Demand (reused)": { + "us": 3298.3, "level": "full" }, "DOM": { - "us": 4793.8, + "us": 4256.0, "level": "full" }, "DOM (reused)": { - "us": 4838.5, + "us": 4292.9, "level": "full" } } @@ -3887,14 +3887,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 4295.1, + "us": 4247.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 4295.1, + "us": 4247.0, "level": "no UTF-8" } } @@ -3902,35 +3902,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 10575.7, + "us": 10434.0, "level": "full" }, "best_any": { "variant": "generic (double, strict)", - "us": 10575.7, + "us": 10434.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "generic (double, strict)": { - "us": 10575.7, + "us": 10434.0, "level": "full" }, "generic (double)": { - "us": 10910.0, - "level": "partial" - }, - "generic": { - "us": 20137.8, + "us": 10607.1, "level": "partial" }, "lazy_json": { - "us": 20195.3, + "us": 19054.7, + "level": "partial" + }, + "generic": { + "us": 19350.7, "level": "partial" }, "generic (strict)": { - "us": 20606.8, + "us": 19696.8, "level": "full" } }, @@ -3941,39 +3941,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 6102.7, + "us": 5370.3, "level": "full" }, "best_any": { "variant": "SAX", - "us": 6102.7, + "us": 5370.3, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 5992.8, + "us": 5379.0, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 5992.8, + "us": 5379.0, "level": "full" }, "variants": { - "SAX (reused)": { - "us": 5992.8, + "SAX": { + "us": 5370.3, "level": "full" }, - "SAX": { - "us": 6102.7, + "SAX (reused)": { + "us": 5379.0, "level": "full" }, "parse": { - "us": 7598.8, + "us": 7545.0, "level": "full" }, "parser (reused)": { - "us": 7637.0, + "us": 7573.0, "level": "full" } } @@ -3981,72 +3981,72 @@ "RapidJSON": { "best": { "variant": "SAX (string stream)", - "us": 11182.8, + "us": 11058.6, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 11109.0, + "us": 11008.1, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 12160.8, + "us": 12082.2, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator)", - "us": 12160.8, + "us": 12082.2, "level": "full" }, "variants": { "SAX (string stream) (no encoding check)": { - "us": 11109.0, + "us": 11008.1, "level": "no UTF-8" }, "SAX (string stream)": { - "us": 11182.8, + "us": 11058.6, + "level": "full" + }, + "SAX": { + "us": 11182.9, "level": "full" }, "SAX (no encoding check)": { - "us": 11228.8, - "level": "no UTF-8" - }, - "SAX": { - "us": 11324.8, - "level": "full" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 11818.9, - "level": "no UTF-8" - }, - "insitu (copy untimed)": { - "us": 11895.4, - "level": "full" - }, - "insitu (copy)": { - "us": 12054.3, - "level": "full" - }, - "insitu (copy) (no encoding check)": { - "us": 12112.7, + "us": 11272.3, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 12160.8, + "us": 12082.2, "level": "full" }, "Document (reused allocator) (no encoding check)": { - "us": 12175.0, + "us": 12187.3, "level": "no UTF-8" }, - "Document": { + "Document (no encoding check)": { + "us": 12257.5, + "level": "no UTF-8" + }, + "insitu (copy untimed)": { "us": 12286.6, "level": "full" }, - "Document (no encoding check)": { - "us": 12496.0, + "insitu (copy)": { + "us": 12539.6, + "level": "full" + }, + "insitu (copy) (no encoding check)": { + "us": 12542.6, "level": "no UTF-8" + }, + "insitu (copy untimed) (no encoding check)": { + "us": 12558.3, + "level": "no UTF-8" + }, + "Document": { + "us": 12950.9, + "level": "full" } } }, @@ -4139,35 +4139,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 89043.5, + "us": 89476.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 89043.5, + "us": 89476.6, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 53108.4, + "us": 51075.9, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 53108.4, + "us": 51075.9, "level": "full" }, "variants": { "read (reused)": { - "us": 53108.4, + "us": 51075.9, "level": "full" }, "parse": { - "us": 89043.5, + "us": 89476.6, "level": "full" }, "parse_copy": { - "us": 135380.5, + "us": 125128.7, "level": "full" } } @@ -4175,23 +4175,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 101516.2, + "us": 64405.9, "level": "full" }, "best_any": { "variant": "sax", - "us": 101516.2, + "us": 64405.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 101516.2, + "us": 64405.9, "level": "full" }, "parse": { - "us": 413745.8, + "us": 376561.5, "level": "full" } } @@ -4199,39 +4199,39 @@ "yyjson": { "best": { "variant": "read", - "us": 142879.7, + "us": 129054.4, "level": "full" }, "best_any": { "variant": "read", - "us": 142879.7, + "us": 129054.4, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 74378.1, + "us": 72262.0, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 74378.1, + "us": 72262.0, "level": "full" }, "variants": { "read (reused allocator)": { - "us": 74378.1, + "us": 72262.0, "level": "full" }, "insitu (copy untimed)": { - "us": 99764.3, + "us": 94826.7, "level": "full" }, "read": { - "us": 142879.7, + "us": 129054.4, "level": "full" }, "insitu (copy)": { - "us": 144535.8, + "us": 135417.7, "level": "full" } } @@ -4239,39 +4239,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 96250.5, + "us": 94266.7, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 96250.5, + "us": 94266.7, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 49746.2, + "us": 50814.7, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 49746.2, + "us": 50814.7, "level": "full" }, "variants": { "On-Demand (reused)": { - "us": 49746.2, + "us": 50814.7, "level": "full" }, "DOM (reused)": { - "us": 62790.8, + "us": 62625.5, "level": "full" }, "On-Demand": { - "us": 96250.5, + "us": 94266.7, "level": "full" }, "DOM": { - "us": 135192.2, + "us": 129837.4, "level": "full" } } @@ -4280,14 +4280,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 107092.4, + "us": 103731.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 107092.4, + "us": 103731.2, "level": "no UTF-8" } } @@ -4295,35 +4295,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 250685.1, + "us": 249827.6, "level": "full" }, "best_any": { "variant": "lazy_json", - "us": 231181.0, + "us": 219119.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "lazy_json": { - "us": 231181.0, + "us": 219119.4, "level": "partial" }, "generic (double)": { - "us": 247067.6, + "us": 243138.2, "level": "partial" }, "generic (double, strict)": { - "us": 250685.1, + "us": 249827.6, "level": "full" }, "generic (strict)": { - "us": 347977.1, + "us": 336968.5, "level": "full" }, "generic": { - "us": 348741.8, + "us": 354331.2, "level": "partial" } }, @@ -4334,39 +4334,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 64381.8, + "us": 63332.9, "level": "full" }, "best_any": { "variant": "SAX", - "us": 64381.8, + "us": 63332.9, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 65835.9, + "us": 63505.8, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 65835.9, + "us": 63505.8, "level": "full" }, "variants": { "SAX": { - "us": 64381.8, + "us": 63332.9, "level": "full" }, "SAX (reused)": { - "us": 65835.9, + "us": 63505.8, "level": "full" }, "parser (reused)": { - "us": 150275.9, + "us": 144186.2, "level": "full" }, "parse": { - "us": 209907.9, + "us": 199425.2, "level": "full" } } @@ -4374,71 +4374,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 225716.3, + "us": 155532.2, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 134512.4, + "us": 128734.2, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 210147.4, + "us": 197189.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 199382.8, + "us": 193349.8, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 119705.8, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 134512.4, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 166643.2, - "level": "no UTF-8" - }, - "SAX (no encoding check)": { - "us": 173115.6, + "us": 100439.3, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 181500.1, + "us": 111624.6, "level": "full" }, - "Document (reused allocator) (no encoding check)": { - "us": 199382.8, + "SAX (string stream) (no encoding check)": { + "us": 128734.2, "level": "no UTF-8" }, - "Document (no encoding check)": { - "us": 208113.1, + "insitu (copy) (no encoding check)": { + "us": 147439.7, + "level": "no UTF-8" + }, + "insitu (copy)": { + "us": 155532.2, + "level": "full" + }, + "SAX (no encoding check)": { + "us": 166236.3, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 193349.8, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 210147.4, + "us": 197189.6, "level": "full" }, - "insitu (copy)": { - "us": 225716.3, - "level": "full" + "Document (no encoding check)": { + "us": 199542.0, + "level": "no UTF-8" }, "SAX (string stream)": { - "us": 259850.8, + "us": 248393.1, "level": "full" }, "SAX": { - "us": 290353.3, + "us": 271501.0, "level": "full" }, "Document": { - "us": 323477.4, + "us": 309554.0, "level": "full" } } @@ -4532,12 +4532,12 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 2.0, + "us": 1.9, "level": "full" }, "best_any": { "variant": "parse", - "us": 2.0, + "us": 1.9, "level": "full" }, "best_reused": { @@ -4551,16 +4551,16 @@ "level": "full" }, "variants": { + "parse": { + "us": 1.9, + "level": "full" + }, "read (reused)": { "us": 1.9, "level": "full" }, - "parse": { - "us": 2.0, - "level": "full" - }, "parse_copy": { - "us": 2.1, + "us": 2.0, "level": "full" } } @@ -4568,23 +4568,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 4.0, + "us": 2.3, "level": "full" }, "best_any": { "variant": "sax", - "us": 4.0, + "us": 2.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 4.0, + "us": 2.3, "level": "full" }, "parse": { - "us": 17.9, + "us": 15.2, "level": "full" } } @@ -4602,16 +4602,20 @@ }, "best_reused": { "variant": "read (reused allocator)", - "us": 1.9, + "us": 1.8, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1.9, + "us": 1.8, "level": "full" }, "variants": { "read (reused allocator)": { + "us": 1.8, + "level": "full" + }, + "insitu (copy untimed)": { "us": 1.9, "level": "full" }, @@ -4622,22 +4626,18 @@ "insitu (copy)": { "us": 2.0, "level": "full" - }, - "insitu (copy untimed)": { - "us": 2.0, - "level": "full" } } }, "simdjson": { "best": { "variant": "On-Demand", - "us": 2.0, + "us": 1.9, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 2.0, + "us": 1.9, "level": "full" }, "best_reused": { @@ -4656,15 +4656,15 @@ "level": "full" }, "On-Demand": { - "us": 2.0, + "us": 1.9, "level": "full" }, "DOM (reused)": { - "us": 2.3, + "us": 2.2, "level": "full" }, "DOM": { - "us": 2.4, + "us": 2.3, "level": "full" } } @@ -4688,35 +4688,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 9.0, + "us": 8.5, "level": "full" }, "best_any": { "variant": "lazy_json", - "us": 6.4, + "us": 5.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "lazy_json": { - "us": 6.4, - "level": "partial" - }, - "generic (double)": { - "us": 9.0, + "us": 5.9, "level": "partial" }, "generic (double, strict)": { - "us": 9.0, + "us": 8.5, "level": "full" }, + "generic (double)": { + "us": 8.6, + "level": "partial" + }, "generic": { - "us": 13.4, + "us": 12.5, "level": "partial" }, "generic (strict)": { - "us": 13.4, + "us": 12.5, "level": "full" } }, @@ -4759,7 +4759,7 @@ "level": "full" }, "parse": { - "us": 7.2, + "us": 6.9, "level": "full" } } @@ -4767,17 +4767,17 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 7.6, + "us": 5.2, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 4.0, + "us": 3.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 9.0, + "us": 8.3, "level": "full" }, "best_reused_any": { @@ -4786,52 +4786,52 @@ "level": "no UTF-8" }, "variants": { - "insitu (copy untimed) (no encoding check)": { - "us": 3.9, + "insitu (copy) (no encoding check)": { + "us": 3.5, "level": "no UTF-8" }, - "insitu (copy) (no encoding check)": { - "us": 4.0, + "insitu (copy untimed) (no encoding check)": { + "us": 3.5, "level": "no UTF-8" }, "SAX (string stream) (no encoding check)": { "us": 4.4, "level": "no UTF-8" }, - "SAX (no encoding check)": { - "us": 7.0, - "level": "no UTF-8" - }, "insitu (copy untimed)": { - "us": 7.5, + "us": 5.1, "level": "full" }, "insitu (copy)": { - "us": 7.6, + "us": 5.2, "level": "full" }, + "SAX (no encoding check)": { + "us": 6.9, + "level": "no UTF-8" + }, "Document (reused allocator) (no encoding check)": { "us": 7.9, "level": "no UTF-8" }, - "Document (no encoding check)": { - "us": 8.7, - "level": "no UTF-8" - }, "Document (reused allocator)": { - "us": 9.0, + "us": 8.3, "level": "full" }, + "Document (no encoding check)": { + "us": 8.4, + "level": "no UTF-8" + }, "SAX (string stream)": { - "us": 11.3, + "us": 10.8, "level": "full" }, "SAX": { - "us": 12.4, + "us": 11.9, "level": "full" }, "Document": { - "us": 13.8, + "us": 13.1, "level": "full" } } @@ -4925,35 +4925,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 337.4, + "us": 337.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 337.4, + "us": 337.6, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 331.3, + "us": 332.8, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 331.3, + "us": 332.8, "level": "full" }, "variants": { "read (reused)": { - "us": 331.3, + "us": 332.8, "level": "full" }, "parse": { - "us": 337.4, + "us": 337.6, "level": "full" }, "parse_copy": { - "us": 369.3, + "us": 367.1, "level": "full" } } @@ -4961,63 +4961,63 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 692.8, + "us": 386.6, "level": "full" }, "best_any": { "variant": "sax", - "us": 692.8, + "us": 386.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 692.8, + "us": 386.6, "level": "full" }, "parse": { - "us": 3302.2, + "us": 3066.2, "level": "full" } } }, "yyjson": { "best": { - "variant": "read", - "us": 383.9, + "variant": "insitu (copy)", + "us": 383.4, "level": "full" }, "best_any": { - "variant": "read", - "us": 383.9, + "variant": "insitu (copy)", + "us": 383.4, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 383.7, + "us": 386.5, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 383.7, + "us": 386.5, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 358.2, - "level": "full" - }, - "read (reused allocator)": { - "us": 383.7, - "level": "full" - }, - "read": { - "us": 383.9, + "us": 359.0, "level": "full" }, "insitu (copy)": { - "us": 384.3, + "us": 383.4, + "level": "full" + }, + "read (reused allocator)": { + "us": 386.5, + "level": "full" + }, + "read": { + "us": 386.9, "level": "full" } } @@ -5025,39 +5025,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 336.2, + "us": 338.7, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 336.2, + "us": 338.7, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 335.0, + "us": 338.1, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 335.0, + "us": 338.1, "level": "full" }, "variants": { "On-Demand (reused)": { - "us": 335.0, + "us": 338.1, "level": "full" }, "On-Demand": { - "us": 336.2, - "level": "full" - }, - "DOM": { - "us": 405.6, + "us": 338.7, "level": "full" }, "DOM (reused)": { - "us": 405.8, + "us": 425.6, + "level": "full" + }, + "DOM": { + "us": 426.0, "level": "full" } } @@ -5066,14 +5066,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 341.9, + "us": 343.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 341.9, + "us": 343.7, "level": "no UTF-8" } } @@ -5081,36 +5081,36 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 2143.7, + "us": 2157.3, "level": "full" }, "best_any": { "variant": "lazy_json", - "us": 1722.6, + "us": 1700.7, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "lazy_json": { - "us": 1722.6, + "us": 1700.7, "level": "partial" }, "generic (double, strict)": { - "us": 2143.7, + "us": 2157.3, "level": "full" }, "generic (double)": { - "us": 2148.0, + "us": 2230.9, + "level": "partial" + }, + "generic": { + "us": 2936.7, "level": "partial" }, "generic (strict)": { - "us": 2854.8, + "us": 2937.9, "level": "full" - }, - "generic": { - "us": 2857.6, - "level": "partial" } }, "excluded": { @@ -5120,39 +5120,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 616.8, + "us": 638.8, "level": "full" }, "best_any": { "variant": "SAX", - "us": 616.8, + "us": 638.8, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 616.1, + "us": 638.8, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 616.1, + "us": 638.8, "level": "full" }, "variants": { - "SAX (reused)": { - "us": 616.1, - "level": "full" - }, "SAX": { - "us": 616.8, + "us": 638.8, "level": "full" }, - "parser (reused)": { - "us": 1354.4, + "SAX (reused)": { + "us": 638.8, "level": "full" }, "parse": { - "us": 1366.1, + "us": 1349.4, + "level": "full" + }, + "parser (reused)": { + "us": 1407.7, "level": "full" } } @@ -5160,71 +5160,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1316.4, + "us": 936.2, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 902.5, + "us": 809.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1566.2, + "us": 1584.3, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1466.4, + "us": 1477.6, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 865.9, + "us": 769.9, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 902.5, - "level": "no UTF-8" - }, - "SAX (string stream) (no encoding check)": { - "us": 1009.4, + "us": 809.5, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1286.1, + "us": 887.9, "level": "full" }, - "SAX (no encoding check)": { - "us": 1292.3, - "level": "no UTF-8" - }, "insitu (copy)": { - "us": 1316.4, + "us": 936.2, "level": "full" }, + "SAX (string stream) (no encoding check)": { + "us": 1007.8, + "level": "no UTF-8" + }, + "SAX (no encoding check)": { + "us": 1284.0, + "level": "no UTF-8" + }, "Document (reused allocator) (no encoding check)": { - "us": 1466.4, + "us": 1477.6, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1498.4, + "us": 1519.6, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1566.2, + "us": 1584.3, "level": "full" }, "SAX (string stream)": { - "us": 1924.9, + "us": 1969.8, "level": "full" }, "SAX": { - "us": 2147.3, + "us": 2204.2, "level": "full" }, "Document": { - "us": 2336.9, + "us": 2341.7, "level": "full" } } @@ -5318,35 +5318,35 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 718.2, + "us": 701.1, "level": "full" }, "best_any": { "variant": "parse", - "us": 718.2, + "us": 701.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 712.6, + "us": 702.3, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 712.6, + "us": 702.3, "level": "full" }, "variants": { - "read (reused)": { - "us": 712.6, + "parse": { + "us": 701.1, "level": "full" }, - "parse": { - "us": 718.2, + "read (reused)": { + "us": 702.3, "level": "full" }, "parse_copy": { - "us": 745.3, + "us": 734.1, "level": "full" } } @@ -5354,23 +5354,23 @@ "nlohmann json": { "best": { "variant": "sax", - "us": 1244.1, + "us": 656.0, "level": "full" }, "best_any": { "variant": "sax", - "us": 1244.1, + "us": 656.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "sax": { - "us": 1244.1, + "us": 656.0, "level": "full" }, "parse": { - "us": 4976.4, + "us": 4293.2, "level": "full" } } @@ -5378,39 +5378,39 @@ "yyjson": { "best": { "variant": "read", - "us": 672.6, + "us": 664.5, "level": "full" }, "best_any": { "variant": "read", - "us": 672.6, + "us": 664.5, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 673.4, + "us": 664.3, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 673.4, + "us": 664.3, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 642.3, - "level": "full" - }, - "read": { - "us": 672.6, - "level": "full" - }, - "insitu (copy)": { - "us": 673.3, + "us": 633.0, "level": "full" }, "read (reused allocator)": { - "us": 673.4, + "us": 664.3, + "level": "full" + }, + "read": { + "us": 664.5, + "level": "full" + }, + "insitu (copy)": { + "us": 664.8, "level": "full" } } @@ -5418,39 +5418,39 @@ "simdjson": { "best": { "variant": "On-Demand", - "us": 651.3, + "us": 650.7, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 651.3, + "us": 650.7, "level": "full" }, "best_reused": { "variant": "On-Demand (reused)", - "us": 649.7, + "us": 650.7, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 649.7, + "us": 650.7, "level": "full" }, "variants": { - "On-Demand (reused)": { - "us": 649.7, - "level": "full" - }, "On-Demand": { - "us": 651.3, + "us": 650.7, "level": "full" }, - "DOM (reused)": { - "us": 1050.9, + "On-Demand (reused)": { + "us": 650.7, "level": "full" }, "DOM": { - "us": 1051.6, + "us": 869.4, + "level": "full" + }, + "DOM (reused)": { + "us": 871.1, "level": "full" } } @@ -5474,35 +5474,35 @@ "Glaze": { "best": { "variant": "generic (double, strict)", - "us": 3296.5, + "us": 3305.0, "level": "full" }, "best_any": { "variant": "generic (double, strict)", - "us": 3296.5, + "us": 3305.0, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "generic (double, strict)": { - "us": 3296.5, + "us": 3305.0, "level": "full" }, "generic (double)": { - "us": 3325.1, + "us": 3338.0, "level": "partial" }, "lazy_json": { - "us": 3484.3, + "us": 3381.8, "level": "partial" }, "generic (strict)": { - "us": 5084.3, + "us": 5035.1, "level": "full" }, "generic": { - "us": 5087.1, + "us": 5072.3, "level": "partial" } }, @@ -5513,39 +5513,39 @@ "Boost.JSON": { "best": { "variant": "SAX", - "us": 697.7, + "us": 714.5, "level": "full" }, "best_any": { "variant": "SAX", - "us": 697.7, + "us": 714.5, "level": "full" }, "best_reused": { "variant": "SAX (reused)", - "us": 696.8, + "us": 713.9, "level": "full" }, "best_reused_any": { "variant": "SAX (reused)", - "us": 696.8, + "us": 713.9, "level": "full" }, "variants": { "SAX (reused)": { - "us": 696.8, + "us": 713.9, "level": "full" }, "SAX": { - "us": 697.7, + "us": 714.5, "level": "full" }, "parser (reused)": { - "us": 1687.4, + "us": 1677.1, "level": "full" }, "parse": { - "us": 1697.9, + "us": 1683.7, "level": "full" } } @@ -5553,71 +5553,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1799.0, + "us": 1471.8, "level": "full" }, "best_any": { "variant": "SAX (string stream) (no encoding check)", - "us": 1451.9, + "us": 1444.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1943.5, + "us": 1962.7, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 1943.5, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 1916.0, + "level": "no UTF-8" }, "variants": { - "SAX (string stream) (no encoding check)": { - "us": 1451.9, - "level": "no UTF-8" - }, - "SAX (no encoding check)": { - "us": 1480.3, - "level": "no UTF-8" + "insitu (copy untimed)": { + "us": 1429.5, + "level": "full" }, "insitu (copy untimed) (no encoding check)": { - "us": 1574.3, + "us": 1439.7, + "level": "no UTF-8" + }, + "SAX (string stream) (no encoding check)": { + "us": 1444.5, + "level": "no UTF-8" + }, + "insitu (copy)": { + "us": 1471.8, + "level": "full" + }, + "SAX (no encoding check)": { + "us": 1473.6, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1604.6, + "us": 1473.6, "level": "no UTF-8" }, - "insitu (copy untimed)": { - "us": 1777.5, - "level": "full" - }, - "insitu (copy)": { - "us": 1799.0, - "level": "full" - }, - "Document (reused allocator)": { - "us": 1943.5, - "level": "full" - }, "Document (no encoding check)": { - "us": 1943.9, + "us": 1913.2, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 1916.0, "level": "no UTF-8" }, "SAX (string stream)": { - "us": 1955.5, + "us": 1948.5, "level": "full" }, - "Document (reused allocator) (no encoding check)": { - "us": 1956.5, - "level": "no UTF-8" + "Document (reused allocator)": { + "us": 1962.7, + "level": "full" }, "SAX": { - "us": 2070.0, + "us": 2019.5, "level": "full" }, "Document": { - "us": 2514.2, + "us": 2467.2, "level": "full" } } @@ -5712,64 +5712,64 @@ "twitter": { "nlohmann json_document": { "best": { - "variant": "parse", - "us": 332.3, + "variant": "structs (from_json)", + "us": 329.1, "level": "full" }, "best_any": { - "variant": "parse", - "us": 332.3, + "variant": "structs (from_json)", + "us": 329.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 325.2, + "us": 320.1, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 325.2, + "us": 320.1, "level": "full" }, "variants": { "read (reused)": { - "us": 325.2, - "level": "full" - }, - "parse": { - "us": 332.3, + "us": 320.1, "level": "full" }, "structs (from_json)": { - "us": 334.2, + "us": 329.1, + "level": "full" + }, + "parse": { + "us": 330.4, "level": "full" }, "parse_copy": { - "us": 370.6, + "us": 368.7, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "structs (from_json)", - "us": 3325.0, + "variant": "parse", + "us": 3032.2, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 3325.0, + "variant": "parse", + "us": 3032.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "structs (from_json)": { - "us": 3325.0, + "parse": { + "us": 3032.2, "level": "full" }, - "parse": { - "us": 3353.0, + "structs (from_json)": { + "us": 3062.7, "level": "full" } } @@ -5777,43 +5777,43 @@ "yyjson": { "best": { "variant": "read", - "us": 397.9, + "us": 396.7, "level": "full" }, "best_any": { "variant": "read", - "us": 397.9, + "us": 396.7, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 403.6, + "us": 401.9, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 403.6, + "us": 401.9, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 361.4, + "us": 358.3, "level": "full" }, "read": { - "us": 397.9, + "us": 396.7, "level": "full" }, "insitu (copy)": { - "us": 401.7, + "us": 397.6, "level": "full" }, "read (raw numbers)": { - "us": 402.4, + "us": 401.9, "level": "full" }, "read (reused allocator)": { - "us": 403.6, + "us": 401.9, "level": "full" } } @@ -5821,47 +5821,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 323.5, + "us": 323.2, "level": "full" }, "best_any": { - "variant": "On-Demand (key selectors)", - "us": 183.6, + "variant": "On-Demand", + "us": 185.7, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 320.2, + "us": 325.7, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 183.7, + "us": 182.8, "level": "partial" }, "variants": { - "On-Demand (key selectors)": { - "us": 183.6, - "level": "partial" - }, "On-Demand (reused)": { - "us": 183.7, + "us": 182.8, "level": "partial" }, "On-Demand": { - "us": 187.7, + "us": 185.7, + "level": "partial" + }, + "On-Demand (key selectors)": { + "us": 185.7, "level": "partial" }, "On-Demand structs": { - "us": 193.6, + "us": 189.1, "level": "partial" }, - "DOM (reused)": { - "us": 320.2, + "DOM": { + "us": 323.2, "level": "full" }, - "DOM": { - "us": 323.5, + "DOM (reused)": { + "us": 325.7, "level": "full" } } @@ -5870,14 +5870,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 413.0, + "us": 412.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 413.0, + "us": 412.4, "level": "no UTF-8" } } @@ -5885,44 +5885,44 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 529.4, + "us": 523.3, "level": "full" }, "best_any": { "variant": "structs", - "us": 342.0, + "us": 337.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 342.0, + "us": 337.9, "level": "partial" }, "structs (validate_skipped)": { - "us": 529.4, + "us": 523.3, "level": "full" }, "lazy_json": { - "us": 981.9, + "us": 970.1, + "level": "partial" + }, + "generic (double)": { + "us": 2416.0, "level": "partial" }, "generic (double, strict)": { - "us": 2411.8, - "level": "full" - }, - "generic (double)": { - "us": 2429.0, - "level": "partial" - }, - "generic (strict)": { - "us": 3106.7, + "us": 2418.7, "level": "full" }, "generic": { - "us": 3112.1, + "us": 3112.2, "level": "partial" + }, + "generic (strict)": { + "us": 3118.8, + "level": "full" } }, "excluded": { @@ -5932,35 +5932,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 883.6, + "us": 899.3, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 883.6, + "us": 899.3, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1462.3, + "us": 1419.0, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1462.3, + "us": 1419.0, "level": "full" }, "variants": { "parse_into structs": { - "us": 883.6, + "us": 899.3, "level": "full" }, "parser (reused)": { - "us": 1462.3, + "us": 1419.0, "level": "full" }, "parse": { - "us": 1476.7, + "us": 1425.6, "level": "full" } }, @@ -5971,71 +5971,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1600.7, + "us": 1206.8, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1121.3, + "us": 1036.9, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1576.1, + "us": 1569.5, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1486.4, + "us": 1480.9, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1078.7, + "us": 998.7, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1121.3, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 1400.4, - "level": "no UTF-8" - }, - "Document (reused allocator) (no encoding check)": { - "us": 1486.4, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 1498.9, - "level": "no UTF-8" - }, - "Document (raw numbers) (no encoding check)": { - "us": 1536.7, + "us": 1036.9, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1560.4, - "level": "full" - }, - "Document (reused allocator)": { - "us": 1576.1, + "us": 1166.7, "level": "full" }, "insitu (copy)": { - "us": 1600.7, + "us": 1206.8, + "level": "full" + }, + "Document (string stream) (no encoding check)": { + "us": 1402.6, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 1480.9, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 1496.2, + "level": "no UTF-8" + }, + "Document (raw numbers) (no encoding check)": { + "us": 1517.2, + "level": "no UTF-8" + }, + "Document (reused allocator)": { + "us": 1569.5, "level": "full" }, "Document (string stream)": { - "us": 2357.1, + "us": 2323.1, "level": "full" }, "Document": { - "us": 2358.8, + "us": 2367.4, "level": "full" }, "Document (raw numbers)": { - "us": 2394.5, + "us": 2396.2, "level": "full" } } @@ -6121,63 +6121,63 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 765.3, + "us": 855.1, "level": "full" }, "best_any": { "variant": "parse", - "us": 765.3, + "us": 855.1, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 760.3, + "us": 856.7, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 760.3, + "us": 856.7, "level": "full" }, "variants": { - "read (reused)": { - "us": 760.3, + "parse": { + "us": 855.1, "level": "full" }, - "parse": { - "us": 765.3, + "read (reused)": { + "us": 856.7, "level": "full" }, "structs (from_json)": { - "us": 796.0, + "us": 885.4, "level": "full" }, "parse_copy": { - "us": 886.0, + "us": 967.7, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "structs (from_json)", - "us": 5125.6, + "variant": "parse", + "us": 4466.1, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 5125.6, + "variant": "parse", + "us": 4466.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "structs (from_json)": { - "us": 5125.6, + "parse": { + "us": 4466.1, "level": "full" }, - "parse": { - "us": 5171.2, + "structs (from_json)": { + "us": 4477.8, "level": "full" } } @@ -6185,43 +6185,43 @@ "yyjson": { "best": { "variant": "insitu (copy)", - "us": 999.2, + "us": 994.1, "level": "full" }, "best_any": { "variant": "insitu (copy)", - "us": 999.2, + "us": 994.1, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 1012.9, + "us": 1000.5, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 1012.9, + "us": 1000.5, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 880.4, + "us": 877.6, "level": "full" }, "insitu (copy)": { - "us": 999.2, + "us": 994.1, "level": "full" }, "read": { - "us": 999.4, - "level": "full" - }, - "read (raw numbers)": { - "us": 1008.9, + "us": 996.1, "level": "full" }, "read (reused allocator)": { - "us": 1012.9, + "us": 1000.5, + "level": "full" + }, + "read (raw numbers)": { + "us": 1006.0, "level": "full" } } @@ -6229,47 +6229,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 756.1, + "us": 748.0, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 509.4, + "us": 508.3, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 751.9, + "us": 744.5, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 509.0, + "us": 506.5, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 509.0, + "us": 506.5, "level": "partial" }, "On-Demand": { - "us": 509.4, + "us": 508.3, "level": "partial" }, "On-Demand (key selectors)": { - "us": 510.5, + "us": 509.7, "level": "partial" }, "On-Demand structs": { - "us": 548.8, + "us": 549.1, "level": "partial" }, "DOM (reused)": { - "us": 751.9, + "us": 744.5, "level": "full" }, "DOM": { - "us": 756.1, + "us": 748.0, "level": "full" } } @@ -6278,14 +6278,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1042.6, + "us": 1044.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1042.6, + "us": 1044.2, "level": "no UTF-8" } } @@ -6293,43 +6293,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 1434.9, + "us": 1472.8, "level": "full" }, "best_any": { "variant": "structs", - "us": 409.5, + "us": 406.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 409.5, + "us": 406.4, "level": "partial" }, "structs (validate_skipped)": { - "us": 1434.9, + "us": 1472.8, "level": "full" }, "generic (double, strict)": { - "us": 3911.3, + "us": 3897.9, "level": "full" }, "generic (double)": { - "us": 4056.8, + "us": 3922.5, "level": "partial" }, "generic": { - "us": 5729.0, + "us": 5554.6, "level": "partial" }, "generic (strict)": { - "us": 5799.8, + "us": 5694.8, "level": "full" }, "lazy_json": { - "us": 9001.1, + "us": 9081.6, "level": "partial" } }, @@ -6340,35 +6340,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 1379.9, + "us": 1352.9, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 1379.9, + "us": 1352.9, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1908.9, + "us": 1868.2, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1908.9, + "us": 1868.2, "level": "full" }, "variants": { "parse_into structs": { - "us": 1379.9, - "level": "full" - }, - "parse": { - "us": 1907.9, + "us": 1352.9, "level": "full" }, "parser (reused)": { - "us": 1908.9, + "us": 1868.2, + "level": "full" + }, + "parse": { + "us": 1875.8, "level": "full" } }, @@ -6379,71 +6379,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 2245.1, + "us": 1947.1, "level": "full" }, "best_any": { - "variant": "Document (no encoding check)", - "us": 1939.6, + "variant": "insitu (copy) (no encoding check)", + "us": 1846.7, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1985.5, + "us": 1988.4, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 1985.5, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 1927.6, + "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1817.0, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 1939.6, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 1968.9, - "level": "no UTF-8" - }, - "Document (reused allocator)": { - "us": 1985.5, - "level": "full" - }, - "Document (reused allocator) (no encoding check)": { - "us": 2018.4, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 2079.1, + "us": 1725.9, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 2127.0, + "us": 1833.4, "level": "full" }, - "Document (raw numbers) (no encoding check)": { - "us": 2233.3, + "insitu (copy) (no encoding check)": { + "us": 1846.7, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 1927.6, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 1929.5, "level": "no UTF-8" }, "insitu (copy)": { - "us": 2245.1, + "us": 1947.1, "level": "full" }, + "Document (reused allocator)": { + "us": 1988.4, + "level": "full" + }, + "Document (string stream) (no encoding check)": { + "us": 2068.3, + "level": "no UTF-8" + }, + "Document (raw numbers) (no encoding check)": { + "us": 2181.4, + "level": "no UTF-8" + }, "Document": { - "us": 2568.2, + "us": 2504.5, "level": "full" }, "Document (string stream)": { - "us": 2616.9, + "us": 2600.7, "level": "full" }, "Document (raw numbers)": { - "us": 2848.5, + "us": 2748.6, "level": "full" } } @@ -6528,64 +6528,64 @@ "canada": { "nlohmann json_document": { "best": { - "variant": "parse", - "us": 1390.5, + "variant": "structs (from_json)", + "us": 1359.7, "level": "full" }, "best_any": { - "variant": "parse", - "us": 1390.5, + "variant": "structs (from_json)", + "us": 1359.7, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 1465.9, + "us": 1366.5, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 1465.9, + "us": 1366.5, "level": "full" }, "variants": { - "parse": { - "us": 1390.5, + "structs (from_json)": { + "us": 1359.7, "level": "full" }, - "structs (from_json)": { - "us": 1416.3, + "parse": { + "us": 1366.4, "level": "full" }, "read (reused)": { - "us": 1465.9, + "us": 1366.5, "level": "full" }, "parse_copy": { - "us": 1603.4, + "us": 1513.7, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "structs (from_json)", - "us": 11908.0, + "variant": "parse", + "us": 9084.8, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 11908.0, + "variant": "parse", + "us": 9084.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "structs (from_json)": { - "us": 11908.0, + "parse": { + "us": 9084.8, "level": "full" }, - "parse": { - "us": 12035.9, + "structs (from_json)": { + "us": 9207.1, "level": "full" } } @@ -6593,43 +6593,43 @@ "yyjson": { "best": { "variant": "read (raw numbers)", - "us": 2236.0, + "us": 2227.9, "level": "full" }, "best_any": { "variant": "read (raw numbers)", - "us": 2236.0, + "us": 2227.9, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 5554.3, + "us": 5327.2, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 5554.3, + "us": 5327.2, "level": "full" }, "variants": { "read (raw numbers)": { - "us": 2236.0, + "us": 2227.9, "level": "full" }, "insitu (copy untimed)": { - "us": 5480.1, - "level": "full" - }, - "read": { - "us": 5525.7, + "us": 5184.5, "level": "full" }, "read (reused allocator)": { - "us": 5554.3, + "us": 5327.2, "level": "full" }, "insitu (copy)": { - "us": 5597.7, + "us": 5336.3, + "level": "full" + }, + "read": { + "us": 5339.1, "level": "full" } } @@ -6637,47 +6637,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 3409.0, + "us": 3189.3, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 700.0, + "us": 706.7, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 3229.9, + "us": 3194.0, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 698.1, + "us": 698.7, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 698.1, + "us": 698.7, "level": "partial" }, "On-Demand": { - "us": 700.0, + "us": 706.7, "level": "partial" }, "On-Demand (key selectors)": { - "us": 747.1, + "us": 737.9, "level": "partial" }, "On-Demand structs": { - "us": 921.4, + "us": 917.6, "level": "partial" }, - "DOM (reused)": { - "us": 3229.9, + "DOM": { + "us": 3189.3, "level": "full" }, - "DOM": { - "us": 3409.0, + "DOM (reused)": { + "us": 3194.0, "level": "full" } } @@ -6686,14 +6686,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3694.8, + "us": 3631.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3694.8, + "us": 3631.6, "level": "no UTF-8" } } @@ -6701,43 +6701,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 1913.3, + "us": 1852.9, "level": "full" }, "best_any": { "variant": "structs", - "us": 431.3, + "us": 434.0, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 431.3, + "us": 434.0, "level": "partial" }, "structs (validate_skipped)": { - "us": 1913.3, + "us": 1852.9, "level": "full" }, "lazy_json": { - "us": 3043.2, + "us": 3642.8, "level": "partial" }, "generic (double)": { - "us": 10291.5, + "us": 9923.7, "level": "partial" }, "generic (double, strict)": { - "us": 10403.4, + "us": 9959.2, "level": "full" }, "generic": { - "us": 19729.3, + "us": 18760.9, "level": "partial" }, "generic (strict)": { - "us": 20097.5, + "us": 18886.4, "level": "full" } }, @@ -6748,35 +6748,35 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 7216.6, + "us": 7010.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 7216.6, + "us": 7010.6, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 7211.5, + "us": 7045.7, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 7211.5, + "us": 7045.7, "level": "full" }, "variants": { - "parser (reused)": { - "us": 7211.5, + "parse": { + "us": 7010.6, "level": "full" }, - "parse": { - "us": 7216.6, + "parser (reused)": { + "us": 7045.7, "level": "full" }, "parse_into structs": { - "us": 7453.0, + "us": 7233.9, "level": "full" } }, @@ -6787,71 +6787,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 11762.3, + "us": 11910.4, "level": "full" }, "best_any": { - "variant": "Document (string stream) (no encoding check)", - "us": 11435.5, + "variant": "Document (no encoding check)", + "us": 11691.9, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 11421.3, + "us": 11583.4, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 11421.3, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 11559.2, + "level": "no UTF-8" }, "variants": { - "Document (reused allocator)": { - "us": 11421.3, - "level": "full" - }, - "Document (string stream) (no encoding check)": { - "us": 11435.5, - "level": "no UTF-8" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 11462.8, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 11520.4, - "level": "no UTF-8" - }, - "insitu (copy untimed)": { - "us": 11547.2, - "level": "full" - }, "Document (reused allocator) (no encoding check)": { - "us": 11592.0, + "us": 11559.2, "level": "no UTF-8" }, - "insitu (copy)": { - "us": 11762.3, - "level": "full" - }, - "Document": { - "us": 11791.5, + "Document (reused allocator)": { + "us": 11583.4, "level": "full" }, "Document (no encoding check)": { - "us": 11945.4, + "us": 11691.9, "level": "no UTF-8" }, + "insitu (copy untimed) (no encoding check)": { + "us": 11762.0, + "level": "no UTF-8" + }, + "insitu (copy untimed)": { + "us": 11881.4, + "level": "full" + }, + "insitu (copy) (no encoding check)": { + "us": 11899.0, + "level": "no UTF-8" + }, + "insitu (copy)": { + "us": 11910.4, + "level": "full" + }, "Document (string stream)": { - "us": 12137.6, + "us": 11916.0, + "level": "full" + }, + "Document (string stream) (no encoding check)": { + "us": 12040.3, + "level": "no UTF-8" + }, + "Document": { + "us": 12262.9, "level": "full" }, "Document (raw numbers) (no encoding check)": { - "us": 13702.4, + "us": 12511.0, "level": "no UTF-8" }, "Document (raw numbers)": { - "us": 13880.3, + "us": 12644.2, "level": "full" } } @@ -6937,107 +6937,107 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 88201.8, + "us": 90597.3, "level": "full" }, "best_any": { "variant": "parse", - "us": 88201.8, + "us": 90597.3, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 54267.2, + "us": 52905.4, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 54267.2, + "us": 52905.4, "level": "full" }, "variants": { "read (reused)": { - "us": 54267.2, + "us": 52905.4, "level": "full" }, "parse": { - "us": 88201.8, + "us": 90597.3, "level": "full" }, "structs (from_json)": { - "us": 101996.9, + "us": 107916.7, "level": "full" }, "parse_copy": { - "us": 127312.7, + "us": 129530.3, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "structs (from_json)", - "us": 423361.7, + "variant": "parse", + "us": 376812.2, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 423361.7, + "variant": "parse", + "us": 376812.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "structs (from_json)": { - "us": 423361.7, + "parse": { + "us": 376812.2, "level": "full" }, - "parse": { - "us": 430906.6, + "structs (from_json)": { + "us": 382365.8, "level": "full" } } }, "yyjson": { "best": { - "variant": "read", - "us": 137442.8, + "variant": "read (raw numbers)", + "us": 140073.1, "level": "full" }, "best_any": { - "variant": "read", - "us": 137442.8, + "variant": "read (raw numbers)", + "us": 140073.1, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 70365.8, + "us": 72547.9, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 70365.8, + "us": 72547.9, "level": "full" }, "variants": { "read (reused allocator)": { - "us": 70365.8, + "us": 72547.9, "level": "full" }, "insitu (copy untimed)": { - "us": 98636.9, - "level": "full" - }, - "read": { - "us": 137442.8, + "us": 100704.8, "level": "full" }, "read (raw numbers)": { - "us": 138127.7, + "us": 140073.1, "level": "full" }, "insitu (copy)": { - "us": 142337.4, + "us": 142151.7, + "level": "full" + }, + "read": { + "us": 143358.8, "level": "full" } } @@ -7045,47 +7045,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 123214.2, + "us": 126288.3, "level": "full" }, "best_any": { - "variant": "On-Demand", - "us": 48614.2, + "variant": "On-Demand (key selectors)", + "us": 50215.3, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 57246.2, + "us": 58786.1, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 29249.2, + "us": 31108.5, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 29249.2, - "level": "partial" - }, - "On-Demand": { - "us": 48614.2, + "us": 31108.5, "level": "partial" }, "On-Demand (key selectors)": { - "us": 49110.1, + "us": 50215.3, + "level": "partial" + }, + "On-Demand": { + "us": 50947.7, "level": "partial" }, "DOM (reused)": { - "us": 57246.2, + "us": 58786.1, "level": "full" }, "On-Demand structs": { - "us": 72096.7, + "us": 70861.9, "level": "partial" }, "DOM": { - "us": 123214.2, + "us": 126288.3, "level": "full" } } @@ -7094,14 +7094,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 108296.7, + "us": 106188.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 108296.7, + "us": 106188.2, "level": "no UTF-8" } } @@ -7109,43 +7109,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 91253.1, + "us": 89506.3, "level": "full" }, "best_any": { "variant": "structs", - "us": 66068.8, + "us": 66028.9, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 66068.8, + "us": 66028.9, "level": "partial" }, "structs (validate_skipped)": { - "us": 91253.1, + "us": 89506.3, "level": "full" }, "lazy_json": { - "us": 119018.0, + "us": 110829.3, + "level": "partial" + }, + "generic (double)": { + "us": 253419.2, "level": "partial" }, "generic (double, strict)": { - "us": 247084.3, + "us": 254361.8, "level": "full" }, - "generic (double)": { - "us": 251551.1, - "level": "partial" - }, "generic (strict)": { - "us": 342271.8, + "us": 351643.3, "level": "full" }, "generic": { - "us": 346828.2, + "us": 365040.8, "level": "partial" } }, @@ -7156,35 +7156,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 99077.5, + "us": 100039.3, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 99077.5, + "us": 100039.3, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 144837.3, + "us": 147786.3, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 144837.3, + "us": 147786.3, "level": "full" }, "variants": { "parse_into structs": { - "us": 99077.5, + "us": 100039.3, "level": "full" }, "parser (reused)": { - "us": 144837.3, + "us": 147786.3, "level": "full" }, "parse": { - "us": 205149.1, + "us": 205694.9, "level": "full" } }, @@ -7195,71 +7195,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 222625.3, + "us": 164386.2, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 163654.2, + "us": 147489.3, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 197438.0, + "us": 197086.6, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 194537.4, + "us": 193917.7, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 122353.6, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 163654.2, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 166650.0, + "us": 107268.1, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 176066.1, + "us": 119067.5, "level": "full" }, - "Document (reused allocator) (no encoding check)": { - "us": 194537.4, - "level": "no UTF-8" - }, - "Document (reused allocator)": { - "us": 197438.0, - "level": "full" - }, - "Document (raw numbers) (no encoding check)": { - "us": 198332.6, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 200011.2, + "insitu (copy) (no encoding check)": { + "us": 147489.3, "level": "no UTF-8" }, "insitu (copy)": { - "us": 222625.3, + "us": 164386.2, "level": "full" }, + "Document (string stream) (no encoding check)": { + "us": 164907.9, + "level": "no UTF-8" + }, + "Document (reused allocator) (no encoding check)": { + "us": 193917.7, + "level": "no UTF-8" + }, + "Document (reused allocator)": { + "us": 197086.6, + "level": "full" + }, + "Document (raw numbers) (no encoding check)": { + "us": 211186.8, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 213386.7, + "level": "no UTF-8" + }, "Document (string stream)": { - "us": 279094.5, - "level": "full" - }, - "Document": { - "us": 306019.9, + "us": 275335.8, "level": "full" }, "Document (raw numbers)": { - "us": 316505.9, + "us": 312323.6, + "level": "full" + }, + "Document": { + "us": 318647.0, "level": "full" } } @@ -7385,23 +7385,23 @@ "nlohmann json": { "best": { "variant": "structs (from_json)", - "us": 17.0, + "us": 15.7, "level": "full" }, "best_any": { "variant": "structs (from_json)", - "us": 17.0, + "us": 15.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "structs (from_json)": { - "us": 17.0, + "us": 15.7, "level": "full" }, "parse": { - "us": 17.1, + "us": 16.1, "level": "full" } } @@ -7517,43 +7517,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 2.0, + "us": 1.9, "level": "full" }, "best_any": { "variant": "structs", - "us": 1.5, + "us": 1.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 1.5, + "us": 1.4, "level": "partial" }, "structs (validate_skipped)": { - "us": 2.0, + "us": 1.9, "level": "full" }, "lazy_json": { - "us": 2.3, - "level": "partial" - }, - "generic (double)": { - "us": 9.4, + "us": 2.1, "level": "partial" }, "generic (double, strict)": { "us": 9.4, "level": "full" }, + "generic (double)": { + "us": 9.6, + "level": "partial" + }, "generic (strict)": { - "us": 13.5, + "us": 13.7, "level": "full" }, "generic": { - "us": 13.6, + "us": 13.9, "level": "partial" } }, @@ -7574,12 +7574,12 @@ }, "best_reused": { "variant": "parser (reused)", - "us": 6.5, + "us": 6.6, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 6.5, + "us": 6.6, "level": "full" }, "variants": { @@ -7588,7 +7588,7 @@ "level": "full" }, "parser (reused)": { - "us": 6.5, + "us": 6.6, "level": "full" }, "parse": { @@ -7603,72 +7603,72 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 7.2, + "us": 5.0, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 3.8, + "us": 3.4, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 8.1, + "us": 8.2, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 7.6, + "us": 7.9, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 3.7, + "us": 3.3, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 3.8, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 5.3, + "us": 3.4, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 7.1, + "us": 4.9, "level": "full" }, "insitu (copy)": { - "us": 7.2, + "us": 5.0, "level": "full" }, + "Document (string stream) (no encoding check)": { + "us": 5.5, + "level": "no UTF-8" + }, "Document (reused allocator) (no encoding check)": { - "us": 7.6, + "us": 7.9, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 8.1, + "us": 8.2, "level": "full" }, - "Document (no encoding check)": { - "us": 8.2, + "Document (raw numbers) (no encoding check)": { + "us": 8.3, "level": "no UTF-8" }, - "Document (raw numbers) (no encoding check)": { + "Document (no encoding check)": { "us": 8.4, "level": "no UTF-8" }, "Document (string stream)": { - "us": 11.5, - "level": "full" - }, - "Document": { - "us": 12.9, + "us": 11.8, "level": "full" }, "Document (raw numbers)": { "us": 13.1, "level": "full" + }, + "Document": { + "us": 13.2, + "level": "full" } } }, @@ -7752,64 +7752,64 @@ "twitter_min": { "nlohmann json_document": { "best": { - "variant": "structs (from_json)", - "us": 282.2, + "variant": "parse", + "us": 277.3, "level": "full" }, "best_any": { - "variant": "structs (from_json)", - "us": 282.2, + "variant": "parse", + "us": 277.3, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 274.7, + "us": 268.9, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 274.7, + "us": 268.9, "level": "full" }, "variants": { "read (reused)": { - "us": 274.7, - "level": "full" - }, - "structs (from_json)": { - "us": 282.2, + "us": 268.9, "level": "full" }, "parse": { - "us": 283.0, + "us": 277.3, + "level": "full" + }, + "structs (from_json)": { + "us": 280.2, "level": "full" }, "parse_copy": { - "us": 310.2, + "us": 307.4, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "parse", - "us": 3197.9, + "variant": "structs (from_json)", + "us": 2925.4, "level": "full" }, "best_any": { - "variant": "parse", - "us": 3197.9, + "variant": "structs (from_json)", + "us": 2925.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "parse": { - "us": 3197.9, + "structs (from_json)": { + "us": 2925.4, "level": "full" }, - "structs (from_json)": { - "us": 3219.2, + "parse": { + "us": 2926.9, "level": "full" } } @@ -7817,43 +7817,43 @@ "yyjson": { "best": { "variant": "read", - "us": 340.4, + "us": 338.4, "level": "full" }, "best_any": { "variant": "read", - "us": 340.4, + "us": 338.4, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 342.4, + "us": 337.6, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 342.4, + "us": 337.6, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 311.6, - "level": "full" - }, - "read": { - "us": 340.4, - "level": "full" - }, - "insitu (copy)": { - "us": 341.5, + "us": 307.1, "level": "full" }, "read (reused allocator)": { - "us": 342.4, + "us": 337.6, + "level": "full" + }, + "read": { + "us": 338.4, + "level": "full" + }, + "insitu (copy)": { + "us": 338.5, "level": "full" }, "read (raw numbers)": { - "us": 346.2, + "us": 344.5, "level": "full" } } @@ -7861,47 +7861,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 302.7, + "us": 304.2, "level": "full" }, "best_any": { - "variant": "On-Demand (key selectors)", - "us": 163.0, + "variant": "On-Demand", + "us": 166.7, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 301.6, + "us": 307.2, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 161.1, + "us": 163.5, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 161.1, - "level": "partial" - }, - "On-Demand (key selectors)": { - "us": 163.0, + "us": 163.5, "level": "partial" }, "On-Demand": { - "us": 165.0, - "level": "partial" - }, - "On-Demand structs": { "us": 166.7, "level": "partial" }, - "DOM (reused)": { - "us": 301.6, - "level": "full" + "On-Demand (key selectors)": { + "us": 169.7, + "level": "partial" + }, + "On-Demand structs": { + "us": 170.0, + "level": "partial" }, "DOM": { - "us": 302.7, + "us": 304.2, + "level": "full" + }, + "DOM (reused)": { + "us": 307.2, "level": "full" } } @@ -7925,43 +7925,43 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 419.5, + "us": 416.9, "level": "full" }, "best_any": { "variant": "structs", - "us": 295.1, + "us": 292.5, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 295.1, + "us": 292.5, "level": "partial" }, "structs (validate_skipped)": { - "us": 419.5, + "us": 416.9, "level": "full" }, "lazy_json": { - "us": 444.4, + "us": 436.3, "level": "partial" }, "generic (double, strict)": { - "us": 2205.2, + "us": 2229.0, "level": "full" }, "generic (double)": { - "us": 2222.0, + "us": 2238.7, "level": "partial" }, "generic (strict)": { - "us": 2927.1, + "us": 2917.4, "level": "full" }, "generic": { - "us": 2964.5, + "us": 2947.4, "level": "partial" } }, @@ -7972,35 +7972,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 767.6, + "us": 764.3, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 767.6, + "us": 764.3, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1316.5, + "us": 1326.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1316.5, + "us": 1326.8, "level": "full" }, "variants": { "parse_into structs": { - "us": 767.6, - "level": "full" - }, - "parser (reused)": { - "us": 1316.5, + "us": 764.3, "level": "full" }, "parse": { - "us": 1325.8, + "us": 1309.3, + "level": "full" + }, + "parser (reused)": { + "us": 1326.8, "level": "full" } }, @@ -8011,71 +8011,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1270.5, + "us": 868.7, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 845.1, + "us": 748.8, "level": "no UTF-8" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1507.4, + "us": 1515.4, "level": "full" }, "best_reused_any": { "variant": "Document (reused allocator) (no encoding check)", - "us": 1412.9, + "us": 1422.4, "level": "no UTF-8" }, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 818.1, + "us": 719.3, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 845.1, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 1171.1, + "us": 748.8, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1237.8, + "us": 829.8, "level": "full" }, "insitu (copy)": { - "us": 1270.5, + "us": 868.7, "level": "full" }, + "Document (string stream) (no encoding check)": { + "us": 1172.8, + "level": "no UTF-8" + }, "Document (reused allocator) (no encoding check)": { - "us": 1412.9, + "us": 1422.4, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1446.7, + "us": 1440.6, "level": "no UTF-8" }, "Document (raw numbers) (no encoding check)": { - "us": 1501.0, + "us": 1463.7, "level": "no UTF-8" }, "Document (reused allocator)": { - "us": 1507.4, + "us": 1515.4, "level": "full" }, "Document (string stream)": { - "us": 2027.8, + "us": 2042.8, "level": "full" }, "Document": { - "us": 2281.8, + "us": 2281.1, "level": "full" }, "Document (raw numbers)": { - "us": 2357.6, + "us": 2314.7, "level": "full" } } @@ -8161,39 +8161,39 @@ "nlohmann json_document": { "best": { "variant": "parse", - "us": 547.7, + "us": 526.2, "level": "full" }, "best_any": { "variant": "parse", - "us": 547.7, + "us": 526.2, "level": "full" }, "best_reused": { "variant": "read (reused)", - "us": 546.2, + "us": 525.1, "level": "full" }, "best_reused_any": { "variant": "read (reused)", - "us": 546.2, + "us": 525.1, "level": "full" }, "variants": { "read (reused)": { - "us": 546.2, + "us": 525.1, "level": "full" }, "parse": { - "us": 547.7, - "level": "full" - }, - "parse_copy": { - "us": 570.6, + "us": 526.2, "level": "full" }, "structs (from_json)": { - "us": 571.1, + "us": 557.0, + "level": "full" + }, + "parse_copy": { + "us": 558.2, "level": "full" } } @@ -8201,67 +8201,67 @@ "nlohmann json": { "best": { "variant": "parse", - "us": 4968.0, + "us": 4073.8, "level": "full" }, "best_any": { "variant": "parse", - "us": 4968.0, + "us": 4073.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 4968.0, + "us": 4073.8, "level": "full" }, "structs (from_json)": { - "us": 5127.0, + "us": 4133.7, "level": "full" } } }, "yyjson": { "best": { - "variant": "read", - "us": 514.9, + "variant": "insitu (copy)", + "us": 512.7, "level": "full" }, "best_any": { - "variant": "read", - "us": 514.9, + "variant": "insitu (copy)", + "us": 512.7, "level": "full" }, "best_reused": { "variant": "read (reused allocator)", - "us": 515.1, + "us": 513.4, "level": "full" }, "best_reused_any": { "variant": "read (reused allocator)", - "us": 515.1, + "us": 513.4, "level": "full" }, "variants": { "insitu (copy untimed)": { - "us": 482.3, - "level": "full" - }, - "read": { - "us": 514.9, - "level": "full" - }, - "read (reused allocator)": { - "us": 515.1, - "level": "full" - }, - "read (raw numbers)": { - "us": 532.4, + "us": 480.6, "level": "full" }, "insitu (copy)": { - "us": 541.5, + "us": 512.7, + "level": "full" + }, + "read": { + "us": 513.1, + "level": "full" + }, + "read (reused allocator)": { + "us": 513.4, + "level": "full" + }, + "read (raw numbers)": { + "us": 532.5, "level": "full" } } @@ -8269,47 +8269,47 @@ "simdjson": { "best": { "variant": "DOM", - "us": 591.1, + "us": 584.1, "level": "full" }, "best_any": { "variant": "On-Demand", - "us": 330.6, + "us": 329.6, "level": "partial" }, "best_reused": { "variant": "DOM (reused)", - "us": 593.5, + "us": 583.7, "level": "full" }, "best_reused_any": { "variant": "On-Demand (reused)", - "us": 329.2, + "us": 328.3, "level": "partial" }, "variants": { "On-Demand (reused)": { - "us": 329.2, + "us": 328.3, "level": "partial" }, "On-Demand": { - "us": 330.6, + "us": 329.6, "level": "partial" }, "On-Demand (key selectors)": { - "us": 331.2, + "us": 332.1, "level": "partial" }, "On-Demand structs": { - "us": 381.5, + "us": 371.1, "level": "partial" }, - "DOM": { - "us": 591.1, + "DOM (reused)": { + "us": 583.7, "level": "full" }, - "DOM (reused)": { - "us": 593.5, + "DOM": { + "us": 584.1, "level": "full" } } @@ -8318,14 +8318,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 704.0, + "us": 707.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 704.0, + "us": 707.1, "level": "no UTF-8" } } @@ -8333,44 +8333,44 @@ "Glaze": { "best": { "variant": "structs (validate_skipped)", - "us": 712.3, + "us": 684.3, "level": "full" }, "best_any": { "variant": "structs", - "us": 208.3, + "us": 206.6, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "structs": { - "us": 208.3, + "us": 206.6, "level": "partial" }, "structs (validate_skipped)": { - "us": 712.3, + "us": 684.3, "level": "full" }, "lazy_json": { - "us": 1545.7, + "us": 1453.2, "level": "partial" }, "generic (double, strict)": { - "us": 3344.9, + "us": 3193.1, "level": "full" }, "generic (double)": { - "us": 3474.6, - "level": "partial" - }, - "generic": { - "us": 5185.9, + "us": 3222.7, "level": "partial" }, "generic (strict)": { - "us": 5524.8, + "us": 4911.6, "level": "full" + }, + "generic": { + "us": 5077.4, + "level": "partial" } }, "excluded": { @@ -8380,35 +8380,35 @@ "Boost.JSON": { "best": { "variant": "parse_into structs", - "us": 1140.5, + "us": 1045.8, "level": "full" }, "best_any": { "variant": "parse_into structs", - "us": 1140.5, + "us": 1045.8, "level": "full" }, "best_reused": { "variant": "parser (reused)", - "us": 1617.2, + "us": 1531.8, "level": "full" }, "best_reused_any": { "variant": "parser (reused)", - "us": 1617.2, + "us": 1531.8, "level": "full" }, "variants": { "parse_into structs": { - "us": 1140.5, - "level": "full" - }, - "parse": { - "us": 1609.5, + "us": 1045.8, "level": "full" }, "parser (reused)": { - "us": 1617.2, + "us": 1531.8, + "level": "full" + }, + "parse": { + "us": 1538.9, "level": "full" } }, @@ -8419,71 +8419,71 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1662.8, + "us": 1303.5, "level": "full" }, "best_any": { - "variant": "insitu (copy) (no encoding check)", - "us": 1569.5, - "level": "no UTF-8" + "variant": "insitu (copy)", + "us": 1303.5, + "level": "full" }, "best_reused": { "variant": "Document (reused allocator)", - "us": 1812.1, + "us": 1779.9, "level": "full" }, "best_reused_any": { - "variant": "Document (reused allocator)", - "us": 1812.1, - "level": "full" + "variant": "Document (reused allocator) (no encoding check)", + "us": 1729.4, + "level": "no UTF-8" }, "variants": { - "insitu (copy untimed) (no encoding check)": { - "us": 1412.0, - "level": "no UTF-8" + "insitu (copy untimed)": { + "us": 1270.9, + "level": "full" }, - "insitu (copy) (no encoding check)": { - "us": 1569.5, + "insitu (copy untimed) (no encoding check)": { + "us": 1283.1, "level": "no UTF-8" }, "insitu (copy)": { - "us": 1662.8, + "us": 1303.5, "level": "full" }, - "insitu (copy untimed)": { - "us": 1665.6, - "level": "full" - }, - "Document (reused allocator)": { - "us": 1812.1, - "level": "full" - }, - "Document (string stream) (no encoding check)": { - "us": 1853.1, + "insitu (copy) (no encoding check)": { + "us": 1318.1, "level": "no UTF-8" }, "Document (reused allocator) (no encoding check)": { - "us": 1854.2, + "us": 1729.4, + "level": "no UTF-8" + }, + "Document (string stream) (no encoding check)": { + "us": 1751.2, "level": "no UTF-8" }, "Document (no encoding check)": { - "us": 1914.7, + "us": 1751.3, "level": "no UTF-8" }, + "Document (reused allocator)": { + "us": 1779.9, + "level": "full" + }, "Document (raw numbers) (no encoding check)": { - "us": 2121.9, + "us": 2011.0, "level": "no UTF-8" }, "Document (string stream)": { - "us": 2257.7, + "us": 2213.8, "level": "full" }, "Document": { - "us": 2502.0, + "us": 2297.4, "level": "full" }, "Document (raw numbers)": { - "us": 2912.4, + "us": 2582.9, "level": "full" } } @@ -8571,23 +8571,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 531.8, + "us": 530.3, "level": "full" }, "best_any": { "variant": "editable", - "us": 531.8, + "us": 530.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 531.8, + "us": 530.3, "level": "full" }, "editable (source numbers)": { - "us": 569.2, + "us": 553.9, "level": "full" } } @@ -8595,51 +8595,51 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 2911.8, + "us": 2502.6, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 2911.8, + "us": 2502.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 2911.8, + "us": 2502.6, "level": "full" }, "parse": { - "us": 3912.8, + "us": 3472.0, "level": "full" } } }, "yyjson": { "best": { - "variant": "mut copy", - "us": 803.9, + "variant": "insitu (copy) + mut copy", + "us": 841.3, "level": "full" }, "best_any": { - "variant": "mut copy", - "us": 803.9, + "variant": "insitu (copy) + mut copy", + "us": 841.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 761.1, - "level": "full" - }, - "mut copy": { - "us": 803.9, + "us": 815.3, "level": "full" }, "insitu (copy) + mut copy": { - "us": 804.0, + "us": 841.3, + "level": "full" + }, + "mut copy": { + "us": 847.4, "level": "full" } } @@ -8648,14 +8648,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 636.7, + "us": 632.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 636.7, + "us": 632.0, "level": "no UTF-8" } } @@ -8663,23 +8663,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3524.7, + "us": 3473.7, "level": "full" }, "best_any": { "variant": "generic", - "us": 3487.4, + "us": 3444.2, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 3487.4, + "us": 3444.2, "level": "partial" }, "generic (strict)": { - "us": 3524.7, + "us": 3473.7, "level": "full" } }, @@ -8691,19 +8691,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 1962.7, + "us": 1888.7, "level": "full" }, "best_any": { "variant": "parse", - "us": 1962.7, + "us": 1888.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 1962.7, + "us": 1888.7, "level": "full" } } @@ -8711,47 +8711,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 2341.6, + "us": 1920.1, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1864.1, + "us": 1747.1, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1837.8, + "us": 1710.7, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1864.1, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 2046.0, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 2114.7, + "us": 1747.1, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 2333.0, + "us": 1880.7, "level": "full" }, "insitu (copy)": { - "us": 2341.6, + "us": 1920.1, + "level": "full" + }, + "Document (string stream) (no encoding check)": { + "us": 2003.6, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 2095.9, + "level": "no UTF-8" + }, + "Document (string stream)": { + "us": 2908.7, "level": "full" }, "Document": { - "us": 2970.0, - "level": "full" - }, - "Document (string stream)": { - "us": 3017.3, + "us": 2943.6, "level": "full" } } @@ -8825,23 +8825,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 1116.2, + "us": 1209.2, "level": "full" }, "best_any": { "variant": "editable", - "us": 1116.2, + "us": 1209.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 1116.2, + "us": 1209.2, "level": "full" }, "editable (source numbers)": { - "us": 1140.7, + "us": 1232.6, "level": "full" } } @@ -8849,23 +8849,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 4999.1, + "us": 4414.2, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 4999.1, + "us": 4414.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 4999.1, + "us": 4414.2, "level": "full" }, "parse": { - "us": 5737.2, + "us": 5192.6, "level": "full" } } @@ -8873,27 +8873,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 1697.2, + "us": 1718.6, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 1697.2, + "us": 1718.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 1590.3, + "us": 1596.9, "level": "full" }, "mut copy": { - "us": 1697.2, + "us": 1718.6, "level": "full" }, "insitu (copy) + mut copy": { - "us": 1708.2, + "us": 1719.5, "level": "full" } } @@ -8902,14 +8902,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1559.1, + "us": 1583.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1559.1, + "us": 1583.3, "level": "no UTF-8" } } @@ -8917,23 +8917,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 6551.1, + "us": 6531.1, "level": "full" }, "best_any": { "variant": "generic", - "us": 6451.0, + "us": 6302.4, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 6451.0, + "us": 6302.4, "level": "partial" }, "generic (strict)": { - "us": 6551.1, + "us": 6531.1, "level": "full" } }, @@ -8945,19 +8945,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 2936.1, + "us": 2951.5, "level": "full" }, "best_any": { "variant": "parse", - "us": 2936.1, + "us": 2951.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 2936.1, + "us": 2951.5, "level": "full" } } @@ -8965,47 +8965,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 3242.4, + "us": 2976.7, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 2924.6, + "us": 2822.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 2836.4, + "us": 2747.3, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 2924.6, - "level": "no UTF-8" - }, - "Document (no encoding check)": { - "us": 2925.1, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 3066.4, + "us": 2822.8, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 3133.4, + "us": 2853.8, "level": "full" }, + "Document (no encoding check)": { + "us": 2894.9, + "level": "no UTF-8" + }, "insitu (copy)": { - "us": 3242.4, + "us": 2976.7, "level": "full" }, + "Document (string stream) (no encoding check)": { + "us": 3016.1, + "level": "no UTF-8" + }, "Document": { - "us": 3522.6, + "us": 3442.9, "level": "full" }, "Document (string stream)": { - "us": 3593.8, + "us": 3583.2, "level": "full" } } @@ -9079,47 +9079,47 @@ "nlohmann json_document": { "best": { "variant": "editable (source numbers)", - "us": 2702.4, + "us": 2620.9, "level": "full" }, "best_any": { "variant": "editable (source numbers)", - "us": 2702.4, + "us": 2620.9, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable (source numbers)": { - "us": 2702.4, + "us": 2620.9, "level": "full" }, "editable": { - "us": 5713.5, + "us": 5791.8, "level": "full" } } }, "nlohmann json": { "best": { - "variant": "ordered_json", - "us": 15603.3, + "variant": "parse", + "us": 13479.2, "level": "full" }, "best_any": { - "variant": "ordered_json", - "us": 15603.3, + "variant": "parse", + "us": 13479.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "ordered_json": { - "us": 15603.3, + "parse": { + "us": 13479.2, "level": "full" }, - "parse": { - "us": 16014.3, + "ordered_json": { + "us": 13772.6, "level": "full" } } @@ -9127,27 +9127,27 @@ "yyjson": { "best": { "variant": "insitu (copy) + mut copy", - "us": 10020.0, + "us": 9803.2, "level": "full" }, "best_any": { "variant": "insitu (copy) + mut copy", - "us": 10020.0, + "us": 9803.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "insitu (copy untimed) + mut copy": { - "us": 9860.1, + "insitu (copy) + mut copy": { + "us": 9803.2, "level": "full" }, - "insitu (copy) + mut copy": { - "us": 10020.0, + "insitu (copy untimed) + mut copy": { + "us": 9886.5, "level": "full" }, "mut copy": { - "us": 10092.3, + "us": 9917.2, "level": "full" } } @@ -9156,14 +9156,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 8936.1, + "us": 8734.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 8936.1, + "us": 8734.3, "level": "no UTF-8" } } @@ -9171,24 +9171,24 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 23644.2, + "us": 23192.8, "level": "full" }, "best_any": { - "variant": "generic", - "us": 23383.4, - "level": "partial" + "variant": "generic (strict)", + "us": 23192.8, + "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic": { - "us": 23383.4, - "level": "partial" - }, "generic (strict)": { - "us": 23644.2, + "us": 23192.8, "level": "full" + }, + "generic": { + "us": 23604.3, + "level": "partial" } }, "excluded": { @@ -9199,19 +9199,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 13413.8, + "us": 13537.4, "level": "full" }, "best_any": { "variant": "parse", - "us": 13413.8, + "us": 13537.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 13413.8, + "us": 13537.4, "level": "full" } } @@ -9219,48 +9219,48 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 20517.7, + "us": 21151.5, "level": "full" }, "best_any": { - "variant": "Document (string stream) (no encoding check)", - "us": 20320.1, + "variant": "Document (no encoding check)", + "us": 20997.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { - "Document (string stream) (no encoding check)": { - "us": 20320.1, - "level": "no UTF-8" - }, - "insitu (copy untimed) (no encoding check)": { - "us": 20404.6, + "Document (no encoding check)": { + "us": 20997.7, "level": "no UTF-8" }, "insitu (copy)": { - "us": 20517.7, + "us": 21151.5, "level": "full" }, "insitu (copy untimed)": { - "us": 20565.1, + "us": 21315.3, "level": "full" }, - "insitu (copy) (no encoding check)": { - "us": 20868.2, + "Document (string stream) (no encoding check)": { + "us": 21389.7, "level": "no UTF-8" }, "Document": { - "us": 21148.6, + "us": 21501.3, "level": "full" }, + "insitu (copy) (no encoding check)": { + "us": 21606.3, + "level": "no UTF-8" + }, + "insitu (copy untimed) (no encoding check)": { + "us": 21635.4, + "level": "no UTF-8" + }, "Document (string stream)": { - "us": 21167.3, + "us": 21770.7, "level": "full" - }, - "Document (no encoding check)": { - "us": 21213.5, - "level": "no UTF-8" } } }, @@ -9333,23 +9333,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 192363.1, + "us": 193924.6, "level": "full" }, "best_any": { "variant": "editable", - "us": 192363.1, + "us": 193924.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 192363.1, + "us": 193924.6, "level": "full" }, "editable (source numbers)": { - "us": 192901.1, + "us": 196807.8, "level": "full" } } @@ -9357,51 +9357,51 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 604744.5, + "us": 622815.8, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 604744.5, + "us": 622815.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 604744.5, + "us": 622815.8, "level": "full" }, "parse": { - "us": 797374.8, + "us": 837815.7, "level": "full" } } }, "yyjson": { "best": { - "variant": "mut copy", - "us": 318307.9, + "variant": "insitu (copy) + mut copy", + "us": 309934.8, "level": "full" }, "best_any": { - "variant": "mut copy", - "us": 318307.9, + "variant": "insitu (copy) + mut copy", + "us": 309934.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 271226.6, - "level": "full" - }, - "mut copy": { - "us": 318307.9, + "us": 276774.3, "level": "full" }, "insitu (copy) + mut copy": { - "us": 318834.1, + "us": 309934.8, + "level": "full" + }, + "mut copy": { + "us": 312477.0, "level": "full" } } @@ -9410,14 +9410,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 186232.4, + "us": 184592.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 186232.4, + "us": 184592.4, "level": "no UTF-8" } } @@ -9425,24 +9425,24 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 661940.8, + "us": 673526.5, "level": "full" }, "best_any": { - "variant": "generic", - "us": 632543.1, - "level": "partial" + "variant": "generic (strict)", + "us": 673526.5, + "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic": { - "us": 632543.1, - "level": "partial" - }, "generic (strict)": { - "us": 661940.8, + "us": 673526.5, "level": "full" + }, + "generic": { + "us": 697997.1, + "level": "partial" } }, "excluded": { @@ -9453,19 +9453,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 356243.6, + "us": 346542.1, "level": "full" }, "best_any": { "variant": "parse", - "us": 356243.6, + "us": 346542.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 356243.6, + "us": 346542.1, "level": "full" } } @@ -9473,47 +9473,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 362000.7, + "us": 293850.7, "level": "full" }, "best_any": { - "variant": "Document (string stream) (no encoding check)", - "us": 296360.9, + "variant": "insitu (copy) (no encoding check)", + "us": 280165.3, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 271888.2, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 296360.9, - "level": "no UTF-8" - }, - "insitu (copy) (no encoding check)": { - "us": 302575.6, + "us": 235547.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 315892.3, + "us": 251930.5, "level": "full" }, - "Document (no encoding check)": { - "us": 332533.5, + "insitu (copy) (no encoding check)": { + "us": 280165.3, "level": "no UTF-8" }, "insitu (copy)": { - "us": 362000.7, + "us": 293850.7, "level": "full" }, + "Document (string stream) (no encoding check)": { + "us": 298879.0, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 333712.3, + "level": "no UTF-8" + }, "Document (string stream)": { - "us": 407503.6, + "us": 404977.4, "level": "full" }, "Document": { - "us": 452671.2, + "us": 442004.5, "level": "full" } } @@ -9611,51 +9611,51 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 13.5, + "us": 12.7, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 13.5, + "us": 12.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 13.5, + "us": 12.7, "level": "full" }, "parse": { - "us": 19.2, + "us": 18.3, "level": "full" } } }, "yyjson": { "best": { - "variant": "mut copy", - "us": 3.7, + "variant": "insitu (copy) + mut copy", + "us": 3.8, "level": "full" }, "best_any": { - "variant": "mut copy", - "us": 3.7, + "variant": "insitu (copy) + mut copy", + "us": 3.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "mut copy": { + "insitu (copy untimed) + mut copy": { "us": 3.7, "level": "full" }, "insitu (copy) + mut copy": { - "us": 3.7, + "us": 3.8, "level": "full" }, - "insitu (copy untimed) + mut copy": { - "us": 3.7, + "mut copy": { + "us": 3.9, "level": "full" } } @@ -9664,14 +9664,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 3.3, + "us": 3.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 3.3, + "us": 3.4, "level": "no UTF-8" } } @@ -9679,23 +9679,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 15.6, + "us": 16.5, "level": "full" }, "best_any": { "variant": "generic", - "us": 15.3, + "us": 16.0, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 15.3, + "us": 16.0, "level": "partial" }, "generic (strict)": { - "us": 15.6, + "us": 16.5, "level": "full" } }, @@ -9707,19 +9707,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 9.1, + "us": 9.6, "level": "full" }, "best_any": { "variant": "parse", - "us": 9.1, + "us": 9.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 9.1, + "us": 9.6, "level": "full" } } @@ -9727,47 +9727,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 11.1, + "us": 9.3, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 7.8, + "us": 7.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { - "insitu (copy untimed) (no encoding check)": { - "us": 7.7, - "level": "no UTF-8" - }, "insitu (copy) (no encoding check)": { - "us": 7.8, + "us": 7.6, "level": "no UTF-8" }, - "Document (string stream) (no encoding check)": { - "us": 9.2, + "insitu (copy untimed) (no encoding check)": { + "us": 7.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 11.0, + "us": 9.0, "level": "full" }, "insitu (copy)": { - "us": 11.1, + "us": 9.3, "level": "full" }, + "Document (string stream) (no encoding check)": { + "us": 9.7, + "level": "no UTF-8" + }, "Document (no encoding check)": { - "us": 12.1, + "us": 12.8, "level": "no UTF-8" }, "Document (string stream)": { - "us": 15.4, + "us": 16.2, "level": "full" }, "Document": { - "us": 17.0, + "us": 17.5, "level": "full" } } @@ -9841,23 +9841,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 480.1, + "us": 477.8, "level": "full" }, "best_any": { "variant": "editable", - "us": 480.1, + "us": 477.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 480.1, + "us": 477.8, "level": "full" }, "editable (source numbers)": { - "us": 512.0, + "us": 499.1, "level": "full" } } @@ -9865,23 +9865,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 2702.2, + "us": 2417.5, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 2702.2, + "us": 2417.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 2702.2, + "us": 2417.5, "level": "full" }, "parse": { - "us": 3686.1, + "us": 3336.5, "level": "full" } } @@ -9889,27 +9889,27 @@ "yyjson": { "best": { "variant": "insitu (copy) + mut copy", - "us": 726.3, + "us": 771.6, "level": "full" }, "best_any": { "variant": "insitu (copy) + mut copy", - "us": 726.3, + "us": 771.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 699.7, + "us": 752.8, "level": "full" }, "insitu (copy) + mut copy": { - "us": 726.3, + "us": 771.6, "level": "full" }, "mut copy": { - "us": 731.1, + "us": 814.7, "level": "full" } } @@ -9918,14 +9918,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 509.1, + "us": 520.0, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 509.1, + "us": 520.0, "level": "no UTF-8" } } @@ -9933,23 +9933,23 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3289.0, + "us": 3284.1, "level": "full" }, "best_any": { "variant": "generic", - "us": 3262.0, + "us": 3276.0, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 3262.0, + "us": 3276.0, "level": "partial" }, "generic (strict)": { - "us": 3289.0, + "us": 3284.1, "level": "full" } }, @@ -9961,19 +9961,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 1787.8, + "us": 1779.2, "level": "full" }, "best_any": { "variant": "parse", - "us": 1787.8, + "us": 1779.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 1787.8, + "us": 1779.2, "level": "full" } } @@ -9981,47 +9981,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 1992.5, + "us": 1566.4, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 1576.0, + "us": 1458.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 1547.9, + "us": 1434.5, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 1576.0, - "level": "no UTF-8" - }, - "Document (string stream) (no encoding check)": { - "us": 1799.3, + "us": 1458.6, "level": "no UTF-8" }, "insitu (copy untimed)": { - "us": 1950.2, + "us": 1531.7, "level": "full" }, "insitu (copy)": { - "us": 1992.5, + "us": 1566.4, "level": "full" }, + "Document (string stream) (no encoding check)": { + "us": 1776.8, + "level": "no UTF-8" + }, "Document (no encoding check)": { - "us": 2055.3, + "us": 2036.5, "level": "no UTF-8" }, "Document (string stream)": { - "us": 2652.6, + "us": 2632.0, "level": "full" }, "Document": { - "us": 2904.4, + "us": 2878.2, "level": "full" } } @@ -10095,23 +10095,23 @@ "nlohmann json_document": { "best": { "variant": "editable", - "us": 879.7, + "us": 865.3, "level": "full" }, "best_any": { "variant": "editable", - "us": 879.7, + "us": 865.3, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "editable": { - "us": 879.7, + "us": 865.3, "level": "full" }, "editable (source numbers)": { - "us": 905.9, + "us": 895.2, "level": "full" } } @@ -10119,23 +10119,23 @@ "nlohmann json": { "best": { "variant": "ordered_json", - "us": 4806.3, + "us": 4199.5, "level": "full" }, "best_any": { "variant": "ordered_json", - "us": 4806.3, + "us": 4199.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "ordered_json": { - "us": 4806.3, + "us": 4199.5, "level": "full" }, "parse": { - "us": 5720.2, + "us": 4818.0, "level": "full" } } @@ -10143,27 +10143,27 @@ "yyjson": { "best": { "variant": "mut copy", - "us": 1218.5, + "us": 1261.7, "level": "full" }, "best_any": { "variant": "mut copy", - "us": 1218.5, + "us": 1261.7, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) + mut copy": { - "us": 1183.3, + "us": 1243.4, "level": "full" }, "mut copy": { - "us": 1218.5, + "us": 1261.7, "level": "full" }, "insitu (copy) + mut copy": { - "us": 1218.7, + "us": 1308.4, "level": "full" } } @@ -10172,14 +10172,14 @@ "best": null, "best_any": { "variant": "Document", - "us": 1212.8, + "us": 1241.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document": { - "us": 1212.8, + "us": 1241.2, "level": "no UTF-8" } } @@ -10187,24 +10187,24 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 5896.5, + "us": 5599.6, "level": "full" }, "best_any": { - "variant": "generic", - "us": 5779.2, - "level": "partial" + "variant": "generic (strict)", + "us": 5599.6, + "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic": { - "us": 5779.2, - "level": "partial" - }, "generic (strict)": { - "us": 5896.5, + "us": 5599.6, "level": "full" + }, + "generic": { + "us": 5741.6, + "level": "partial" } }, "excluded": { @@ -10215,19 +10215,19 @@ "Boost.JSON": { "best": { "variant": "parse", - "us": 2632.9, + "us": 2655.4, "level": "full" }, "best_any": { "variant": "parse", - "us": 2632.9, + "us": 2655.4, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse": { - "us": 2632.9, + "us": 2655.4, "level": "full" } } @@ -10235,47 +10235,47 @@ "RapidJSON": { "best": { "variant": "insitu (copy)", - "us": 2703.7, + "us": 2348.3, "level": "full" }, "best_any": { "variant": "insitu (copy) (no encoding check)", - "us": 2514.7, + "us": 2289.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "insitu (copy untimed) (no encoding check)": { - "us": 2453.3, + "us": 2248.7, "level": "no UTF-8" }, "insitu (copy) (no encoding check)": { - "us": 2514.7, + "us": 2289.2, "level": "no UTF-8" }, - "insitu (copy untimed)": { - "us": 2616.7, - "level": "full" - }, "insitu (copy)": { - "us": 2703.7, + "us": 2348.3, "level": "full" }, - "Document (no encoding check)": { - "us": 2759.3, - "level": "no UTF-8" + "insitu (copy untimed)": { + "us": 2464.4, + "level": "full" }, "Document (string stream) (no encoding check)": { - "us": 2848.0, + "us": 2734.7, + "level": "no UTF-8" + }, + "Document (no encoding check)": { + "us": 2836.1, "level": "no UTF-8" }, "Document (string stream)": { - "us": 3273.4, + "us": 3180.1, "level": "full" }, "Document": { - "us": 3433.3, + "us": 3295.1, "level": "full" } } @@ -10350,40 +10350,40 @@ "twitter": { "nlohmann json_document": { "best": { - "variant": "parse + dump", - "us": 482.7, + "variant": "parse + dump (source numbers)", + "us": 470.7, "level": "full" }, "best_any": { - "variant": "parse + dump", - "us": 482.7, + "variant": "parse + dump (source numbers)", + "us": 470.7, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 505.9, + "us": 474.8, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 505.9, + "us": 474.8, "level": "full" }, "variants": { - "parse + dump": { - "us": 482.7, + "parse + dump (source numbers)": { + "us": 470.7, "level": "full" }, "read + dump (reused)": { - "us": 505.9, + "us": 474.8, "level": "full" }, - "parse + dump (source numbers)": { - "us": 522.4, + "parse + dump": { + "us": 475.2, "level": "full" }, "parse_copy + dump": { - "us": 564.1, + "us": 520.9, "level": "full" } } @@ -10391,63 +10391,63 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 4143.3, + "us": 3416.6, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 4143.3, + "us": 3416.6, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 4143.3, + "us": 3416.6, "level": "full" } } }, "yyjson": { "best": { - "variant": "read + write", - "us": 660.6, + "variant": "read (raw numbers) + write", + "us": 599.8, "level": "full" }, "best_any": { - "variant": "read + write", - "us": 660.6, + "variant": "read (raw numbers) + write", + "us": 599.8, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 644.0, + "us": 604.1, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 644.0, + "us": 604.1, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 591.7, - "level": "full" - }, - "read + write (reused allocator)": { - "us": 644.0, - "level": "full" - }, - "read + write": { - "us": 660.6, + "us": 559.5, "level": "full" }, "read (raw numbers) + write": { - "us": 683.8, + "us": 599.8, "level": "full" }, "insitu (copy) + write": { - "us": 687.8, + "us": 600.0, + "level": "full" + }, + "read + write": { + "us": 602.1, + "level": "full" + }, + "read + write (reused allocator)": { + "us": 604.1, "level": "full" } } @@ -10455,35 +10455,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 742.5, + "us": 689.3, "level": "full" }, "best_any": { "variant": "minify", - "us": 123.3, + "us": 121.8, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 733.5, + "us": 687.6, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 733.5, + "us": 687.6, "level": "full" }, "variants": { "minify": { - "us": 123.3, + "us": 121.8, "level": "partial" }, "DOM (reused) + to_string": { - "us": 733.5, + "us": 687.6, "level": "full" }, "DOM + to_string": { - "us": 742.5, + "us": 689.3, "level": "full" } } @@ -10492,14 +10492,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 695.4, + "us": 646.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 695.4, + "us": 646.8, "level": "no UTF-8" } } @@ -10507,27 +10507,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3779.5, + "us": 3358.7, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 422.3, + "us": 416.7, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 422.3, + "us": 416.7, "level": "partial" }, "generic": { - "us": 3665.8, + "us": 3331.5, "level": "partial" }, "generic (strict)": { - "us": 3779.5, + "us": 3358.7, "level": "full" } }, @@ -10539,95 +10539,95 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 2085.6, + "us": 1906.6, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 2085.6, + "us": 1906.6, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 2129.4, + "us": 1902.9, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 2129.4, + "us": 1902.9, "level": "full" }, "variants": { - "parse + serialize": { - "us": 2085.6, + "parser (reused) + serialize": { + "us": 1902.9, "level": "full" }, - "parser (reused) + serialize": { - "us": 2129.4, + "parse + serialize": { + "us": 1906.6, "level": "full" } } }, "RapidJSON": { "best": { - "variant": "SAX to Writer", - "us": 3014.9, + "variant": "SAX to Writer (string stream)", + "us": 2746.2, "level": "full" }, "best_any": { - "variant": "SAX to Writer (no encoding check)", - "us": 1978.1, + "variant": "SAX to Writer (string stream) (no encoding check)", + "us": 1823.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2396.2, + "us": 2242.5, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 2382.6, + "us": 2161.9, "level": "no UTF-8" }, "variants": { - "SAX to Writer (no encoding check)": { - "us": 1978.1, - "level": "no UTF-8" - }, "SAX to Writer (string stream) (no encoding check)": { - "us": 2000.4, + "us": 1823.5, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 2052.2, + "us": 1879.1, + "level": "no UTF-8" + }, + "SAX to Writer (no encoding check)": { + "us": 1882.9, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 2257.7, + "us": 2121.2, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 2382.6, + "us": 2161.9, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 2396.2, - "level": "full" - }, - "SAX to Writer": { - "us": 3014.9, + "us": 2242.5, "level": "full" }, "SAX to Writer (string stream)": { - "us": 3034.3, + "us": 2746.2, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 3095.6, + "us": 2763.5, + "level": "full" + }, + "SAX to Writer": { + "us": 2764.4, "level": "full" }, "Document + Writer": { - "us": 3262.6, + "us": 2975.8, "level": "full" } } @@ -10697,39 +10697,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump", - "us": 1014.3, + "us": 1102.4, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 1014.3, + "us": 1102.4, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 1015.4, + "us": 1106.3, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 1015.4, + "us": 1106.3, "level": "full" }, "variants": { "parse + dump": { - "us": 1014.3, + "us": 1102.4, "level": "full" }, "read + dump (reused)": { - "us": 1015.4, + "us": 1106.3, "level": "full" }, "parse + dump (source numbers)": { - "us": 1021.2, + "us": 1113.8, "level": "full" }, "parse_copy + dump": { - "us": 1126.3, + "us": 1246.9, "level": "full" } } @@ -10737,19 +10737,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 5702.5, + "us": 5152.8, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 5702.5, + "us": 5152.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 5702.5, + "us": 5152.8, "level": "full" } } @@ -10757,43 +10757,43 @@ "yyjson": { "best": { "variant": "read (raw numbers) + write", - "us": 1261.8, + "us": 1264.4, "level": "full" }, "best_any": { "variant": "read (raw numbers) + write", - "us": 1261.8, + "us": 1264.4, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 1351.3, + "us": 1351.9, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 1351.3, + "us": 1351.9, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 1205.1, + "us": 1202.8, "level": "full" }, "read (raw numbers) + write": { - "us": 1261.8, + "us": 1264.4, "level": "full" }, "insitu (copy) + write": { - "us": 1310.3, + "us": 1316.3, "level": "full" }, "read + write": { - "us": 1314.9, + "us": 1319.6, "level": "full" }, "read + write (reused allocator)": { - "us": 1351.3, + "us": 1351.9, "level": "full" } } @@ -10801,35 +10801,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 1392.7, + "us": 1394.1, "level": "full" }, "best_any": { "variant": "minify", - "us": 336.8, + "us": 336.5, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 1377.4, + "us": 1404.7, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 1377.4, + "us": 1404.7, "level": "full" }, "variants": { "minify": { - "us": 336.8, + "us": 336.5, "level": "partial" }, - "DOM (reused) + to_string": { - "us": 1377.4, + "DOM + to_string": { + "us": 1394.1, "level": "full" }, - "DOM + to_string": { - "us": 1392.7, + "DOM (reused) + to_string": { + "us": 1404.7, "level": "full" } } @@ -10838,14 +10838,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 1540.7, + "us": 1563.2, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 1540.7, + "us": 1563.2, "level": "no UTF-8" } } @@ -10853,27 +10853,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 6416.4, + "us": 6437.2, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 1144.4, + "us": 1115.5, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 1144.4, + "us": 1115.5, "level": "partial" }, "generic": { - "us": 6261.5, + "us": 6312.1, "level": "partial" }, "generic (strict)": { - "us": 6416.4, + "us": 6437.2, "level": "full" } }, @@ -10885,95 +10885,95 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 2919.0, + "us": 2950.3, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 2919.0, + "us": 2950.3, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 2931.1, + "us": 2901.1, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 2931.1, + "us": 2901.1, "level": "full" }, "variants": { - "parse + serialize": { - "us": 2919.0, + "parser (reused) + serialize": { + "us": 2901.1, "level": "full" }, - "parser (reused) + serialize": { - "us": 2931.1, + "parse + serialize": { + "us": 2950.3, "level": "full" } } }, "RapidJSON": { "best": { - "variant": "SAX to Writer", - "us": 3012.3, + "variant": "SAX to Writer (string stream)", + "us": 3161.5, "level": "full" }, "best_any": { - "variant": "SAX to Writer (no encoding check)", - "us": 2492.7, + "variant": "SAX to Writer (string stream) (no encoding check)", + "us": 2672.4, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2994.2, + "us": 3002.8, "level": "full" }, "best_reused_any": { - "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 2981.0, - "level": "no UTF-8" + "variant": "Document + Writer (reused allocator)", + "us": 3002.8, + "level": "full" }, "variants": { - "SAX to Writer (no encoding check)": { - "us": 2492.7, + "SAX to Writer (string stream) (no encoding check)": { + "us": 2672.4, "level": "no UTF-8" }, - "SAX to Writer (string stream) (no encoding check)": { - "us": 2550.9, + "SAX to Writer (no encoding check)": { + "us": 2739.1, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 2795.1, + "us": 2936.1, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 2933.5, - "level": "no UTF-8" - }, - "Document + Writer (reused allocator) (no encoding check)": { - "us": 2981.0, + "us": 2974.1, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 2994.2, + "us": 3002.8, + "level": "full" + }, + "Document + Writer (reused allocator) (no encoding check)": { + "us": 3014.7, + "level": "no UTF-8" + }, + "SAX to Writer (string stream)": { + "us": 3161.5, "level": "full" }, "SAX to Writer": { - "us": 3012.3, - "level": "full" - }, - "SAX to Writer (string stream)": { - "us": 3197.5, + "us": 3414.7, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 3321.1, + "us": 3423.7, "level": "full" }, "Document + Writer": { - "us": 3479.6, + "us": 3446.9, "level": "full" } } @@ -11043,39 +11043,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 2620.4, + "us": 2371.8, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 2620.4, + "us": 2371.8, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 5327.5, + "us": 5434.6, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 5327.5, + "us": 5434.6, "level": "full" }, "variants": { "parse + dump (source numbers)": { - "us": 2620.4, - "level": "full" - }, - "read + dump (reused)": { - "us": 5327.5, - "level": "full" - }, - "parse_copy + dump": { - "us": 5459.1, + "us": 2371.8, "level": "full" }, "parse + dump": { - "us": 5559.5, + "us": 5413.8, + "level": "full" + }, + "read + dump (reused)": { + "us": 5434.6, + "level": "full" + }, + "parse_copy + dump": { + "us": 5563.1, "level": "full" } } @@ -11083,19 +11083,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 16463.2, + "us": 13425.2, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 16463.2, + "us": 13425.2, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 16463.2, + "us": 13425.2, "level": "full" } } @@ -11103,43 +11103,43 @@ "yyjson": { "best": { "variant": "read (raw numbers) + write", - "us": 3106.3, + "us": 2993.5, "level": "full" }, "best_any": { "variant": "read (raw numbers) + write", - "us": 3106.3, + "us": 2993.5, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 9285.9, + "us": 9371.8, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 9285.9, + "us": 9371.8, "level": "full" }, "variants": { "read (raw numbers) + write": { - "us": 3106.3, - "level": "full" - }, - "read + write": { - "us": 9008.1, + "us": 2993.5, "level": "full" }, "insitu (copy untimed) + write": { - "us": 9225.8, + "us": 9148.2, + "level": "full" + }, + "read + write": { + "us": 9151.2, "level": "full" }, "insitu (copy) + write": { - "us": 9276.4, + "us": 9245.2, "level": "full" }, "read + write (reused allocator)": { - "us": 9285.9, + "us": 9371.8, "level": "full" } } @@ -11147,35 +11147,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 8808.4, + "us": 8457.0, "level": "full" }, "best_any": { "variant": "minify", - "us": 433.3, + "us": 426.5, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 8886.2, + "us": 9201.6, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 8886.2, + "us": 9201.6, "level": "full" }, "variants": { "minify": { - "us": 433.3, + "us": 426.5, "level": "partial" }, "DOM + to_string": { - "us": 8808.4, + "us": 8457.0, "level": "full" }, "DOM (reused) + to_string": { - "us": 8886.2, + "us": 9201.6, "level": "full" } } @@ -11184,14 +11184,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 8837.7, + "us": 8917.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 8837.7, + "us": 8917.4, "level": "no UTF-8" } } @@ -11199,27 +11199,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 23764.9, + "us": 23895.8, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 2349.8, + "us": 2112.8, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 2349.8, + "us": 2112.8, "level": "partial" }, "generic": { - "us": 23104.6, + "us": 23617.9, "level": "partial" }, "generic (strict)": { - "us": 23764.9, + "us": 23895.8, "level": "full" } }, @@ -11231,31 +11231,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 13973.5, + "us": 13661.6, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 13973.5, + "us": 13661.6, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 13462.6, + "us": 13379.4, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 13462.6, + "us": 13379.4, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 13462.6, + "us": 13379.4, "level": "full" }, "parse + serialize": { - "us": 13973.5, + "us": 13661.6, "level": "full" } } @@ -11263,64 +11263,64 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (raw numbers)", - "us": 15523.3, + "us": 15365.9, "level": "full" }, "best_any": { "variant": "SAX to Writer (raw numbers) (no encoding check)", - "us": 15512.0, + "us": 15165.7, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 20813.2, + "us": 21109.1, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator)", - "us": 20813.2, + "us": 21109.1, "level": "full" }, "variants": { "SAX to Writer (raw numbers) (no encoding check)": { - "us": 15512.0, + "us": 15165.7, "level": "no UTF-8" }, "SAX to Writer (raw numbers)": { - "us": 15523.3, - "level": "full" - }, - "Document + Writer (reused allocator)": { - "us": 20813.2, + "us": 15365.9, "level": "full" }, "SAX to Writer (string stream) (no encoding check)": { - "us": 21036.2, + "us": 20808.6, "level": "no UTF-8" }, - "Document + Writer": { - "us": 21177.2, + "Document + Writer (reused allocator)": { + "us": 21109.1, "level": "full" }, - "Document + Writer (no encoding check)": { - "us": 21184.8, - "level": "no UTF-8" - }, - "SAX to Writer (string stream)": { - "us": 21318.4, + "SAX to Writer": { + "us": 21674.1, "level": "full" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 21359.3, + "us": 21703.5, "level": "no UTF-8" }, + "Document + Writer (no encoding check)": { + "us": 21768.8, + "level": "no UTF-8" + }, + "SAX to Writer (string stream)": { + "us": 21906.8, + "level": "full" + }, + "Document + Writer": { + "us": 22256.9, + "level": "full" + }, "SAX to Writer (no encoding check)": { - "us": 21367.2, + "us": 22289.1, "level": "no UTF-8" - }, - "SAX to Writer": { - "us": 21562.2, - "level": "full" } } }, @@ -11389,39 +11389,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump", - "us": 146320.2, + "us": 144876.9, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 146320.2, + "us": 144876.9, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 109060.0, + "us": 110904.2, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 109060.0, + "us": 110904.2, "level": "full" }, "variants": { "read + dump (reused)": { - "us": 109060.0, + "us": 110904.2, "level": "full" }, "parse + dump": { - "us": 146320.2, + "us": 144876.9, "level": "full" }, "parse + dump (source numbers)": { - "us": 146609.8, + "us": 145497.5, "level": "full" }, "parse_copy + dump": { - "us": 184753.0, + "us": 192930.9, "level": "full" } } @@ -11429,63 +11429,63 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 528092.1, + "us": 504510.8, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 528092.1, + "us": 504510.8, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 528092.1, + "us": 504510.8, "level": "full" } } }, "yyjson": { "best": { - "variant": "read (raw numbers) + write", - "us": 193396.6, + "variant": "read + write", + "us": 201645.1, "level": "full" }, "best_any": { - "variant": "read (raw numbers) + write", - "us": 193396.6, + "variant": "read + write", + "us": 201645.1, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 96788.4, + "us": 100921.3, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 96788.4, + "us": 100921.3, "level": "full" }, "variants": { "read + write (reused allocator)": { - "us": 96788.4, + "us": 100921.3, "level": "full" }, "insitu (copy untimed) + write": { - "us": 158577.0, - "level": "full" - }, - "read (raw numbers) + write": { - "us": 193396.6, + "us": 163035.6, "level": "full" }, "read + write": { - "us": 195008.0, + "us": 201645.1, + "level": "full" + }, + "read (raw numbers) + write": { + "us": 202365.5, "level": "full" }, "insitu (copy) + write": { - "us": 198721.1, + "us": 209983.7, "level": "full" } } @@ -11493,35 +11493,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 266718.5, + "us": 292575.9, "level": "full" }, "best_any": { "variant": "minify", - "us": 47040.3, + "us": 49731.4, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 207560.8, + "us": 216311.1, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 207560.8, + "us": 216311.1, "level": "full" }, "variants": { "minify": { - "us": 47040.3, + "us": 49731.4, "level": "partial" }, "DOM (reused) + to_string": { - "us": 207560.8, + "us": 216311.1, "level": "full" }, "DOM + to_string": { - "us": 266718.5, + "us": 292575.9, "level": "full" } } @@ -11530,14 +11530,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 168901.0, + "us": 176624.6, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 168901.0, + "us": 176624.6, "level": "no UTF-8" } } @@ -11545,28 +11545,28 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 458311.3, + "us": 480814.5, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 96405.0, + "us": 97811.6, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 96405.0, - "level": "partial" - }, - "generic": { - "us": 455056.6, + "us": 97811.6, "level": "partial" }, "generic (strict)": { - "us": 458311.3, + "us": 480814.5, "level": "full" + }, + "generic": { + "us": 491509.3, + "level": "partial" } }, "excluded": { @@ -11577,31 +11577,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 334468.1, + "us": 342182.7, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 334468.1, + "us": 342182.7, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 275271.4, + "us": 283912.3, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 275271.4, + "us": 283912.3, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 275271.4, + "us": 283912.3, "level": "full" }, "parse + serialize": { - "us": 334468.1, + "us": 342182.7, "level": "full" } } @@ -11609,63 +11609,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 355727.0, + "us": 381831.7, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 249234.8, + "us": 259099.6, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 323395.6, + "us": 333088.3, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 321331.9, + "us": 328802.3, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 249234.8, - "level": "no UTF-8" - }, - "SAX to Writer (raw numbers) (no encoding check)": { - "us": 276686.1, + "us": 259099.6, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 278843.9, + "us": 281642.0, + "level": "no UTF-8" + }, + "SAX to Writer (raw numbers) (no encoding check)": { + "us": 283965.4, + "level": "no UTF-8" + }, + "Document + Writer (no encoding check)": { + "us": 325527.5, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 321331.9, + "us": 328802.3, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 323395.6, + "us": 333088.3, "level": "full" }, - "Document + Writer (no encoding check)": { - "us": 327139.4, - "level": "no UTF-8" - }, "SAX to Writer (string stream)": { - "us": 355727.0, - "level": "full" - }, - "SAX to Writer": { - "us": 394249.3, + "us": 381831.7, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 398133.8, + "us": 393027.9, + "level": "full" + }, + "SAX to Writer": { + "us": 394705.2, "level": "full" }, "Document + Writer": { - "us": 428999.8, + "us": 433346.8, "level": "full" } } @@ -11735,59 +11735,59 @@ "nlohmann json_document": { "best": { "variant": "parse + dump", - "us": 2.4, + "us": 2.5, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 2.4, + "us": 2.5, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 2.3, + "us": 2.4, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 2.3, + "us": 2.4, "level": "full" }, "variants": { "read + dump (reused)": { - "us": 2.3, - "level": "full" - }, - "parse + dump": { "us": 2.4, "level": "full" }, - "parse + dump (source numbers)": { + "parse + dump": { "us": 2.5, "level": "full" }, "parse_copy + dump": { "us": 2.6, "level": "full" + }, + "parse + dump (source numbers)": { + "us": 2.6, + "level": "full" } } }, "nlohmann json": { "best": { "variant": "parse + dump", - "us": 19.5, + "us": 18.5, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 19.5, + "us": 18.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 19.5, + "us": 18.5, "level": "full" } } @@ -11795,43 +11795,43 @@ "yyjson": { "best": { "variant": "read + write", - "us": 3.0, + "us": 3.1, "level": "full" }, "best_any": { "variant": "read + write", - "us": 3.0, + "us": 3.1, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 2.7, + "us": 2.9, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 2.7, + "us": 2.9, "level": "full" }, "variants": { - "read + write (reused allocator)": { - "us": 2.7, - "level": "full" - }, "insitu (copy untimed) + write": { "us": 2.9, "level": "full" }, + "read + write (reused allocator)": { + "us": 2.9, + "level": "full" + }, "read + write": { - "us": 3.0, + "us": 3.1, "level": "full" }, "insitu (copy) + write": { - "us": 3.0, + "us": 3.2, "level": "full" }, "read (raw numbers) + write": { - "us": 3.0, + "us": 3.3, "level": "full" } } @@ -11839,7 +11839,7 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 3.8, + "us": 4.1, "level": "full" }, "best_any": { @@ -11849,12 +11849,12 @@ }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 3.4, + "us": 3.7, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 3.4, + "us": 3.7, "level": "full" }, "variants": { @@ -11863,11 +11863,11 @@ "level": "partial" }, "DOM (reused) + to_string": { - "us": 3.4, + "us": 3.7, "level": "full" }, "DOM + to_string": { - "us": 3.8, + "us": 4.1, "level": "full" } } @@ -11876,14 +11876,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 3.3, + "us": 3.4, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 3.3, + "us": 3.4, "level": "no UTF-8" } } @@ -11891,7 +11891,7 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 14.7, + "us": 15.9, "level": "full" }, "best_any": { @@ -11907,11 +11907,11 @@ "level": "partial" }, "generic": { - "us": 14.3, + "us": 15.0, "level": "partial" }, "generic (strict)": { - "us": 14.7, + "us": 15.9, "level": "full" } }, @@ -11923,31 +11923,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 9.2, + "us": 10.2, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 9.2, + "us": 10.2, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 9.1, + "us": 9.9, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 9.1, + "us": 9.9, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 9.1, + "us": 9.9, "level": "full" }, "parse + serialize": { - "us": 9.2, + "us": 10.2, "level": "full" } } @@ -11955,63 +11955,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 13.9, + "us": 15.6, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 7.5, + "us": 8.5, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 12.2, + "us": 13.2, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 11.6, + "us": 12.4, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 7.5, + "us": 8.5, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 10.3, - "level": "no UTF-8" - }, - "SAX to Writer (raw numbers) (no encoding check)": { - "us": 10.3, - "level": "no UTF-8" - }, - "Document + Writer (reused allocator) (no encoding check)": { "us": 11.6, "level": "no UTF-8" }, + "SAX to Writer (raw numbers) (no encoding check)": { + "us": 11.6, + "level": "no UTF-8" + }, + "Document + Writer (reused allocator) (no encoding check)": { + "us": 12.4, + "level": "no UTF-8" + }, "Document + Writer (reused allocator)": { - "us": 12.2, + "us": 13.2, "level": "full" }, "Document + Writer (no encoding check)": { - "us": 12.2, + "us": 13.2, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 13.9, - "level": "full" - }, - "SAX to Writer": { - "us": 15.5, - "level": "full" - }, - "SAX to Writer (raw numbers)": { "us": 15.6, "level": "full" }, + "SAX to Writer (raw numbers)": { + "us": 16.3, + "level": "full" + }, + "SAX to Writer": { + "us": 16.7, + "level": "full" + }, "Document + Writer": { - "us": 17.2, + "us": 18.6, "level": "full" } } @@ -12081,39 +12081,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump (source numbers)", - "us": 418.5, + "us": 415.4, "level": "full" }, "best_any": { "variant": "parse + dump (source numbers)", - "us": 418.5, + "us": 415.4, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 416.9, + "us": 414.7, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 416.9, + "us": 414.7, "level": "full" }, "variants": { "read + dump (reused)": { - "us": 416.9, + "us": 414.7, "level": "full" }, "parse + dump (source numbers)": { - "us": 418.5, + "us": 415.4, "level": "full" }, "parse + dump": { - "us": 425.5, + "us": 421.6, "level": "full" }, "parse_copy + dump": { - "us": 455.2, + "us": 454.8, "level": "full" } } @@ -12121,63 +12121,63 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 3625.5, + "us": 3282.5, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 3625.5, + "us": 3282.5, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 3625.5, + "us": 3282.5, "level": "full" } } }, "yyjson": { "best": { - "variant": "read (raw numbers) + write", - "us": 564.0, + "variant": "insitu (copy) + write", + "us": 542.3, "level": "full" }, "best_any": { - "variant": "read (raw numbers) + write", - "us": 564.0, + "variant": "insitu (copy) + write", + "us": 542.3, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 555.5, + "us": 536.2, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 555.5, + "us": 536.2, "level": "full" }, "variants": { "insitu (copy untimed) + write": { - "us": 541.8, + "us": 510.4, "level": "full" }, "read + write (reused allocator)": { - "us": 555.5, - "level": "full" - }, - "read (raw numbers) + write": { - "us": 564.0, - "level": "full" - }, - "read + write": { - "us": 573.5, + "us": 536.2, "level": "full" }, "insitu (copy) + write": { - "us": 576.2, + "us": 542.3, + "level": "full" + }, + "read + write": { + "us": 542.7, + "level": "full" + }, + "read (raw numbers) + write": { + "us": 546.4, "level": "full" } } @@ -12185,35 +12185,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 669.8, + "us": 673.2, "level": "full" }, "best_any": { "variant": "minify", - "us": 90.3, + "us": 93.5, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 669.6, + "us": 675.0, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 669.6, + "us": 675.0, "level": "full" }, "variants": { "minify": { - "us": 90.3, + "us": 93.5, "level": "partial" }, - "DOM (reused) + to_string": { - "us": 669.6, + "DOM + to_string": { + "us": 673.2, "level": "full" }, - "DOM + to_string": { - "us": 669.8, + "DOM (reused) + to_string": { + "us": 675.0, "level": "full" } } @@ -12222,14 +12222,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 527.6, + "us": 527.7, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 527.6, + "us": 527.7, "level": "no UTF-8" } } @@ -12237,27 +12237,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 3180.4, + "us": 3172.7, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 354.9, + "us": 354.0, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 354.9, + "us": 354.0, "level": "partial" }, "generic": { - "us": 3168.5, + "us": 3152.7, "level": "partial" }, "generic (strict)": { - "us": 3180.4, + "us": 3172.7, "level": "full" } }, @@ -12269,31 +12269,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 1798.7, + "us": 1783.2, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 1798.7, + "us": 1783.2, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 1807.0, + "us": 1784.4, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 1807.0, + "us": 1784.4, "level": "full" }, "variants": { "parse + serialize": { - "us": 1798.7, + "us": 1783.2, "level": "full" }, "parser (reused) + serialize": { - "us": 1807.0, + "us": 1784.4, "level": "full" } } @@ -12301,63 +12301,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 2431.4, + "us": 2437.7, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 1572.4, + "us": 1553.8, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2188.7, + "us": 2176.6, "level": "full" }, "best_reused_any": { "variant": "Document + Writer (reused allocator) (no encoding check)", - "us": 2094.2, + "us": 2084.4, "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 1572.4, + "us": 1553.8, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 1790.9, + "us": 1812.0, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 1820.9, + "us": 1823.3, "level": "no UTF-8" }, "Document + Writer (no encoding check)": { - "us": 2087.8, + "us": 2065.3, "level": "no UTF-8" }, "Document + Writer (reused allocator) (no encoding check)": { - "us": 2094.2, + "us": 2084.4, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 2188.7, + "us": 2176.6, "level": "full" }, "SAX to Writer (string stream)": { - "us": 2431.4, + "us": 2437.7, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 2706.3, + "us": 2653.9, "level": "full" }, "SAX to Writer": { - "us": 2711.8, + "us": 2657.6, "level": "full" }, "Document + Writer": { - "us": 2932.9, + "us": 2909.0, "level": "full" } } @@ -12427,39 +12427,39 @@ "nlohmann json_document": { "best": { "variant": "parse + dump", - "us": 779.0, + "us": 766.3, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 779.0, + "us": 766.3, "level": "full" }, "best_reused": { "variant": "read + dump (reused)", - "us": 786.3, + "us": 765.0, "level": "full" }, "best_reused_any": { "variant": "read + dump (reused)", - "us": 786.3, + "us": 765.0, "level": "full" }, "variants": { - "parse + dump": { - "us": 779.0, + "read + dump (reused)": { + "us": 765.0, "level": "full" }, - "read + dump (reused)": { - "us": 786.3, + "parse + dump": { + "us": 766.3, "level": "full" }, "parse + dump (source numbers)": { - "us": 792.5, + "us": 772.4, "level": "full" }, "parse_copy + dump": { - "us": 812.1, + "us": 798.5, "level": "full" } } @@ -12467,19 +12467,19 @@ "nlohmann json": { "best": { "variant": "parse + dump", - "us": 5352.0, + "us": 4651.1, "level": "full" }, "best_any": { "variant": "parse + dump", - "us": 5352.0, + "us": 4651.1, "level": "full" }, "best_reused": null, "best_reused_any": null, "variants": { "parse + dump": { - "us": 5352.0, + "us": 4651.1, "level": "full" } } @@ -12487,43 +12487,43 @@ "yyjson": { "best": { "variant": "read (raw numbers) + write", - "us": 797.0, + "us": 784.4, "level": "full" }, "best_any": { "variant": "read (raw numbers) + write", - "us": 797.0, + "us": 784.4, "level": "full" }, "best_reused": { "variant": "read + write (reused allocator)", - "us": 830.6, + "us": 831.4, "level": "full" }, "best_reused_any": { "variant": "read + write (reused allocator)", - "us": 830.6, + "us": 831.4, "level": "full" }, "variants": { - "insitu (copy untimed) + write": { - "us": 794.5, + "read (raw numbers) + write": { + "us": 784.4, "level": "full" }, - "read (raw numbers) + write": { - "us": 797.0, + "insitu (copy untimed) + write": { + "us": 798.2, "level": "full" }, "read + write": { - "us": 829.5, + "us": 830.2, "level": "full" }, "insitu (copy) + write": { - "us": 829.6, + "us": 830.4, "level": "full" }, "read + write (reused allocator)": { - "us": 830.6, + "us": 831.4, "level": "full" } } @@ -12531,35 +12531,35 @@ "simdjson": { "best": { "variant": "DOM + to_string", - "us": 1211.1, + "us": 1226.0, "level": "full" }, "best_any": { "variant": "minify", - "us": 92.4, + "us": 92.9, "level": "partial" }, "best_reused": { "variant": "DOM (reused) + to_string", - "us": 1212.6, + "us": 1223.0, "level": "full" }, "best_reused_any": { "variant": "DOM (reused) + to_string", - "us": 1212.6, + "us": 1223.0, "level": "full" }, "variants": { "minify": { - "us": 92.4, + "us": 92.9, "level": "partial" }, - "DOM + to_string": { - "us": 1211.1, + "DOM (reused) + to_string": { + "us": 1223.0, "level": "full" }, - "DOM (reused) + to_string": { - "us": 1212.6, + "DOM + to_string": { + "us": 1226.0, "level": "full" } } @@ -12568,14 +12568,14 @@ "best": null, "best_any": { "variant": "Document + Serialize", - "us": 1214.4, + "us": 1222.8, "level": "no UTF-8" }, "best_reused": null, "best_reused_any": null, "variants": { "Document + Serialize": { - "us": 1214.4, + "us": 1222.8, "level": "no UTF-8" } } @@ -12583,27 +12583,27 @@ "Glaze": { "best": { "variant": "generic (strict)", - "us": 5550.6, + "us": 5558.7, "level": "full" }, "best_any": { "variant": "minify_json", - "us": 638.5, + "us": 621.8, "level": "partial" }, "best_reused": null, "best_reused_any": null, "variants": { "minify_json": { - "us": 638.5, + "us": 621.8, "level": "partial" }, "generic": { - "us": 5531.0, + "us": 5507.2, "level": "partial" }, "generic (strict)": { - "us": 5550.6, + "us": 5558.7, "level": "full" } }, @@ -12615,31 +12615,31 @@ "Boost.JSON": { "best": { "variant": "parse + serialize", - "us": 2569.6, + "us": 2534.1, "level": "full" }, "best_any": { "variant": "parse + serialize", - "us": 2569.6, + "us": 2534.1, "level": "full" }, "best_reused": { "variant": "parser (reused) + serialize", - "us": 2545.2, + "us": 2531.0, "level": "full" }, "best_reused_any": { "variant": "parser (reused) + serialize", - "us": 2545.2, + "us": 2531.0, "level": "full" }, "variants": { "parser (reused) + serialize": { - "us": 2545.2, + "us": 2531.0, "level": "full" }, "parse + serialize": { - "us": 2569.6, + "us": 2534.1, "level": "full" } } @@ -12647,63 +12647,63 @@ "RapidJSON": { "best": { "variant": "SAX to Writer (string stream)", - "us": 2640.3, + "us": 2605.0, "level": "full" }, "best_any": { "variant": "SAX to Writer (string stream) (no encoding check)", - "us": 2139.6, + "us": 2185.9, "level": "no UTF-8" }, "best_reused": { "variant": "Document + Writer (reused allocator)", - "us": 2804.7, + "us": 2762.3, "level": "full" }, "best_reused_any": { - "variant": "Document + Writer (reused allocator)", - "us": 2804.7, - "level": "full" + "variant": "Document + Writer (reused allocator) (no encoding check)", + "us": 2722.9, + "level": "no UTF-8" }, "variants": { "SAX to Writer (string stream) (no encoding check)": { - "us": 2139.6, + "us": 2185.9, "level": "no UTF-8" }, "SAX to Writer (no encoding check)": { - "us": 2291.3, + "us": 2438.1, "level": "no UTF-8" }, "SAX to Writer (raw numbers) (no encoding check)": { - "us": 2566.0, + "us": 2559.5, "level": "no UTF-8" }, "SAX to Writer (string stream)": { - "us": 2640.3, + "us": 2605.0, "level": "full" }, "Document + Writer (no encoding check)": { - "us": 2801.3, + "us": 2683.2, + "level": "no UTF-8" + }, + "Document + Writer (reused allocator) (no encoding check)": { + "us": 2722.9, "level": "no UTF-8" }, "Document + Writer (reused allocator)": { - "us": 2804.7, + "us": 2762.3, "level": "full" }, - "Document + Writer (reused allocator) (no encoding check)": { - "us": 2840.1, - "level": "no UTF-8" - }, "SAX to Writer": { - "us": 2930.6, + "us": 2955.9, "level": "full" }, "SAX to Writer (raw numbers)": { - "us": 3114.9, + "us": 3100.9, "level": "full" }, "Document + Writer": { - "us": 3338.1, + "us": 3225.7, "level": "full" } } @@ -12775,23 +12775,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 147.8, + "us": 146.8, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 147.8, + "us": 146.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 147.8, + "us": 146.8, "level": "n/a" }, "dump": { - "us": 149.9, + "us": 152.3, "level": "n/a" } } @@ -12799,19 +12799,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 470.6, + "us": 413.0, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 470.6, + "us": 413.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 470.6, + "us": 413.0, "level": "n/a" } } @@ -12819,19 +12819,19 @@ "yyjson": { "best": { "variant": "write", - "us": 204.2, + "us": 179.9, "level": "n/a" }, "best_any": { "variant": "write", - "us": 204.2, + "us": 179.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 204.2, + "us": 179.9, "level": "n/a" } } @@ -12839,19 +12839,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 358.6, + "us": 360.2, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 358.6, + "us": 360.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 358.6, + "us": 360.2, "level": "n/a" } } @@ -12859,19 +12859,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 717.1, + "us": 661.3, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 717.1, + "us": 661.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 717.1, + "us": 661.3, "level": "n/a" } } @@ -12879,19 +12879,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 255.6, + "us": 267.6, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 255.6, + "us": 267.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 255.6, + "us": 267.6, "level": "n/a" } } @@ -12899,23 +12899,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 360.0, + "us": 336.4, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 360.0, + "us": 336.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 360.0, + "us": 336.4, "level": "n/a" }, "generic (strict)": { - "us": 365.6, + "us": 367.2, "level": "n/a" } }, @@ -12927,19 +12927,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 479.7, + "us": 473.7, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 479.7, + "us": 473.7, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 479.7, + "us": 473.7, "level": "n/a" } } @@ -13009,23 +13009,23 @@ "nlohmann json_document": { "best": { "variant": "dump", - "us": 260.4, + "us": 260.3, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 260.4, + "us": 260.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 260.4, + "us": 260.3, "level": "n/a" }, "dump (source numbers)": { - "us": 267.1, + "us": 265.6, "level": "n/a" } } @@ -13033,19 +13033,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 644.1, + "us": 617.1, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 644.1, + "us": 617.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 644.1, + "us": 617.1, "level": "n/a" } } @@ -13053,19 +13053,19 @@ "yyjson": { "best": { "variant": "write", - "us": 327.0, + "us": 325.2, "level": "n/a" }, "best_any": { "variant": "write", - "us": 327.0, + "us": 325.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 327.0, + "us": 325.2, "level": "n/a" } } @@ -13073,19 +13073,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 636.8, + "us": 636.5, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 636.8, + "us": 636.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 636.8, + "us": 636.5, "level": "n/a" } } @@ -13093,19 +13093,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 1033.1, + "us": 1014.8, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 1033.1, + "us": 1014.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 1033.1, + "us": 1014.8, "level": "n/a" } } @@ -13113,19 +13113,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 541.0, + "us": 543.2, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 541.0, + "us": 543.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 541.0, + "us": 543.2, "level": "n/a" } } @@ -13133,23 +13133,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 660.0, + "us": 682.0, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 660.0, + "us": 682.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 660.0, + "us": 682.0, "level": "n/a" }, "generic (strict)": { - "us": 699.0, + "us": 692.3, "level": "n/a" } }, @@ -13161,19 +13161,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 1015.9, + "us": 1003.3, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 1015.9, + "us": 1003.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 1015.9, + "us": 1003.3, "level": "n/a" } } @@ -13243,23 +13243,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 998.5, + "us": 997.0, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 998.5, + "us": 997.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 998.5, + "us": 997.0, "level": "n/a" }, "dump": { - "us": 3861.0, + "us": 3811.4, "level": "n/a" } } @@ -13267,19 +13267,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 4343.5, + "us": 4036.4, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 4343.5, + "us": 4036.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 4343.5, + "us": 4036.4, "level": "n/a" } } @@ -13287,19 +13287,19 @@ "yyjson": { "best": { "variant": "write", - "us": 3748.2, + "us": 3547.5, "level": "n/a" }, "best_any": { "variant": "write", - "us": 3748.2, + "us": 3547.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 3748.2, + "us": 3547.5, "level": "n/a" } } @@ -13307,19 +13307,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 4998.6, + "us": 5362.9, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 4998.6, + "us": 5362.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 4998.6, + "us": 5362.9, "level": "n/a" } } @@ -13327,19 +13327,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 9017.1, + "us": 8980.5, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 9017.1, + "us": 8980.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 9017.1, + "us": 8980.5, "level": "n/a" } } @@ -13347,43 +13347,43 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 5119.7, + "us": 5057.3, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 5119.7, + "us": 5057.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 5119.7, + "us": 5057.3, "level": "n/a" } } }, "Glaze": { "best": { - "variant": "generic (strict)", - "us": 3714.1, + "variant": "generic", + "us": 3750.2, "level": "n/a" }, "best_any": { - "variant": "generic (strict)", - "us": 3714.1, + "variant": "generic", + "us": 3750.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "generic (strict)": { - "us": 3714.1, + "generic": { + "us": 3750.2, "level": "n/a" }, - "generic": { - "us": 3736.5, + "generic (strict)": { + "us": 3766.6, "level": "n/a" } }, @@ -13395,19 +13395,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 6153.7, + "us": 6012.3, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 6153.7, + "us": 6012.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 6153.7, + "us": 6012.3, "level": "n/a" } } @@ -13476,24 +13476,24 @@ "jeopardy": { "nlohmann json_document": { "best": { - "variant": "dump", - "us": 63958.0, + "variant": "dump (source numbers)", + "us": 71821.9, "level": "n/a" }, "best_any": { - "variant": "dump", - "us": 63958.0, + "variant": "dump (source numbers)", + "us": 71821.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { - "dump": { - "us": 63958.0, + "dump (source numbers)": { + "us": 71821.9, "level": "n/a" }, - "dump (source numbers)": { - "us": 64736.5, + "dump": { + "us": 72196.4, "level": "n/a" } } @@ -13501,19 +13501,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 114096.0, + "us": 124864.8, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 114096.0, + "us": 124864.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 114096.0, + "us": 124864.8, "level": "n/a" } } @@ -13521,19 +13521,19 @@ "yyjson": { "best": { "variant": "write", - "us": 65989.4, + "us": 71044.1, "level": "n/a" }, "best_any": { "variant": "write", - "us": 65989.4, + "us": 71044.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 65989.4, + "us": 71044.1, "level": "n/a" } } @@ -13541,19 +13541,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 154364.5, + "us": 169031.8, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 154364.5, + "us": 169031.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 154364.5, + "us": 169031.8, "level": "n/a" } } @@ -13561,19 +13561,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 134259.5, + "us": 136956.8, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 134259.5, + "us": 136956.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 134259.5, + "us": 136956.8, "level": "n/a" } } @@ -13581,19 +13581,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 69546.0, + "us": 75733.6, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 69546.0, + "us": 75733.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 69546.0, + "us": 75733.6, "level": "n/a" } } @@ -13601,23 +13601,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 124598.1, + "us": 133729.6, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 124598.1, + "us": 133729.6, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 124598.1, + "us": 133729.6, "level": "n/a" }, "generic (strict)": { - "us": 132481.0, + "us": 140656.2, "level": "n/a" } }, @@ -13629,19 +13629,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 139022.5, + "us": 148120.2, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 139022.5, + "us": 148120.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 139022.5, + "us": 148120.2, "level": "n/a" } } @@ -13711,23 +13711,23 @@ "nlohmann json_document": { "best": { "variant": "dump", - "us": 0.8, + "us": 0.9, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 0.8, + "us": 0.9, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 0.8, + "us": 0.9, "level": "n/a" }, "dump (source numbers)": { - "us": 0.8, + "us": 0.9, "level": "n/a" } } @@ -13795,19 +13795,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 4.0, + "us": 4.1, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 4.0, + "us": 4.1, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 4.0, + "us": 4.1, "level": "n/a" } } @@ -13815,19 +13815,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 1.6, + "us": 1.7, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 1.6, + "us": 1.7, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 1.6, + "us": 1.7, "level": "n/a" } } @@ -13835,19 +13835,19 @@ "Glaze": { "best": { "variant": "generic", - "us": 1.7, + "us": 1.8, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 1.7, + "us": 1.8, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 1.7, + "us": 1.8, "level": "n/a" }, "generic (strict)": { @@ -13945,23 +13945,23 @@ "nlohmann json_document": { "best": { "variant": "dump (source numbers)", - "us": 142.8, + "us": 144.0, "level": "n/a" }, "best_any": { "variant": "dump (source numbers)", - "us": 142.8, + "us": 144.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump (source numbers)": { - "us": 142.8, + "us": 144.0, "level": "n/a" }, "dump": { - "us": 146.1, + "us": 147.4, "level": "n/a" } } @@ -13969,19 +13969,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 437.3, + "us": 416.4, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 437.3, + "us": 416.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 437.3, + "us": 416.4, "level": "n/a" } } @@ -13989,19 +13989,19 @@ "yyjson": { "best": { "variant": "write", - "us": 195.6, + "us": 180.0, "level": "n/a" }, "best_any": { "variant": "write", - "us": 195.6, + "us": 180.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 195.6, + "us": 180.0, "level": "n/a" } } @@ -14009,19 +14009,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 358.1, + "us": 360.5, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 358.1, + "us": 360.5, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 358.1, + "us": 360.5, "level": "n/a" } } @@ -14029,19 +14029,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 662.4, + "us": 654.2, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 662.4, + "us": 654.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 662.4, + "us": 654.2, "level": "n/a" } } @@ -14049,19 +14049,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 236.2, + "us": 246.4, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 236.2, + "us": 246.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 236.2, + "us": 246.4, "level": "n/a" } } @@ -14069,23 +14069,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 331.3, + "us": 341.2, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 331.3, + "us": 341.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 331.3, + "us": 341.2, "level": "n/a" }, "generic (strict)": { - "us": 366.6, + "us": 370.7, "level": "n/a" } }, @@ -14097,19 +14097,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 478.9, + "us": 478.0, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 478.9, + "us": 478.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 478.9, + "us": 478.0, "level": "n/a" } } @@ -14179,23 +14179,23 @@ "nlohmann json_document": { "best": { "variant": "dump", - "us": 269.5, + "us": 253.0, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 269.5, + "us": 253.0, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 269.5, + "us": 253.0, "level": "n/a" }, "dump (source numbers)": { - "us": 277.0, + "us": 260.9, "level": "n/a" } } @@ -14203,19 +14203,19 @@ "nlohmann json": { "best": { "variant": "dump", - "us": 666.2, + "us": 611.4, "level": "n/a" }, "best_any": { "variant": "dump", - "us": 666.2, + "us": 611.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "dump": { - "us": 666.2, + "us": 611.4, "level": "n/a" } } @@ -14223,19 +14223,19 @@ "yyjson": { "best": { "variant": "write", - "us": 343.8, + "us": 323.3, "level": "n/a" }, "best_any": { "variant": "write", - "us": 343.8, + "us": 323.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "write": { - "us": 343.8, + "us": 323.3, "level": "n/a" } } @@ -14243,19 +14243,19 @@ "simdjson": { "best": { "variant": "to_string", - "us": 670.5, + "us": 644.7, "level": "n/a" }, "best_any": { "variant": "to_string", - "us": 670.5, + "us": 644.7, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "to_string": { - "us": 670.5, + "us": 644.7, "level": "n/a" } } @@ -14263,19 +14263,19 @@ "RapidJSON": { "best": { "variant": "Writer", - "us": 1096.6, + "us": 1025.2, "level": "n/a" }, "best_any": { "variant": "Writer", - "us": 1096.6, + "us": 1025.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Writer": { - "us": 1096.6, + "us": 1025.2, "level": "n/a" } } @@ -14283,19 +14283,19 @@ "sonic-cpp": { "best": { "variant": "Serialize", - "us": 525.1, + "us": 532.3, "level": "n/a" }, "best_any": { "variant": "Serialize", - "us": 525.1, + "us": 532.3, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "Serialize": { - "us": 525.1, + "us": 532.3, "level": "n/a" } } @@ -14303,23 +14303,23 @@ "Glaze": { "best": { "variant": "generic", - "us": 680.1, + "us": 669.2, "level": "n/a" }, "best_any": { "variant": "generic", - "us": 680.1, + "us": 669.2, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "generic": { - "us": 680.1, + "us": 669.2, "level": "n/a" }, "generic (strict)": { - "us": 693.2, + "us": 697.0, "level": "n/a" } }, @@ -14331,19 +14331,19 @@ "Boost.JSON": { "best": { "variant": "serialize", - "us": 1070.7, + "us": 1038.4, "level": "n/a" }, "best_any": { "variant": "serialize", - "us": 1070.7, + "us": 1038.4, "level": "n/a" }, "best_reused": null, "best_reused_any": null, "variants": { "serialize": { - "us": 1070.7, + "us": 1038.4, "level": "n/a" } } diff --git a/docs/mkdocs/scripts/figures/perf_blog.py b/docs/mkdocs/scripts/figures/perf_blog.py index b4d54f69f..ad070d02d 100644 --- a/docs/mkdocs/scripts/figures/perf_blog.py +++ b/docs/mkdocs/scripts/figures/perf_blog.py @@ -201,24 +201,24 @@ def digits(): # ---------- overview: speedup per workload (Google Benchmark rows, 3.12.0 time / 3.13.0 time) ---------- # (group, label, speedup), copied from the table "The short version" OVERVIEW = [ - ("Parsing", "twitter.json", 3.14), - ("Parsing", "citm_catalog.json", 4.25), - ("Parsing", "canada.json", 3.35), - ("Parsing", "canada.json, indented", 6.51), - ("Parsing", "citm, ordered_json", 6.85), - ("Parsing", "twitter, std::ifstream", 2.50), - ("Parsing", "citm, FILE*", 4.74), - ("Parsing", "citm, accept()", 7.07), - ("Writing", "dump() twitter", 6.70), - ("Writing", "dump() canada", 2.98), - ("Writing", "dump(4) citm", 4.70), - ("Writing", "to_cbor() twitter", 4.59), - ("Reading CBOR", "twitter, memory", 3.39), - ("Reading CBOR", "twitter, FILE*", 6.59), - ("Values", "diff() canada", 10.46), - ("Values", "iterate canada", 2.73), - ("Values", "copy + destroy citm", 1.13), - ("Values", "== citm", 1.06), + ("Parsing", "twitter.json", 3.49), + ("Parsing", "citm_catalog.json", 5.11), + ("Parsing", "canada.json", 4.08), + ("Parsing", "canada.json, indented", 7.41), + ("Parsing", "citm, ordered_json", 8.18), + ("Parsing", "twitter, std::ifstream", 2.46), + ("Parsing", "citm, FILE*", 14.94), + ("Parsing", "citm, accept()", 13.66), + ("Writing", "dump() twitter", 6.60), + ("Writing", "dump() canada", 2.90), + ("Writing", "dump(4) citm", 4.62), + ("Writing", "to_cbor() twitter", 4.41), + ("Reading CBOR", "twitter, memory", 3.52), + ("Reading CBOR", "twitter, FILE*", 9.23), + ("Values", "diff() canada", 10.44), + ("Values", "iterate canada", 1.96), + ("Values", "copy + destroy citm", 1.11), + ("Values", "== citm", 1.01), ] @@ -304,16 +304,19 @@ def distribution(): # (column in perf_timeline.csv, panel title, [(PR, label)]): each labeled step shows the number of the theme that # explains it ("U" for the UTF-8 check of the binary readers that came and went); the appendix maps steps to PRs TIMELINE = [ - ("parse_citm", "parse() citm_catalog.json", [(5234, "4"), (5283, "1"), (5592, "4"), (5809, "4"), (5810, "2"), (5882, "4")]), - ("parse_canada", "parse() canada.json", [(5234, "4"), (5283, "1"), (5617, "3"), (5738, "3"), (5851, "3"), (5882, "4")]), - ("accept_twitter", "accept() twitter.json", [(5234, "4"), (5283, "1"), (5592, "4"), (5809, "4"), (5810, "2"), (5853, "2")]), + ("parse_citm", "parse() citm_catalog.json", [(5234, "4"), (5283, "1"), (5592, "4"), (5809, "4"), (5810, "2"), (5882, "4"), (6031, "1")]), + ("parse_canada", "parse() canada.json", [(5234, "4"), (5283, "1"), (5617, "3"), (5738, "3"), (5851, "3"), (5882, "4"), (6031, "1")]), + ("accept_twitter", "accept() twitter.json", [(5234, "4"), (5283, "1"), (5592, "4"), (5809, "4"), (5810, "2"), (5853, "2"), (6031, "1")]), ("parse_twitter_ifstream", "parse() twitter.json, std::ifstream", [(5828, "1"), (5884, "1")]), ("dump_twitter", "dump() twitter.json", [(5285, "6"), (5738, "2"), (5878, "2"), (5883, "2")]), ("dump_canada", "dump() canada.json", [(5285, "6"), (5634, "3")]), - ("from_cbor_twitter", "from_cbor() twitter", [(5233, "1"), (5501, "4"), (5185, "U"), (5746, "U")]), + ("from_cbor_twitter", "from_cbor() twitter", [(5233, "1"), (5501, "4"), (5185, "U"), (5746, "U"), (6028, "4")]), ("to_cbor_twitter", "to_cbor() twitter", [(5328, "4"), (5824, "6"), (5885, "6")]), ] -MONTHS = [("2025-04", "3.12.0"), ("2026-09", "Sep 2026"), ("2026-10", "Oct")] +# pull requests that were not merged yet when the timeline was measured: their step is the last point, the candidate +# (develop with the open pull requests merged); drop a number here once its pull request is on develop +PENDING = {6031} +MONTHS = [("2025-04", "3.12.0"), ("2026-09", "Sep 2026"), ("2026-10", "Oct"), ("2026-11", "Nov")] def timeline(): @@ -358,7 +361,10 @@ def timeline(): # label, and a label that would overlap one already placed moves up groups = [] for pr, lab in labels: - i = next(k for k, r in enumerate(rows) if r["pr"] == str(pr)) + i = next((k for k, r in enumerate(rows) if r["pr"] == str(pr)), None) + if i is None and pr in PENDING and rows[-1]["commit"] == "candidate": + i = n - 1 + assert i is not None, "no commit of #%d in the timeline" % pr if groups and X(i) - X(groups[-1][-1][1]) < 6: groups[-1].append((pr, i, lab)) else: @@ -454,7 +460,8 @@ def heldout(): for f in files: libs = data[plat][f] # the fastest other library: below 1 json_document is the fastest, and the distance shows by how much - best = min((l for l in libs if l != "nlohmann json_document"), key=lambda l: libs[l]["us"]) + # json::accept() is nlohmann/json too, not another library + best = min((l for l in libs if l not in ("nlohmann json_document", "nlohmann json")), key=lambda l: libs[l]["us"]) rel[plat, f] = libs["nlohmann json_document"]["us"] / libs[best]["us"] winner[plat, f] = UC_LIBS.get(best, best) files.sort(key=lambda f: (rel["x86-gcc", f], rel["mac", f])) @@ -498,10 +505,10 @@ def heldout(): # CPU time of the compiler in ms, median of 5 interleaved rounds, C++20, M1 Max (the post's appendix G) # (3.12.0, 3.13.0, 3.13.0 with a precompiled header, 3.13.0 as a module) PRICE = [ - ("Apple clang 21, -O0 (debug)", [("count_numbers", 955.0, 1320.5, 688.5, 917.5), ("server_config", 1113.2, 1496.4, 862.6, 1135.5)]), - ("Apple clang 21, -O2", [("count_numbers", 1393.2, 2081.0, 1458.4, 1684.6), ("server_config", 1753.5, 2545.6, 1925.3, 2168.6)]), - ("GCC 16, -O0 (debug)", [("count_numbers", 1569.4, 2548.4, 1725.0, 1699.8), ("server_config", 2025.4, 2985.1, 2301.6, 2325.8)]), - ("GCC 16, -O2", [("count_numbers", 2336.0, 3701.5, 2986.8, 2913.4), ("server_config", 3121.5, 4714.2, 4006.2, 4054.9)]), + ("Apple clang 21, -O0 (debug)", [("count_numbers", 830.8, 1131.1, 639.0, 790.3), ("server_config", 962.8, 1312.5, 774.2, 1036.5)]), + ("Apple clang 21, -O2", [("count_numbers", 1328.4, 1898.4, 1311.8, 1491.2), ("server_config", 1584.1, 2251.0, 1778.7, 1925.9)]), + ("GCC 16, -O0 (debug)", [("count_numbers", 1416.5, 2385.4, 1592.9, 1603.7), ("server_config", 1877.6, 2819.8, 2152.1, 2180.2)]), + ("GCC 16, -O2", [("count_numbers", 2159.0, 3464.5, 2765.0, 2739.8), ("server_config", 2877.9, 4388.2, 3722.4, 3773.8)]), ] PRICE_SERIES = [("3.13.0", "nj-charts-c2"), ("3.13.0, precompiled header", "nj-charts-c1"), ("3.13.0, module", "nj-charts-c3")] @@ -584,7 +591,8 @@ NUMBER_TEXT = ("source numbers", "raw numbers") # variants that write each num def normalize_usecases(data): """Chooses each library's best variants again with the rules of the post: variants that reuse a parser or document - across calls are measured but not chosen. Variants that write each number by copying its text instead of formatting + across calls, and in-place variants whose copy of the input is made before the timer starts ("(copy untimed)"), are + measured but not chosen. Variants that write each number by copying its text instead of formatting it (json_document's number_format::source, yyjson's and RapidJSON's raw numbers in edit, minify and write) are not chosen as the fully validating way, but as a way that does less, marked "N" like "U" and "P". Skipping the number conversion while reading is allowed. Each pick has a "mark": "", or the letters of what it skips""" @@ -594,7 +602,7 @@ def normalize_usecases(data): numtext = lambda k: uc in WRITING and any(w in k for w in NUMBER_TEXT) for cell in files.values(): for e in cell.values(): - vs = [(v["us"], k, v["level"]) for k, v in e["variants"].items() if "reused" not in k] + vs = [(v["us"], k, v["level"]) for k, v in e["variants"].items() if "reused" not in k and "copy untimed" not in k] full = [v for v in vs if rank[v[2]] == 0 and not numtext(v[1])] pick = lambda v: {"us": v[0], "variant": v[1], "level": "full" if rank[v[2]] == 0 else v[2], "mark": " ".join(m for m in (LEVEL_MARK.get(v[2], ""), "N" if numtext(v[1]) else "") if m)}