Pre-release of https://github.com/mpenet/oda - a fast JSON parser/writer. • Zero dependencies. • SWAR/SIMD accelerated. • Up to 4.8x faster than jackson on some operations. • Allocates 2-5x less than jackson. • Validated against the full https://github.com/nst/JSONTestSuite corpus with bit-exact double parsing and writing
How does this compare to https://github.com/cnuernber/charred?
No idea. I haven't benched against it. I can add it but I won't be able to run it until tonight. Just by looking at the raw numbers, similarly when SIMD is off, and oda seems faster with SIMD enabled.
depends on the type of workloads possibly. oda is aimed at regular sized json documents, it probably fares well with large ones too (it does buffering & co) and charred seems optimized for large docs.
in short, no idea, I ll test later 🙂
I am not sure about correctness with charred, from a quick glance I don't see extensive test coverage
but I could be wrong
you got me curious, I just ran a quick bench against it, on my laptop, which is running a bunch of noisy stuff too, so take it with a grain of salt: simd oda seems 1.5-5.2x faster. I didn't run the scalar test, that will be for tonight
allocs also seems way less. And the other stuff on my laptop has no impact on this.
paging @chris441 who I suspect will be interested in these results
I didn't test charred-hamf, maybe that swings things around. Like I said take it with a grain of salt. Document size also might change results
Charred is supposed to be fast on large data sets, there's some initial cost in it going through http://clojure.java.io stuff
Nice! What is pre-release about it?
it's certainly usable already tho
https://github.com/seancorfield/rephrase https://github.com/seancorfield/rephrase/releases/tag/v1.0.4 - Rephrase exceptions to be more beginner-friendly
• Fix handling of messages where :clojure.error/class is missing (or nil).
• Update dev/test deps.
Follow-up in #C0B2UH1BPT3