Performance benchmarks updated

I recent­ly reor­ga­nized the Sim­ple­SpeedTester project’s struc­ture so that it’s eas­i­er to add tests to both the Json and bina­ry seri­al­iz­er bench­marks, and to run the tests is as easy as run­ning the RunBenchmarks.fsx F# script and then choos­ing which bench­mark you’d like to run and then kick back and wait for the results to come back.

 

DISCLAIMER : as always, you should be bench­mark against your pay­load and use case, the bench­mark num­bers I have pro­duced here is unlike­ly to be rep­re­sen­ta­tive of your use cas­es and nei­ther is any­body else’s bench­mark num­bers.

You can use the sim­ple test har­ness I cre­ated and see this exam­ple code for my JSON seri­al­izer tests to bench­mark against your par­tic­u­lar pay­load.

 

Binary Serializers

image

image

Ver­sions test­ed:

 

JSON Serializers

System.Json has been added to the list of seri­al­iz­ers thanks to Mauri­cio’s pull-request.

image

image

P.S. pro­to­buf-net is NOT a JSON seri­al­iz­er, but it’s in the mix here sim­ply as a bench­mark since it’s one of the more wide­ly used and fastest seri­al­iz­ers around, and use­ful to com­pare the BSON seri­al­iz­ers in the list.

 

Ver­sions test­ed:

 

Since I start­ed doing these bench­marks more than two years ago, I have been impressed by the way Json.Net upped its game since those ear­ly bench­marks! Long may the healthy com­pe­ti­tion lasts between these JSON seri­al­iz­er heavy­weights so that rest of us can sim­ply reap the ben­e­fits of the great work guys like Demis Bel­lot and James New­ton-King are doing in pro­vid­ing essen­tial tool­ing in this space!