Results of Northwind database rows serialization benchmarks run at 06/02/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 Database1,000,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| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 4097 | 4.68x | 235392060 | 643889088 | 879281148 | 879.2811 | 6.72x |
|---|
| Microsoft JsonDataContractSerializer | 1958 | 2.24x | 400010575 | 932212071 | 1332222646 | 1332.2226 | 10.18x |
|---|
| Microsoft BinaryFormatter | 4927 | 5.62x | 622288868 | 563079698 | 1185368566 | 1185.3686 | 9.06x |
|---|
| NewtonSoft.Json | 2014 | 2.30x | 303865396 | 763206254 | 1067071650 | 1067.0716 | 8.15x |
|---|
| ProtoBuf.net | 876 | 1x | 64480719 | 66410737 | 130891456 | 130.8915 | 1x |
|---|
| ServiceStack TypeSerializer | 1560 | 1.78x | 152435512 | 98672475 | 251107987 | 251.1080 | 1.92x |
Results of serializing and deserializing CategoryDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 275 | 4.74x | 16160260 | 47542393 | 63702653 | 63.7027 | 7.49x |
|---|
| Microsoft JsonDataContractSerializer | 95 | 1.64x | 26934050 | 58339075 | 85273125 | 85.2731 | 10.03x |
|---|
| Microsoft BinaryFormatter | 329 | 5.67x | 49300488 | 53850072 | 103150560 | 103.1506 | 12.13x |
|---|
| NewtonSoft.Json | 110 | 1.90x | 22923190 | 47764119 | 70687309 | 70.6873 | 8.31x |
|---|
| ProtoBuf.net | 58 | 1x | 4325223 | 4178254 | 8503477 | 8.5035 | 1x |
|---|
| ServiceStack TypeSerializer | 87 | 1.5x | 9447704 | 4536110 | 13983814 | 13.9838 | 1.64x |
Results of serializing and deserializing CustomerDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 482 | 3.74x | 25232557 | 71962259 | 97194816 | 97.1948 | 5.47x |
|---|
| Microsoft JsonDataContractSerializer | 256 | 1.98x | 42549449 | 95751507 | 138300956 | 138.3010 | 7.78x |
|---|
| Microsoft BinaryFormatter | 635 | 4.92x | 73750243 | 64728680 | 138478923 | 138.4789 | 7.79x |
|---|
| NewtonSoft.Json | 271 | 2.10x | 36180465 | 69314105 | 105494570 | 105.4946 | 5.94x |
|---|
| ProtoBuf.net | 129 | 1x | 8231547 | 9538334 | 17769881 | 17.7699 | 1x |
|---|
| ServiceStack TypeSerializer | 202 | 1.57x | 12642376 | 11846953 | 24489329 | 24.4893 | 1.38x |
Results of serializing and deserializing EmployeeDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 851 | 2.43x | 43906046 | 95134468 | 139040514 | 139.0405 | 4.17x |
|---|
| Microsoft JsonDataContractSerializer | 598 | 1.71x | 71007035 | 178911043 | 249918078 | 249.9181 | 7.50x |
|---|
| Microsoft BinaryFormatter | 1092 | 3.12x | 126919397 | 98248433 | 225167830 | 225.1678 | 6.76x |
|---|
| NewtonSoft.Json | 607 | 1.73x | 64459717 | 169106871 | 233566588 | 233.5666 | 7.01x |
|---|
| ProtoBuf.net | 350 | 1x | 14447354 | 18874666 | 33322020 | 33.3220 | 1x |
|---|
| ServiceStack TypeSerializer | 495 | 1.41x | 33564303 | 23633218 | 57197521 | 57.1975 | 1.72x |
Results of serializing and deserializing EmployeeTerritoryDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 233 | 12.94x | 14264657 | 43777660 | 58042317 | 58.0423 | 9.89x |
|---|
| Microsoft JsonDataContractSerializer | 38 | 2.11x | 26887001 | 52328592 | 79215593 | 79.2156 | 13.50x |
|---|
| Microsoft BinaryFormatter | 234 | 13x | 30108615 | 37976090 | 68084705 | 68.0847 | 11.60x |
|---|
| NewtonSoft.Json | 53 | 2.94x | 17338720 | 33635789 | 50974509 | 50.9745 | 8.69x |
|---|
| ProtoBuf.net | 18 | 1x | 4120658 | 1748037 | 5868695 | 5.8687 | 1x |
|---|
| ServiceStack TypeSerializer | 43 | 2.39x | 7465902 | 3536420 | 11002322 | 11.0023 | 1.87x |
Results of serializing and deserializing OrderDetailDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 282 | 0x | 19826349 | 56700635 | 76526984 | 76.5270 | 0x |
|---|
| Microsoft JsonDataContractSerializer | 74 | 0x | 35511037 | 69378237 | 104889274 | 104.8893 | 0x |
|---|
| Microsoft BinaryFormatter | 315 | 0x | 51236026 | 60907981 | 112144007 | 112.1440 | 0x |
|---|
| NewtonSoft.Json | 94 | 0x | 29117198 | 69046244 | 98163442 | 98.1634 | 0x |
|---|
| ProtoBuf.net | 21 | 0x | 5420780 | -1 | 5420779 | 5.4208 | 0x |
|---|
| ServiceStack TypeSerializer | 76 | 0x | 13931735 | 7987754 | 21919489 | 21.9195 | 0x |
Results of serializing and deserializing OrderDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 615 | 5.69x | 35125007 | 91945790 | 127070797 | 127.0708 | 6.09x |
|---|
| Microsoft JsonDataContractSerializer | 366 | 3.39x | 71350399 | 157007149 | 228357548 | 228.3575 | 10.95x |
|---|
| Microsoft BinaryFormatter | 758 | 7.02x | 117165308 | 79038755 | 196204063 | 196.2041 | 9.41x |
|---|
| NewtonSoft.Json | 366 | 3.39x | 59050825 | 160823009 | 219873834 | 219.8738 | 10.54x |
|---|
| ProtoBuf.net | 108 | 1x | 9367968 | 11492220 | 20860188 | 20.8602 | 1x |
|---|
| ServiceStack TypeSerializer | 253 | 2.34x | 30355938 | 20069494 | 50425432 | 50.4254 | 2.42x |
Results of serializing and deserializing ProductDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 452 | 11.3x | 23924837 | 72926315 | 96851152 | 96.8512 | 13.06x |
|---|
| Microsoft JsonDataContractSerializer | 187 | 4.68x | 39682314 | 104537793 | 144220107 | 144.2201 | 19.44x |
|---|
| Microsoft BinaryFormatter | 508 | 12.7x | 58246144 | 59860261 | 118106405 | 118.1064 | 15.92x |
|---|
| NewtonSoft.Json | 189 | 4.72x | 32773851 | 101394174 | 134168025 | 134.1680 | 18.09x |
|---|
| ProtoBuf.net | 40 | 1x | 5465528 | 1952131 | 7417659 | 7.4177 | 1x |
|---|
| ServiceStack TypeSerializer | 163 | 4.08x | 16336833 | 13171993 | 29508826 | 29.5088 | 3.98x |
Results of serializing and deserializing RegionDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 209 | 19x | 14149955 | 41499587 | 55649542 | 55.6495 | 10.60x |
|---|
| Microsoft JsonDataContractSerializer | 38 | 3.45x | 24827819 | 55733117 | 80560936 | 80.5609 | 15.35x |
|---|
| Microsoft BinaryFormatter | 223 | 20.27x | 29531323 | 32138727 | 61670050 | 61.6700 | 11.75x |
|---|
| NewtonSoft.Json | 38 | 3.45x | 12122436 | 31500943 | 43623379 | 43.6234 | 8.31x |
|---|
| ProtoBuf.net | 11 | 1x | 3210786 | 2037358 | 5248144 | 5.2481 | 1x |
|---|
| ServiceStack TypeSerializer | 32 | 2.91x | 8626045 | 2692519 | 11318564 | 11.3186 | 2.16x |
Results of serializing and deserializing ShipperDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 235 | 6.91x | 15807205 | 41921415 | 57728620 | 57.7286 | 7.25x |
|---|
| Microsoft JsonDataContractSerializer | 64 | 1.88x | 26255785 | 60276976 | 86532761 | 86.5328 | 10.87x |
|---|
| Microsoft BinaryFormatter | 269 | 7.91x | 34263023 | 36062102 | 70325125 | 70.3251 | 8.83x |
|---|
| NewtonSoft.Json | 64 | 1.88x | 14487013 | 35599911 | 50086924 | 50.0869 | 6.29x |
|---|
| ProtoBuf.net | 34 | 1x | 3916942 | 4044236 | 7961178 | 7.9612 | 1x |
|---|
| ServiceStack TypeSerializer | 54 | 1.59x | 10189116 | 3975404 | 14164520 | 14.1645 | 1.78x |
Results of serializing and deserializing SupplierDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 497 | 4.56x | 29550343 | 83008775 | 112559118 | 112.5591 | 6.77x |
|---|
| Microsoft JsonDataContractSerializer | 255 | 2.34x | 43478662 | 104497116 | 147975778 | 147.9758 | 8.90x |
|---|
| Microsoft BinaryFormatter | 611 | 5.61x | 68337468 | 63486213 | 131823681 | 131.8237 | 7.93x |
|---|
| NewtonSoft.Json | 255 | 2.34x | 30724830 | 75665504 | 106390334 | 106.3903 | 6.40x |
|---|
| ProtoBuf.net | 109 | 1x | 7618719 | 9005480 | 16624199 | 16.6242 | 1x |
|---|
| ServiceStack TypeSerializer | 180 | 1.65x | 14796441 | 11520842 | 26317283 | 26.3173 | 1.58x |
Results of serializing and deserializing TerritoryDto 1,000,000 times
* All times measured in ticks and payload size in bytes| Serializer | Payload size | Larger than best | Serialization | Deserialization | Total | Avg per iteration | Slower than best |
| Microsoft DataContractSerializer | 248 | 13.05x | 17271193 | 54170426 | 71441619 | 71.4416 | 9.77x |
|---|
| Microsoft JsonDataContractSerializer | 61 | 3.21x | 27038061 | 64829703 | 91867764 | 91.8678 | 12.56x |
|---|
| Microsoft BinaryFormatter | 268 | 14.11x | 34666859 | 37690365 | 72357224 | 72.3572 | 9.89x |
|---|
| NewtonSoft.Json | 61 | 3.21x | 13804349 | 38401829 | 52206178 | 52.2062 | 7.14x |
|---|
| ProtoBuf.net | 19 | 1x | 3775994 | 3540021 | 7316015 | 7.3160 | 1x |
|---|
| ServiceStack TypeSerializer | 51 | 2.68x | 9010854 | 3689522 | 12700376 | 12.7004 | 1.74x |