Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 20 additions & 19 deletions benchmarks/Cobalt.100/FloatsReaderBench.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,32 @@
```

BenchmarkDotNet v0.15.8, Windows 11 (10.0.26200.8246/25H2/2025Update/HudsonValley2) (Hyper-V)
BenchmarkDotNet v0.16.0-preview.1, Windows 11 (10.0.26200.9457/25H2/2025Update/HudsonValley2) (Hyper-V)
Cobalt 100 3.40GHz, 1 CPU, 4 logical and 4 physical cores
.NET SDK 10.0.203
[Host] : .NET 10.0.7 (10.0.7, 10.0.726.21808), Arm64 RyuJIT armv8.0-a
.NET 10.0 : .NET 10.0.7 (10.0.7, 10.0.726.21808), Arm64 RyuJIT armv8.0-a
Memory: 15.99 GB Total, 12.01 GB Available
.NET SDK 11.0.100-rc.1.26425.128
[Host] : .NET 11.0.0 (11.0.0-rc.1.26425.128, 11.0.26.42628), Arm64 RyuJIT armv8.0-a
.NET 11.0 : .NET 11.0.0 (11.0.0-rc.1.26425.128, 11.0.26.42628), Arm64 RyuJIT armv8.0-a

Job=.NET 10.0 EnvironmentVariables=DOTNET_GCDynamicAdaptationMode=0 Runtime=.NET 10.0
Toolchain=net10.0 InvocationCount=Default IterationTime=350ms
Job=.NET 11.0 EnvironmentVariables=DOTNET_GCDynamicAdaptationMode=0 Runtime=.NET 11.0
Toolchain=net11.0 InvocationCount=Default IterationTime=350ms
MaxIterationCount=15 MinIterationCount=5 WarmupCount=6
Reader=String

```
| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio |
|---------- |------- |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:|
| Sep______ | Row | 25000 | 3.256 ms | 1.00 | 20 | 6240.7 | 130.2 | 1.17 KB | 1.00 |
| Sylvan___ | Row | 25000 | 23.476 ms | 7.21 | 20 | 865.6 | 939.0 | 12.12 KB | 10.35 |
| ReadLine_ | Row | 25000 | 16.670 ms | 5.12 | 20 | 1218.9 | 666.8 | 73489.62 KB | 62,711.14 |
| CsvHelper | Row | 25000 | 32.893 ms | 10.10 | 20 | 617.7 | 1315.7 | 20.02 KB | 17.08 |
| Sep______ | Row | 25000 | 3.427 ms | 1.00 | 20 | 5929.7 | 137.1 | 1.17 KB | 1.00 |
| Sylvan___ | Row | 25000 | 23.382 ms | 6.82 | 20 | 869.0 | 935.3 | 12.12 KB | 10.35 |
| ReadLine_ | Row | 25000 | 18.343 ms | 5.35 | 20 | 1107.7 | 733.7 | 73489.62 KB | 62,711.14 |
| CsvHelper | Row | 25000 | 33.257 ms | 9.71 | 20 | 611.0 | 1330.3 | 19.95 KB | 17.02 |
| | | | | | | | | | |
| Sep______ | Cols | 25000 | 4.660 ms | 1.00 | 20 | 4360.7 | 186.4 | 1.17 KB | 1.00 |
| Sylvan___ | Cols | 25000 | 26.591 ms | 5.71 | 20 | 764.2 | 1063.6 | 12.13 KB | 10.35 |
| ReadLine_ | Cols | 25000 | 17.372 ms | 3.73 | 20 | 1169.7 | 694.9 | 73489.62 KB | 62,711.14 |
| CsvHelper | Cols | 25000 | 36.720 ms | 7.88 | 20 | 553.4 | 1468.8 | 21340.16 KB | 18,210.27 |
| Sep______ | Cols | 25000 | 4.426 ms | 1.00 | 20 | 4591.5 | 177.0 | 1.17 KB | 1.00 |
| Sylvan___ | Cols | 25000 | 26.064 ms | 5.89 | 20 | 779.6 | 1042.6 | 12.13 KB | 10.35 |
| ReadLine_ | Cols | 25000 | 18.402 ms | 4.16 | 20 | 1104.2 | 736.1 | 73489.62 KB | 62,711.14 |
| CsvHelper | Cols | 25000 | 37.497 ms | 8.48 | 20 | 541.9 | 1499.9 | 21340.16 KB | 18,210.27 |
| | | | | | | | | | |
| Sep______ | Floats | 25000 | 31.543 ms | 1.00 | 20 | 644.2 | 1261.7 | 7.82 KB | 1.00 |
| Sep_MT___ | Floats | 25000 | 9.061 ms | 0.29 | 20 | 2242.6 | 362.4 | 69.05 KB | 8.83 |
| Sylvan___ | Floats | 25000 | 87.301 ms | 2.77 | 20 | 232.8 | 3492.0 | 18.24 KB | 2.33 |
| ReadLine_ | Floats | 25000 | 94.134 ms | 2.98 | 20 | 215.9 | 3765.4 | 73492.94 KB | 9,397.70 |
| CsvHelper | Floats | 25000 | 132.317 ms | 4.19 | 20 | 153.6 | 5292.7 | 22060.98 KB | 2,820.98 |
| Sep______ | Floats | 25000 | 31.296 ms | 1.00 | 20 | 649.3 | 1251.8 | 7.82 KB | 1.00 |
| Sep_MT___ | Floats | 25000 | 9.248 ms | 0.30 | 20 | 2197.2 | 369.9 | 74.99 KB | 9.59 |
| Sylvan___ | Floats | 25000 | 83.488 ms | 2.67 | 20 | 243.4 | 3339.5 | 18.24 KB | 2.33 |
| ReadLine_ | Floats | 25000 | 91.164 ms | 2.91 | 20 | 222.9 | 3646.6 | 73492.93 KB | 9,397.70 |
| CsvHelper | Floats | 25000 | 128.266 ms | 4.10 | 20 | 158.4 | 5130.6 | 22061.26 KB | 2,821.02 |
33 changes: 17 additions & 16 deletions benchmarks/Cobalt.100/PackageAssetsBench-GcServer.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,28 @@
```

BenchmarkDotNet v0.15.8, Windows 11 (10.0.26200.8246/25H2/2025Update/HudsonValley2) (Hyper-V)
BenchmarkDotNet v0.16.0-preview.1, Windows 11 (10.0.26200.9457/25H2/2025Update/HudsonValley2) (Hyper-V)
Cobalt 100 3.40GHz, 1 CPU, 4 logical and 4 physical cores
.NET SDK 10.0.203
[Host] : .NET 10.0.7 (10.0.7, 10.0.726.21808), Arm64 RyuJIT armv8.0-a
.NET 10.0 : .NET 10.0.7 (10.0.7, 10.0.726.21808), Arm64 RyuJIT armv8.0-a
Memory: 15.99 GB Total, 12.01 GB Available
.NET SDK 11.0.100-rc.1.26425.128
[Host] : .NET 11.0.0 (11.0.0-rc.1.26425.128, 11.0.26.42628), Arm64 RyuJIT armv8.0-a
.NET 11.0 : .NET 11.0.0 (11.0.0-rc.1.26425.128, 11.0.26.42628), Arm64 RyuJIT armv8.0-a

Job=.NET 10.0 EnvironmentVariables=DOTNET_GCDynamicAdaptationMode=0 Runtime=.NET 10.0
Server=True Toolchain=net10.0 InvocationCount=Default
Job=.NET 11.0 EnvironmentVariables=DOTNET_GCDynamicAdaptationMode=0 Runtime=.NET 11.0
Server=True Toolchain=net11.0 InvocationCount=Default
IterationTime=350ms MaxIterationCount=15 MinIterationCount=5
WarmupCount=6 Quotes=False Reader=String

```
| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio |
|---------- |------ |-------- |------------:|------:|----:|-------:|-------:|-----------:|------------:|
| Sep______ | Asset | 50000 | 32.30 ms | 1.00 | 29 | 903.3 | 646.1 | 13.48 MB | 1.00 |
| Sep_MT___ | Asset | 50000 | 11.63 ms | 0.36 | 29 | 2509.7 | 232.5 | 13.54 MB | 1.00 |
| Sylvan___ | Asset | 50000 | 54.58 ms | 1.69 | 29 | 534.6 | 1091.6 | 13.63 MB | 1.01 |
| ReadLine_ | Asset | 50000 | 48.26 ms | 1.49 | 29 | 604.6 | 965.3 | 99.74 MB | 7.40 |
| CsvHelper | Asset | 50000 | 98.61 ms | 3.05 | 29 | 295.9 | 1972.2 | 13.64 MB | 1.01 |
| Sep______ | Asset | 50000 | 33.20 ms | 1.00 | 29 | 879.0 | 663.9 | 13.48 MB | 1.00 |
| Sep_MT___ | Asset | 50000 | 11.55 ms | 0.35 | 29 | 2525.8 | 231.1 | 13.54 MB | 1.00 |
| Sylvan___ | Asset | 50000 | 54.22 ms | 1.64 | 29 | 538.2 | 1084.5 | 13.63 MB | 1.01 |
| ReadLine_ | Asset | 50000 | 46.69 ms | 1.41 | 29 | 625.0 | 933.8 | 99.74 MB | 7.40 |
| CsvHelper | Asset | 50000 | 102.02 ms | 3.08 | 29 | 286.0 | 2040.5 | 13.64 MB | 1.01 |
| | | | | | | | | | |
| Sep______ | Asset | 1000000 | 645.55 ms | 1.00 | 583 | 904.3 | 645.6 | 260.41 MB | 1.00 |
| Sep_MT___ | Asset | 1000000 | 199.49 ms | 0.31 | 583 | 2926.4 | 199.5 | 266.18 MB | 1.02 |
| Sylvan___ | Asset | 1000000 | 1,090.59 ms | 1.69 | 583 | 535.3 | 1090.6 | 260.57 MB | 1.00 |
| ReadLine_ | Asset | 1000000 | 1,001.06 ms | 1.55 | 583 | 583.2 | 1001.1 | 1991.04 MB | 7.65 |
| CsvHelper | Asset | 1000000 | 1,986.34 ms | 3.08 | 583 | 293.9 | 1986.3 | 260.58 MB | 1.00 |
| Sep______ | Asset | 1000000 | 672.56 ms | 1.00 | 583 | 868.0 | 672.6 | 260.41 MB | 1.00 |
| Sep_MT___ | Asset | 1000000 | 200.18 ms | 0.30 | 583 | 2916.3 | 200.2 | 268.61 MB | 1.03 |
| Sylvan___ | Asset | 1000000 | 1,090.37 ms | 1.62 | 583 | 535.4 | 1090.4 | 260.57 MB | 1.00 |
| ReadLine_ | Asset | 1000000 | 949.98 ms | 1.41 | 583 | 614.5 | 950.0 | 1991.04 MB | 7.65 |
| CsvHelper | Asset | 1000000 | 2,036.60 ms | 3.03 | 583 | 286.6 | 2036.6 | 260.58 MB | 1.00 |
27 changes: 14 additions & 13 deletions benchmarks/Cobalt.100/PackageAssetsBench-Parsers.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,24 @@
```

BenchmarkDotNet v0.15.8, Windows 11 (10.0.26200.8246/25H2/2025Update/HudsonValley2) (Hyper-V)
BenchmarkDotNet v0.16.0-preview.1, Windows 11 (10.0.26200.9457/25H2/2025Update/HudsonValley2) (Hyper-V)
Cobalt 100 3.40GHz, 1 CPU, 4 logical and 4 physical cores
.NET SDK 10.0.203
[Host] : .NET 10.0.7 (10.0.7, 10.0.726.21808), Arm64 RyuJIT armv8.0-a
.NET 10.0 : .NET 10.0.7 (10.0.7, 10.0.726.21808), Arm64 RyuJIT armv8.0-a
Memory: 15.99 GB Total, 12.01 GB Available
.NET SDK 11.0.100-rc.1.26425.128
[Host] : .NET 11.0.0 (11.0.0-rc.1.26425.128, 11.0.26.42628), Arm64 RyuJIT armv8.0-a
.NET 11.0 : .NET 11.0.0 (11.0.0-rc.1.26425.128, 11.0.26.42628), Arm64 RyuJIT armv8.0-a

Job=.NET 10.0 EnvironmentVariables=DOTNET_GCDynamicAdaptationMode=0 Runtime=.NET 10.0
Toolchain=net10.0 InvocationCount=Default IterationTime=350ms
Job=.NET 11.0 EnvironmentVariables=DOTNET_GCDynamicAdaptationMode=0 Runtime=.NET 11.0
Toolchain=net11.0 InvocationCount=Default IterationTime=350ms
MaxIterationCount=15 MinIterationCount=5 WarmupCount=6
Quotes=False Reader=String

```
| Method | Parser | Scope | Rows | Mean | MB | MB/s | ns/row | Allocated |
|------- |------------------------------------------------ |------ |------ |----------:|---:|-------:|-------:|----------:|
| Sep_ | SepParserAdvSimdNrwCmpOrBulkMoveMaskTzcnt | Row | 50000 | 4.871 ms | 29 | 5991.3 | 97.4 | 960 B |
| Sep_ | SepParserAdvSimdLoad4xNrwCmpOrBulkMoveMaskTzcnt | Row | 50000 | 5.600 ms | 29 | 5210.9 | 112.0 | 960 B |
| Sep_ | SepParserVector128NrwCmpExtMsbTzcnt | Row | 50000 | 7.648 ms | 29 | 3815.5 | 153.0 | 976 B |
| Sep_ | SepParserVector64NrwCmpExtMsbTzcnt | Row | 50000 | 9.255 ms | 29 | 3152.9 | 185.1 | 936 B |
| Sep_ | SepParserIndexOfAny | Row | 50000 | 19.458 ms | 29 | 1499.7 | 389.2 | 936 B |
| Sep_ | SepParserVector256NrwCmpExtMsbTzcnt | Row | 50000 | 21.359 ms | 29 | 1366.2 | 427.2 | 1056 B |
| Sep_ | SepParserVector512NrwCmpExtMsbTzcnt | Row | 50000 | 21.755 ms | 29 | 1341.3 | 435.1 | 1216 B |
| Sep_ | SepParserAdvSimdNrwCmpOrBulkMoveMaskTzcnt | Row | 50000 | 5.333 ms | 29 | 5472.2 | 106.7 | 960 B |
| Sep_ | SepParserAdvSimdLoad4xNrwCmpOrBulkMoveMaskTzcnt | Row | 50000 | 6.266 ms | 29 | 4657.3 | 125.3 | 960 B |
| Sep_ | SepParserVector128NrwCmpExtMsbTzcnt | Row | 50000 | 8.023 ms | 29 | 3637.1 | 160.5 | 976 B |
| Sep_ | SepParserVector64NrwCmpExtMsbTzcnt | Row | 50000 | 9.724 ms | 29 | 3001.1 | 194.5 | 936 B |
| Sep_ | SepParserVector256NrwCmpExtMsbTzcnt | Row | 50000 | 18.458 ms | 29 | 1581.0 | 369.2 | 1056 B |
| Sep_ | SepParserIndexOfAny | Row | 50000 | 18.466 ms | 29 | 1580.2 | 369.3 | 936 B |
| Sep_ | SepParserVector512NrwCmpExtMsbTzcnt | Row | 50000 | 18.658 ms | 29 | 1564.0 | 373.2 | 1216 B |
55 changes: 28 additions & 27 deletions benchmarks/Cobalt.100/PackageAssetsBench.md
Original file line number Diff line number Diff line change
@@ -1,40 +1,41 @@
```

BenchmarkDotNet v0.15.8, Windows 11 (10.0.26200.8246/25H2/2025Update/HudsonValley2) (Hyper-V)
BenchmarkDotNet v0.16.0-preview.1, Windows 11 (10.0.26200.9457/25H2/2025Update/HudsonValley2) (Hyper-V)
Cobalt 100 3.40GHz, 1 CPU, 4 logical and 4 physical cores
.NET SDK 10.0.203
[Host] : .NET 10.0.7 (10.0.7, 10.0.726.21808), Arm64 RyuJIT armv8.0-a
.NET 10.0 : .NET 10.0.7 (10.0.7, 10.0.726.21808), Arm64 RyuJIT armv8.0-a
Memory: 15.99 GB Total, 12.01 GB Available
.NET SDK 11.0.100-rc.1.26425.128
[Host] : .NET 11.0.0 (11.0.0-rc.1.26425.128, 11.0.26.42628), Arm64 RyuJIT armv8.0-a
.NET 11.0 : .NET 11.0.0 (11.0.0-rc.1.26425.128, 11.0.26.42628), Arm64 RyuJIT armv8.0-a

Job=.NET 10.0 EnvironmentVariables=DOTNET_GCDynamicAdaptationMode=0 Runtime=.NET 10.0
Toolchain=net10.0 InvocationCount=Default IterationTime=350ms
Job=.NET 11.0 EnvironmentVariables=DOTNET_GCDynamicAdaptationMode=0 Runtime=.NET 11.0
Toolchain=net11.0 InvocationCount=Default IterationTime=350ms
MaxIterationCount=15 MinIterationCount=5 WarmupCount=6
Quotes=False Reader=String

```
| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio |
|------------- |------ |-------- |-------------:|------:|----:|-------:|-------:|-------------:|------------:|
| Sep______ | Row | 50000 | 5.195 ms | 1.00 | 29 | 5616.8 | 103.9 | 960 B | 1.00 |
| Sep_Async | Row | 50000 | 5.715 ms | 1.10 | 29 | 5106.0 | 114.3 | 960 B | 1.00 |
| Sep_Unescape | Row | 50000 | 5.432 ms | 1.05 | 29 | 5372.4 | 108.6 | 960 B | 1.00 |
| Sylvan___ | Row | 50000 | 20.667 ms | 3.99 | 29 | 1412.0 | 413.3 | 7476 B | 7.79 |
| ReadLine_ | Row | 50000 | 20.739 ms | 4.00 | 29 | 1407.1 | 414.8 | 90734824 B | 94,515.44 |
| CsvHelper | Row | 50000 | 54.592 ms | 10.53 | 29 | 534.5 | 1091.8 | 20424 B | 21.27 |
| Sep______ | Row | 50000 | 5.256 ms | 1.00 | 29 | 5552.0 | 105.1 | 960 B | 1.00 |
| Sep_Async | Row | 50000 | 5.540 ms | 1.06 | 29 | 5267.2 | 110.8 | 960 B | 1.00 |
| Sep_Unescape | Row | 50000 | 5.223 ms | 1.00 | 29 | 5587.0 | 104.5 | 960 B | 1.00 |
| Sylvan___ | Row | 50000 | 19.664 ms | 3.76 | 29 | 1484.0 | 393.3 | 7470 B | 7.78 |
| ReadLine_ | Row | 50000 | 21.891 ms | 4.18 | 29 | 1333.0 | 437.8 | 90734824 B | 94,515.44 |
| CsvHelper | Row | 50000 | 56.933 ms | 10.88 | 29 | 512.6 | 1138.7 | 20424 B | 21.27 |
| | | | | | | | | | |
| Sep______ | Cols | 50000 | 6.963 ms | 1.00 | 29 | 4190.9 | 139.3 | 960 B | 1.00 |
| Sep_Unescape | Cols | 50000 | 7.811 ms | 1.12 | 29 | 3735.7 | 156.2 | 960 B | 1.00 |
| Sylvan___ | Cols | 50000 | 24.814 ms | 3.56 | 29 | 1176.0 | 496.3 | 7480 B | 7.79 |
| ReadLine_ | Cols | 50000 | 20.856 ms | 3.00 | 29 | 1399.2 | 417.1 | 90734827 B | 94,515.44 |
| CsvHelper | Cols | 50000 | 88.627 ms | 12.73 | 29 | 329.3 | 1772.5 | 456368 B | 475.38 |
| Sep______ | Cols | 50000 | 7.250 ms | 1.00 | 29 | 4024.8 | 145.0 | 960 B | 1.00 |
| Sep_Unescape | Cols | 50000 | 7.533 ms | 1.04 | 29 | 3873.9 | 150.7 | 960 B | 1.00 |
| Sylvan___ | Cols | 50000 | 23.561 ms | 3.25 | 29 | 1238.5 | 471.2 | 7478 B | 7.79 |
| ReadLine_ | Cols | 50000 | 22.138 ms | 3.05 | 29 | 1318.2 | 442.8 | 90734824 B | 94,515.44 |
| CsvHelper | Cols | 50000 | 87.863 ms | 12.12 | 29 | 332.1 | 1757.3 | 456296 B | 475.31 |
| | | | | | | | | | |
| Sep______ | Asset | 50000 | 31.201 ms | 1.00 | 29 | 935.3 | 624.0 | 14133000 B | 1.00 |
| Sep_MT___ | Asset | 50000 | 14.267 ms | 0.46 | 29 | 2045.3 | 285.3 | 14193488 B | 1.00 |
| Sylvan___ | Asset | 50000 | 56.442 ms | 1.81 | 29 | 517.0 | 1128.8 | 14295523 B | 1.01 |
| ReadLine_ | Asset | 50000 | 117.311 ms | 3.76 | 29 | 248.8 | 2346.2 | 104584230 B | 7.40 |
| CsvHelper | Asset | 50000 | 97.873 ms | 3.14 | 29 | 298.2 | 1957.5 | 14308394 B | 1.01 |
| Sep______ | Asset | 50000 | 47.535 ms | 1.00 | 29 | 613.9 | 950.7 | 14133817 B | 1.00 |
| Sep_MT___ | Asset | 50000 | 30.961 ms | 0.65 | 29 | 942.5 | 619.2 | 14250390 B | 1.01 |
| Sylvan___ | Asset | 50000 | 63.919 ms | 1.35 | 29 | 456.5 | 1278.4 | 14296236 B | 1.01 |
| ReadLine_ | Asset | 50000 | 113.735 ms | 2.40 | 29 | 256.6 | 2274.7 | 104585584 B | 7.40 |
| CsvHelper | Asset | 50000 | 107.577 ms | 2.27 | 29 | 271.3 | 2151.5 | 14305756 B | 1.01 |
| | | | | | | | | | |
| Sep______ | Asset | 1000000 | 775.808 ms | 1.00 | 583 | 752.5 | 775.8 | 273063600 B | 1.00 |
| Sep_MT___ | Asset | 1000000 | 367.674 ms | 0.47 | 583 | 1587.8 | 367.7 | 281452296 B | 1.03 |
| Sylvan___ | Asset | 1000000 | 1,237.548 ms | 1.60 | 583 | 471.7 | 1237.5 | 273225288 B | 1.00 |
| ReadLine_ | Asset | 1000000 | 2,741.695 ms | 3.53 | 583 | 212.9 | 2741.7 | 2087765224 B | 7.65 |
| CsvHelper | Asset | 1000000 | 2,130.007 ms | 2.75 | 583 | 274.1 | 2130.0 | 273247280 B | 1.00 |
| Sep______ | Asset | 1000000 | 898.594 ms | 1.00 | 583 | 649.7 | 898.6 | 273070128 B | 1.00 |
| Sep_MT___ | Asset | 1000000 | 438.261 ms | 0.49 | 583 | 1332.0 | 438.3 | 283016344 B | 1.04 |
| Sylvan___ | Asset | 1000000 | 1,299.266 ms | 1.45 | 583 | 449.3 | 1299.3 | 273228480 B | 1.00 |
| ReadLine_ | Asset | 1000000 | 2,218.690 ms | 2.47 | 583 | 263.1 | 2218.7 | 2087768344 B | 7.65 |
| CsvHelper | Asset | 1000000 | 2,212.577 ms | 2.46 | 583 | 263.8 | 2212.6 | 273238560 B | 1.00 |
Loading