Skip to content

Commit a8026df

Browse files
committed
Add benchmark
1 parent bde61b8 commit a8026df

12 files changed

Lines changed: 253 additions & 95 deletions

src/plugins/MessagePackTest/BenchmarkDotNet.Aritfacts.2025-08-03_23-46-53Z/results/MessagePackTest.ArraySerializeBenchmark-report-github.md

Lines changed: 0 additions & 25 deletions
This file was deleted.

src/plugins/MessagePackTest/BenchmarkDotNet.Aritfacts.2025-08-03_23-46-53Z/results/MessagePackTest.ArraySerializeBenchmark-report.html

Lines changed: 0 additions & 41 deletions
This file was deleted.
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
```
2+
3+
BenchmarkDotNet v0.15.2, Windows 10 (10.0.19045.6093/22H2/2022Update)
4+
12th Gen Intel Core i7-12800HX 2.00GHz, 1 CPU, 24 logical and 16 physical cores
5+
.NET SDK 9.0.302
6+
[Host] : .NET 9.0.7 (9.0.725.31616), X64 RyuJIT AVX2
7+
DefaultJob : .NET 9.0.7 (9.0.725.31616), X64 RyuJIT AVX2
8+
9+
10+
```
11+
| Method | Mean | Error | StdDev | Ratio | RatioSD | Gen0 | Allocated | Alloc Ratio |
12+
|------------------------------------- |------------:|----------:|----------:|-------:|--------:|-------:|----------:|------------:|
13+
| MemoryPackSerialize | 351.4 ns | 3.96 ns | 3.30 ns | 1.00 | 0.01 | 0.9170 | 12032 B | 1.00 |
14+
| MemoryPackSerializeUtf16 | 348.1 ns | 5.57 ns | 5.21 ns | 0.99 | 0.02 | 0.9170 | 12032 B | 1.00 |
15+
| MessagePackSerialize | 11,668.6 ns | 69.16 ns | 57.75 ns | 33.21 | 0.34 | 1.2207 | 16032 B | 1.33 |
16+
| OrleansSerialize | 9,743.9 ns | 57.69 ns | 51.14 ns | 27.73 | 0.29 | 1.2970 | 17032 B | 1.42 |
17+
| SystemTextJsonSerialize | 23,521.3 ns | 120.68 ns | 100.77 ns | 66.95 | 0.67 | 2.7161 | 35521 B | 2.95 |
18+
| | | | | | | | | |
19+
| MemoryPackBufferWriter | 127.6 ns | 0.98 ns | 0.87 ns | 1.00 | 0.01 | - | - | NA |
20+
| MemoryPackBufferWriterUtf16 | 130.8 ns | 2.59 ns | 3.80 ns | 1.03 | 0.03 | - | - | NA |
21+
| MessagePackBufferWriter | 10,616.3 ns | 59.05 ns | 55.24 ns | 83.23 | 0.69 | - | - | NA |
22+
| OrleansWriterPooledArrayBufferWriter | 8,631.8 ns | 63.93 ns | 59.80 ns | 67.67 | 0.63 | - | - | NA |
23+
| OrleansWriterArrayBufferWriter | 9,850.8 ns | 68.35 ns | 57.07 ns | 77.22 | 0.67 | - | - | NA |
24+
| OrleansPipeWriter | 12,714.4 ns | 112.24 ns | 104.99 ns | 99.67 | 1.03 | 0.0305 | 480 B | NA |
25+
| SystemTextJsonBufferWriter | 25,184.4 ns | 199.50 ns | 186.61 ns | 197.43 | 1.92 | 2.4719 | 32312 B | NA |

