v3.0.9
- [opt] optimised code generation for user-defined dictionary types
- [opt] optimised source generator performance by caching collected types (experimental)
Performance Report
expand
BenchmarkDotNet v0.14.0, Ubuntu 24.04.1 LTS (Noble Numbat)
AMD EPYC 7763, 1 CPU, 4 logical and 2 physical cores
.NET SDK 9.0.102
[Host] : .NET 8.0.12 (8.0.1224.60305), X64 RyuJIT AVX2
Job-NUFONJ : .NET 9.0.1 (9.0.124.61010), X64 RyuJIT AVX2
Runtime=.NET 9.0 IterationCount=20 WarmupCount=1
Method | Mean | Error | StdDev | Ratio | RatioSD | Payload |
---|---|---|---|---|---|---|
MessagePackDeserializeSimpleClass | 2,063.2658 ns | 10.4621 ns | 11.1944 ns | 4.89 | 0.07 | - |
MemoryPackDeserializeSimpleClass | 616.0847 ns | 6.4575 ns | 7.4364 ns | 1.46 | 0.03 | - |
NinoDeserializeSimpleClass | 421.7805 ns | 5.1515 ns | 5.7258 ns | 1.00 | 0.02 | - |
MessagePackSerializeSimpleClass | 1,116.6598 ns | 8.7093 ns | 10.0296 ns | 4.74 | 0.06 | 700B |
MemoryPackSerializeSimpleClass | 598.0411 ns | 4.0852 ns | 4.5407 ns | 2.54 | 0.03 | 755B |
NinoSerializeSimpleClass | 235.3723 ns | 2.1701 ns | 2.4991 ns | 1.00 | 0.01 | 724B |
MessagePackDeserializeSimpleClasses | 198,152.8786 ns | 1,128.6945 ns | 1,207.6905 ns | 4.55 | 0.06 | - |
MemoryPackDeserializeSimpleClasses | 58,071.7230 ns | 715.0983 ns | 823.5082 ns | 1.33 | 0.02 | - |
NinoDeserializeSimpleClasses | 43,529.3830 ns | 475.7481 ns | 547.8722 ns | 1.00 | 0.02 | - |
MessagePackSerializeSimpleClasses | 110,117.0014 ns | 438.4471 ns | 487.3328 ns | 5.11 | 0.06 | 68.36KB |
MemoryPackSerializeSimpleClasses | 61,208.8866 ns | 502.5577 ns | 578.7462 ns | 2.84 | 0.04 | 73.73KB |
NinoSerializeSimpleClasses | 21,542.7051 ns | 229.7729 ns | 264.6069 ns | 1.00 | 0.02 | 70.71KB |
MessagePackDeserializeSimpleStruct | 76.1772 ns | 0.0966 ns | 0.1034 ns | 133.18 | 2.49 | - |
MemoryPackDeserializeSimpleStruct | 2.0421 ns | 0.0119 ns | 0.0132 ns | 3.57 | 0.07 | - |
NinoDeserializeSimpleStruct | 0.5722 ns | 0.0096 ns | 0.0111 ns | 1.00 | 0.03 | - |
MessagePackSerializeSimpleStruct | 76.0309 ns | 0.6313 ns | 0.7270 ns | 10.24 | 0.14 | 16B |
MemoryPackSerializeSimpleStruct | 16.9846 ns | 0.8778 ns | 1.0109 ns | 2.29 | 0.14 | 16B |
NinoSerializeSimpleStruct | 7.4284 ns | 0.0733 ns | 0.0815 ns | 1.00 | 0.02 | 16B |
MessagePackDeserializeSimpleStructs | 4,256.6025 ns | 21.3214 ns | 22.8137 ns | 52.55 | 0.84 | - |
MemoryPackDeserializeSimpleStructs | 102.2629 ns | 0.6995 ns | 0.7775 ns | 1.26 | 0.02 | - |
NinoDeserializeSimpleStructs | 81.0195 ns | 1.1451 ns | 1.2727 ns | 1.00 | 0.02 | - |
MessagePackSerializeSimpleStructs | 4,092.4152 ns | 17.1752 ns | 19.7790 ns | 49.17 | 2.08 | 1.57KB |
MemoryPackSerializeSimpleStructs | 90.9573 ns | 2.5875 ns | 2.9797 ns | 1.09 | 0.06 | 1.57KB |
NinoSerializeSimpleStructs | 83.3815 ns | 3.3063 ns | 3.6749 ns | 1.00 | 0.06 | 1.57KB |