It’s been a while since I last updated my binary and JSON serializer benchmarks, so here I round up the latest versions of the serializers on here.
DISCLAIMER : as always, you should benchmark against your payload and use case, the benchmark numbers I have produced here is unlikely to be representative of your use cases and neither is anybody else’s benchmark numbers.
You can use the simple test harness I created and see these example code to benchmark against your particular payload.
Only FsPickler was updated for this benchmark so there are no significant changes in numbers here (with the exception of the BinaryWriter!).
Quite a few of the JSON serializers have been updated:
- MongoDB Driver
- Newtonsoft.Json (aka Json.Net)
Jil seems to have made the biggest gains since the last time.
*protobuf-net is in this list purely as a benchmark to show how the test JSON serializers compare to one of the fastest binary serializers (both in terms of speed and payload size)
5 thoughts on “Binary and Json benchmarks updated”
Any plans to add MS Bond to the list of binary formats?
good idea, fancy putting a PR in?
Pingback: MS Bond and Chiron benchmarked | theburningmonk.com
I’ve used this article many times to advocate for “performance as a feature” to companies. At this point the article is a year and a half out of date, and many of these libraries have had multiple updates (ex: NetJSON has had over 20)…. any chance you could re-run these tests with the latest and publish?
Hi Travis, sure thing. I have been away from the .Net world for about a year now hence the lack of update here, apologies.
I’ll put some time aside later this week to get these benchmarks updated. You should also take a look at Matt Warren’s BenchmarkDotNet library which is a very powerful tool for running benchmarks yourself and it spits out a bunch of useful metrics which I’m not able to capture with my simple benchmarks.