-
Notifications
You must be signed in to change notification settings - Fork 80
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace serde_json with simd_json #3174
base: latest
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## latest #3174 +/- ##
=======================================
Coverage 86.38% 86.39%
=======================================
Files 137 137
Lines 16125 16133 +8
Branches 2219 2219
=======================================
+ Hits 13930 13938 +8
Misses 1888 1888
Partials 307 307
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
2d7b3e9
to
9c59081
Compare
8fe5104
to
32950d7
Compare
eb471c8
to
c222848
Compare
Tried out with a big signature (1.3GB compressed): 5m34s -> 3m29s Tradeoffs, tradeoffs... =] This PR:
latest:
|
c222848
to
a35e64b
Compare
I found out the simd-json crate supports the same interface as
serde_json
, so it is an easy swap for potentially much better perf.Drawbacks are only supported onthis is now supported on ARM and wasm too, with (slower) fallbacks when conditions are not met.x86_64
, so need to keepserde_json
for all other archs.This PR also shows how spread the use ofrebased on top of #3443, which greatly limited changesserde_json::from_reader
across the codebase is, should probably consolidate into a method on signatures...