simdjson
simdjson copied to clipboard
Parsing gigabytes of JSON per second : used by Facebook/Meta Velox, the Node.js runtime, ClickHouse, WatermelonDB, Apache Doris, Milvus, StarRocks
[Our grisu2 implementation of to_chars](https://github.com/simdjson/simdjson/blob/master/src/to_chars.cpp) is adapted from JSON for Modern C++. We have no reason to think that it is fastest or best optimized. It is likely that we...
We always validate whatever you use, as well as any objects and arrays that are part of the path to it. The idea is, you should never get the wrong...
1.0 Goals
We're starting to talk about 1.0 and release quality a lot more, so I think we should write out what we each *want* for simdjson. Even if our thoughts are...
The On Demand front-end depends crucially on how it tracks the current depth. An improper depth state can break the parsing. I think that before we release 1.0, we should...
The idea is to very quickly dismiss keys that are not a match when searching through an object. Suppose that the target has at least 7 bytes. Pick up a...
It's weird to have a parser but the verb not be "parse." We could rename parser to some kind of iterator, or we could add a "parse" alias to "iterate,"...
We kinda use TAPE_ERROR for everything. There are almost no actual TAPE_ERRORs (and there are certainly zero tape errors in On Demand, which doesn't have a tape :). We should...
Currently, we are checking the performance impact of each commit on the old DOM-API parse, so we can spot regression. We should move to On Demand checks.
Current simdjson has a fallback kernel which emulates a high speed wide SIMD stage 1. This is almost certainly wasteful and we should instead move to single-stage model where we...
It seems that it would be doable to get On Demand to support something like json_struct. https://github.com/jorgen/json_struct