src/plugins/MessagePackTest/BenchmarkDotNet.Aritfacts.2025-08-03_23-46-53Z/results/MessagePackTest.ArraySerializeBenchmark-report.csv renamed to src/plugins/MessagePackTest/BenchmarkDotNet.Aritfacts.2025-08-04_03-16-25Z/results/MessagePackTest.ArraySerializeBenchmark-report.csv

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,LargeAddressAware,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Mean,Error,StdDev,Ratio,RatioSD,Gen0,Allocated,Alloc Ratio
2-
MemoryPackSerialize,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,382.7 ns,7.53 ns,10.56 ns,1.00,0.04,0.9170,12032 B,1.00
3-
MemoryPackSerializeUtf16,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,378.2 ns,7.22 ns,7.09 ns,0.99,0.03,0.9170,12032 B,1.00
4-
MessagePackSerialize,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"12,190.4 ns",153.65 ns,143.73 ns,31.88,0.92,1.2207,16032 B,1.33
5-
OrleansSerialize,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"9,692.6 ns",136.67 ns,127.84 ns,25.35,0.75,1.2970,17032 B,1.42
6-
SystemTextJsonSerialize,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"25,025.5 ns",287.41 ns,268.85 ns,65.44,1.86,2.7161,35520 B,2.95
7-
MemoryPackBufferWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,357.1 ns,3.80 ns,3.37 ns,1.00,0.01,0.9170,12032 B,1.00
8-
MemoryPackBufferWriterUtf16,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,357.6 ns,4.52 ns,4.01 ns,1.00,0.01,0.9170,12032 B,1.00
9-
MessagePackBufferWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"10,998.7 ns",29.65 ns,24.75 ns,30.81,0.29,0.0000,0 B,0.00
10-
OrleansBufferWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"8,518.1 ns",57.47 ns,50.95 ns,23.86,0.26,0.0000,0 B,0.00
11-
OrleansBufferWriter2,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"10,093.7 ns",36.34 ns,67.36 ns,28.27,0.32,0.0000,0 B,0.00
12-
OrleansPipeWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"10,549.4 ns",47.77 ns,37.30 ns,29.55,0.29,0.0305,480 B,0.04
13-
SystemTextJsonBufferWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"26,152.2 ns",136.14 ns,127.35 ns,73.25,0.75,2.4719,32312 B,2.69
2+
MemoryPackSerialize,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,351.4 ns,3.96 ns,3.30 ns,1.00,0.01,0.9170,12032 B,1.00
3+
MemoryPackSerializeUtf16,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,348.1 ns,5.57 ns,5.21 ns,0.99,0.02,0.9170,12032 B,1.00
4+
MessagePackSerialize,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"11,668.6 ns",69.16 ns,57.75 ns,33.21,0.34,1.2207,16032 B,1.33
5+
OrleansSerialize,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"9,743.9 ns",57.69 ns,51.14 ns,27.73,0.29,1.2970,17032 B,1.42
6+
SystemTextJsonSerialize,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"23,521.3 ns",120.68 ns,100.77 ns,66.95,0.67,2.7161,35521 B,2.95
7+
MemoryPackBufferWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,127.6 ns,0.98 ns,0.87 ns,1.00,0.01,0.0000,0 B,NA
8+
MemoryPackBufferWriterUtf16,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,130.8 ns,2.59 ns,3.80 ns,1.03,0.03,0.0000,0 B,NA
9+
MessagePackBufferWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"10,616.3 ns",59.05 ns,55.24 ns,83.23,0.69,0.0000,0 B,NA
10+
OrleansWriterPooledArrayBufferWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"8,631.8 ns",63.93 ns,59.80 ns,67.67,0.63,0.0000,0 B,NA
11+
OrleansWriterArrayBufferWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"9,850.8 ns",68.35 ns,57.07 ns,77.22,0.67,0.0000,0 B,NA
12+
OrleansPipeWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"12,714.4 ns",112.24 ns,104.99 ns,99.67,1.03,0.0305,480 B,NA
13+
SystemTextJsonBufferWriter,DefaultJob,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 9.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"25,184.4 ns",199.50 ns,186.61 ns,197.43,1.92,2.4719,32312 B,NA

0 commit comments

Comments
 (0)