>_ DevTrendsen

Language

Home

Languages

Sections

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embedded Security
C-plus-plus

When JSON slows you down: how simdjson speeds up parsing by 25x

Imagine: your server spends 40% of its time parsing JSON — a typical situation for modern web applications. This is exactly the problem simdjson solves — a library that has revolutionized the perception of JSON processing speed in C++.

What is this beast?

simdjson is a high-performance JSON parser that uses:

  • CPU SIMD instructions (AVX2, AVX512, NEON)
  • Micro-parallel algorithms
  • Automatic optimization for specific CPUs

Result? Up to 6 GB/s for JSON minification and 3.5 GB/s for NDJSON processing. For comparison — it's like the difference between a carrier pigeon and an F-16 fighter jet.

Key advantages

  1. Speed that borders on madness

    • 4 times faster than RapidJSON
    • 25 times faster than JSON for Modern C++
    • Processing millions of documents per second on a single core
  2. Full validation without compromise

    • UTF-8 validation at 13 GB/s
    • Accurate number parsing
    • Full JSON standard compliance
  3. Easy integration

    • Just two files — .h and .cpp — and you're ready to go.

How does it work?

The library uses three tricks:

  1. Vectorization: processing 32-64 bytes of JSON in a single operation
  2. Branch minimization: predictable code for the processor
  3. Lazy parsing: analyzing only the fields you actually need

The chart below shows how simdjson outperforms competitors on files of different sizes:

simdjson performance

Who already uses it?

  • Node.js — for internal parsing
  • ClickHouse — JSON processing in analytical queries
  • Apache Doris — high-performance analytics
  • Milvus — vector search engine

Is it worth trying?

If you:

  • Work with large volumes of JSON
  • Want to reduce CPU load
  • Are looking for a simple dependency-free solution

...then simdjson was made for you. And the library is available not only in C++ — there are ports for Python, Rust, Go, and even Erlang.

API simplicity + record-breaking performance = the ideal choice for highload projects. As they say, feel the difference — parse just once with simdjson, and there's no going back.

Related projects