JavaScript Object Notation or JSON is a ubiquitous data exchange format on the Web. Ingesting JSON documents can become a performance bottleneck due to the sheer volume of data. We are thus motivated to make JSON parsing as fast as possible. Despite the maturity of the problem of JSON parsing, we show that substantial speedups are possible. We present the first standard-compliant JSON parser to process gigabytes of data per second on a single core, using commodity processors. We can use a quarter or fewer instructions than a state-of-the-art reference parser like RapidJSON. Unlike other validating parsers, our software (simdjson) makes extensive use of Single Instruction, Multiple Data (SIMD) instructions. To ensure reproducibility, simdjson is freely available as open-source software under a liberal license.
翻译:JavaScript 对象名称或 JSON 是网络上无处不在的数据交换格式。 输入 JSON 文档可能由于数据数量庞大而成为性能瓶颈。 因此, 我们的动机是让 JSON 尽可能快地解析 JSON 。 尽管 JSON 解析问题已经成熟, 我们显示, 大量加速是可能的。 我们展示了第一个符合JSON 标准、 使用商品处理器处理单个核心每秒一兆字节的数据。 我们可以使用比像 RapidJSons 这样的最新参考解析器少四分之一或更少的指示。 与其他验证分析器不同, 我们的软件( simdjson) 广泛使用单一指示、 多数据( SIMD) 指令。 为确保可复制性, Simdjson 可以在自由许可下免费作为开放源软件。