Results of Northwind database rows serialization benchmarks run at 17/08/2010

These benchmarks show the total time in ticks (1/1000ms) that it takes each serializer to serialize and deserialize the first row from each table in the Northwind Database100,000 Times.

The full source code of the serialization benchmarks (which generated this report) is available here.

Combined results of all benchmarks below

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer40974.68x235580196026155183819570838.19576.93x
Microsoft JsonDataContractSerializer19582.24x31122650814628891125855391125.85549.31x
Microsoft BinaryFormatter49275.62x62828907485112001113401071113.40119.21x
NewtonSoft.Json20142.30x260026036872709994729702947.29707.83x
ProtoBuf.net8761x5607749648699712094746120.94751x
ServiceStack TypeSerializer15491.77x150176431198664727004290270.04292.23x
ServiceStack JsonSerializer18312.09x158186481544399831262646312.62652.58x

Results of serializing and deserializing CategoryDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer2754.74x16687673856966552573355.25737.83x
Microsoft JsonDataContractSerializer951.64x15650614609701617476261.74768.76x
Microsoft BinaryFormatter3295.67x41107293140782725151172.515110.28x
NewtonSoft.Json1101.90x11410943945628508672250.86727.21x
ProtoBuf.net581x3229003823807052807.05281x
ServiceStack TypeSerializer871.5x852013537787138980013.8981.97x
ServiceStack JsonSerializer951.64x905827586510149233714.92342.12x

Results of serializing and deserializing CustomerDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer4823.74x24755857232026970761197.07614.73x
Microsoft JsonDataContractSerializer2561.98x2620913859356311214476112.14485.47x
Microsoft BinaryFormatter6354.92x7174199676042913934628139.34636.79x
NewtonSoft.Json2712.10x2853456797871410832170108.32175.28x
ProtoBuf.net1291x8670891184792205188120.51881x
ServiceStack TypeSerializer2021.57x13595861167090252667625.26681.23x
ServiceStack JsonSerializer2421.88x15199401624876314481631.44821.53x

Results of serializing and deserializing EmployeeDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer8512.43x3950717992525013875967138.75974.54x
Microsoft JsonDataContractSerializer5981.71x65683281620167822770006227.70017.45x
Microsoft BinaryFormatter10923.12x14743117915662723899744238.99747.82x
NewtonSoft.Json6071.73x59985531637299222371545223.71547.32x
ProtoBuf.net3501x13503241704289305461330.54611x
ServiceStack TypeSerializer4951.41x32264112759202598561359.85611.96x
ServiceStack JsonSerializer5741.64x30527644222201727496572.74962.38x

Results of serializing and deserializing EmployeeTerritoryDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer23312.94x16524634448438610090161.009011.11x
Microsoft JsonDataContractSerializer382.11x13756353931130530676553.06769.66x
Microsoft BinaryFormatter23413x28671442598752546589654.65909.95x
NewtonSoft.Json532.94x14443662969233441359944.13608.03x
ProtoBuf.net181x3849721644045493765.49381x
ServiceStack TypeSerializer321.78x6533483075429608909.60891.75x
ServiceStack JsonSerializer382.11x1046754387097143385114.33852.61x

Results of serializing and deserializing OrderDetailDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer2820x18066085763621757022975.70230x
Microsoft JsonDataContractSerializer740x22492265408557765778376.57780x
Microsoft BinaryFormatter3150x40793073808086788739378.87390x
NewtonSoft.Json940x23431496610405895355489.53550x
ProtoBuf.net210x554688-15546875.54690x
ServiceStack TypeSerializer640x17001401075569277570927.75710x
ServiceStack JsonSerializer740x13155201023400233892023.38920x

Results of serializing and deserializing OrderDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer6155.69x3663831906339412727225127.27226.66x
Microsoft JsonDataContractSerializer3663.39x70818201450037421582194215.821911.30x
Microsoft BinaryFormatter7587.02x12201868710302819304896193.049010.11x
NewtonSoft.Json3663.39x54318171413302519564842195.648410.24x
ProtoBuf.net1081x8513711058400190977119.09771x
ServiceStack TypeSerializer2532.34x30481292431096547922554.79222.87x
ServiceStack JsonSerializer3182.94x32320263612393684441968.44423.58x

Results of serializing and deserializing ProductDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer45211.3x22947737470820976559397.655916.98x
Microsoft JsonDataContractSerializer1874.68x33517201052852013880240138.802424.14x
Microsoft BinaryFormatter50812.7x5538313525399210792305107.923018.77x
NewtonSoft.Json1894.72x2907845771802110625866106.258718.48x
ProtoBuf.net401x4292661457015749675.74971x
ServiceStack TypeSerializer1634.08x18677072254170412187741.21887.17x
ServiceStack JsonSerializer1874.68x19663641977717394408139.44086.86x

Results of serializing and deserializing RegionDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer20919x12805113618303489881448.988114.20x
Microsoft JsonDataContractSerializer383.45x14190464597709601675560.167617.44x
Microsoft BinaryFormatter22320.27x27399492545950528589952.859015.33x
NewtonSoft.Json383.45x9001062268116316822231.68229.19x
ProtoBuf.net111x2038311410723449033.44901x
ServiceStack TypeSerializer322.91x780021285317106533810.65343.09x
ServiceStack JsonSerializer383.45x5908113549299457409.45742.74x

Results of serializing and deserializing ShipperDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer2356.91x12686953390337465903246.59036.18x
Microsoft JsonDataContractSerializer641.88x15674194765675633309463.33098.41x
Microsoft BinaryFormatter2697.91x39043613070608697496969.74979.26x
NewtonSoft.Json641.88x12528633184918443778144.37785.89x
ProtoBuf.net341x3008574524497533067.53311x
ServiceStack TypeSerializer541.59x852103435416128751912.87521.71x
ServiceStack JsonSerializer641.88x1134439619427175386617.53872.33x

Results of serializing and deserializing SupplierDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer4974.56x3999081717225411171335111.71346.95x
Microsoft JsonDataContractSerializer2552.34x3694304944939513143699131.43708.17x
Microsoft BinaryFormatter6115.61x6609649590682812516477125.16487.78x
NewtonSoft.Json2552.34x24114797543959995543899.55446.19x
ProtoBuf.net1091x671590936412160800216.08001x
ServiceStack TypeSerializer1801.65x15126461446982295962829.59631.84x
ServiceStack JsonSerializer2141.96x16331121552982318609431.86091.98x

Results of serializing and deserializing TerritoryDto 100,000 times

* All times measured in ticks and payload size in bytes
SerializerPayload sizeLarger than bestSerializationDeserializationTotalAvg per iterationSlower than best
Microsoft DataContractSerializer24813.05x13035964083763538735953.87369.93x
Microsoft JsonDataContractSerializer613.21x18784044285144616354861.635511.36x
Microsoft BinaryFormatter26814.11x29395782974204591378259.137810.90x
NewtonSoft.Json613.21x16610242612493427351742.73527.88x
ProtoBuf.net191x2255493170985426475.42651x
ServiceStack TypeSerializer512.68x865679362045122772412.27722.26x
ServiceStack JsonSerializer613.21x736611505866124247712.42482.29x