Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save JamesNK/86d8707398326904dfbccd3744022960 to your computer and use it in GitHub Desktop.
Save JamesNK/86d8707398326904dfbccd3744022960 to your computer and use it in GitHub Desktop.
BenchmarkDotNet=v0.11.4, OS=Windows 10.0.18363
AMD Ryzen 7 1700, 1 CPU, 16 logical and 8 physical cores
.NET Core SDK=3.1.400-preview-015151
[Host] : .NET Core 2.1.17 (CoreCLR 4.6.28619.01, CoreFX 4.6.28619.01), 64bit RyuJIT
DefaultJob : .NET Core 2.1.17 (CoreCLR 4.6.28619.01, CoreFX 4.6.28619.01), 64bit RyuJIT
Before:
| Method | messageCount | Mean | Error | StdDev | Gen 0/1k Op | Gen 1/1k Op | Gen 2/1k Op | Allocated Memory/Op |
|--------------------------------------------------------------------- |------------- |--------------:|--------------:|--------------:|------------:|------------:|------------:|--------------------:|
| ManyWrapperFieldsMessage_ToByteArray | ? | 1,208.47 ns | 6.0263 ns | 5.0323 ns | 0.2117 | - | - | 168 B |
| ManyWrapperFieldsMessage_WriteToCodedOutputStream | ? | 669.04 ns | 2.6249 ns | 2.4554 ns | 0.0601 | - | - | 48 B |
| ManyPrimitiveFieldsMessage_ToByteArray | ? | 481.13 ns | 1.3113 ns | 1.2266 ns | 0.1926 | - | - | 152 B |
| ManyPrimitiveFieldsMessage_WriteToCodedOutputStream | ? | 251.77 ns | 0.8220 ns | 0.7689 ns | 0.0606 | - | - | 48 B |
| EmptyMessage_ToByteArray | ? | 33.38 ns | 0.1569 ns | 0.1468 ns | 0.0915 | - | - | 72 B |
| EmptyMessage_WriteToCodedOutputStream | ? | 22.30 ns | 0.0444 ns | 0.0416 ns | 0.0610 | - | - | 48 B |
| ManyWrapperFieldsMessage_WriteDelimitedMessagesToCodedOutputStream | 10 | 11,230.83 ns | 142.1695 ns | 126.0296 ns | 0.0458 | - | - | 48 B |
| ManyPrimitiveFieldsMessage_WriteDelimitedMessagesToCodedOutputStream | 10 | 4,276.61 ns | 22.2818 ns | 18.6063 ns | 0.0534 | - | - | 48 B |
| ManyWrapperFieldsMessage_WriteDelimitedMessagesToCodedOutputStream | 100 | 110,927.92 ns | 2,210.6043 ns | 1,959.6431 ns | - | - | - | 48 B |
| ManyPrimitiveFieldsMessage_WriteDelimitedMessagesToCodedOutputStream | 100 | 42,657.95 ns | 526.8850 ns | 492.8486 ns | - | - | - | 48 B |
After:
| Method | messageCount | Mean | Error | StdDev | Gen 0/1k Op | Gen 1/1k Op | Gen 2/1k Op | Allocated Memory/Op |
|--------------------------------------------------------------------- |------------- |--------------:|------------:|------------:|------------:|------------:|------------:|--------------------:|
| ManyWrapperFieldsMessage_ToByteArray | ? | 1,359.25 ns | 16.7332 ns | 15.6523 ns | 0.2327 | - | - | 184 B |
| ManyWrapperFieldsMessage_WriteToCodedOutputStream | ? | 719.06 ns | 13.4479 ns | 13.2077 ns | 0.0811 | - | - | 64 B |
| ManyWrapperFieldsMessage_WriteToSpan | ? | 682.68 ns | 7.6774 ns | 6.8058 ns | - | - | - | - |
| ManyPrimitiveFieldsMessage_ToByteArray | ? | 1,122.97 ns | 4.4012 ns | 4.1168 ns | 0.2117 | - | - | 168 B |
| ManyPrimitiveFieldsMessage_WriteToCodedOutputStream | ? | 888.52 ns | 6.5177 ns | 6.0967 ns | 0.0811 | - | - | 64 B |
| ManyPrimitiveFieldsMessage_WriteToSpan | ? | 838.48 ns | 6.8594 ns | 6.4163 ns | - | - | - | - |
| EmptyMessage_ToByteArray | ? | 59.67 ns | 0.6468 ns | 0.6050 ns | 0.1118 | - | - | 88 B |
| EmptyMessage_WriteToCodedOutputStream | ? | 48.30 ns | 0.1546 ns | 0.1291 ns | 0.0814 | - | - | 64 B |
| EmptyMessage_WriteToSpan | ? | 24.65 ns | 0.5052 ns | 0.4726 ns | - | - | - | - |
| ManyWrapperFieldsMessage_WriteDelimitedMessagesToCodedOutputStream | 10 | 12,055.95 ns | 49.4067 ns | 43.7978 ns | 0.0763 | - | - | 64 B |
| ManyWrapperFieldsMessage_WriteDelimitedMessagesToSpan | 10 | 11,925.30 ns | 50.9080 ns | 47.6194 ns | - | - | - | - |
| ManyPrimitiveFieldsMessage_WriteDelimitedMessagesToCodedOutputStream | 10 | 10,411.18 ns | 21.6426 ns | 19.1856 ns | 0.0763 | - | - | 64 B |
| ManyPrimitiveFieldsMessage_WriteDelimitedMessagesToSpan | 10 | 10,278.38 ns | 26.6398 ns | 23.6155 ns | - | - | - | - |
| ManyWrapperFieldsMessage_WriteDelimitedMessagesToCodedOutputStream | 100 | 120,748.04 ns | 750.1710 ns | 701.7104 ns | - | - | - | 64 B |
| ManyWrapperFieldsMessage_WriteDelimitedMessagesToSpan | 100 | 118,218.91 ns | 197.2993 ns | 174.9007 ns | - | - | - | - |
| ManyPrimitiveFieldsMessage_WriteDelimitedMessagesToCodedOutputStream | 100 | 103,483.93 ns | 328.3182 ns | 307.1090 ns | - | - | - | 64 B |
| ManyPrimitiveFieldsMessage_WriteDelimitedMessagesToSpan | 100 | 102,802.39 ns | 445.3497 ns | 416.5804 ns | - | - | - | - |
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment