Skip to content
Closed
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
32 changes: 32 additions & 0 deletions benchmarks/Neoverse-N2/FloatsReaderBench.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
```

BenchmarkDotNet v0.16.0-preview.1, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
Memory: 15.57 GB Total, 11.44 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 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.565 ms | 1.00 | 20 | 5685.7 | 142.6 | 1.17 KB | 1.00 |
| Sylvan___ | Row | 25000 | 23.033 ms | 6.48 | 20 | 880.1 | 921.3 | 12.12 KB | 10.34 |
| ReadLine_ | Row | 25000 | 19.192 ms | 5.40 | 20 | 1056.3 | 767.7 | 73489.62 KB | 62,711.14 |
| CsvHelper | Row | 25000 | 34.141 ms | 9.60 | 20 | 593.8 | 1365.6 | 19.95 KB | 17.02 |
| | | | | | | | | | |
| Sep______ | Cols | 25000 | 4.920 ms | 1.00 | 20 | 4120.3 | 196.8 | 1.17 KB | 1.00 |
| Sylvan___ | Cols | 25000 | 26.062 ms | 5.30 | 20 | 777.8 | 1042.5 | 12.13 KB | 10.35 |
| ReadLine_ | Cols | 25000 | 19.374 ms | 3.94 | 20 | 1046.4 | 775.0 | 73489.62 KB | 62,711.14 |
| CsvHelper | Cols | 25000 | 35.932 ms | 7.30 | 20 | 564.2 | 1437.3 | 21340.16 KB | 18,210.27 |
| | | | | | | | | | |
| Sep______ | Floats | 25000 | 31.534 ms | 1.00 | 20 | 642.9 | 1261.4 | 7.82 KB | 1.00 |
| Sep_MT___ | Floats | 25000 | 9.283 ms | 0.29 | 20 | 2183.9 | 371.3 | 77.89 KB | 9.96 |
| Sylvan___ | Floats | 25000 | 83.616 ms | 2.65 | 20 | 242.4 | 3344.6 | 18.24 KB | 2.33 |
| ReadLine_ | Floats | 25000 | 96.363 ms | 3.06 | 20 | 210.4 | 3854.5 | 73492.93 KB | 9,397.70 |
| CsvHelper | Floats | 25000 | 136.319 ms | 4.32 | 20 | 148.7 | 5452.8 | 22061.3 KB | 2,821.03 |
28 changes: 28 additions & 0 deletions benchmarks/Neoverse-N2/PackageAssetsBench-GcServer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
```

BenchmarkDotNet v0.16.0-preview.1, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
Memory: 15.57 GB Total, 11.44 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 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.79 ms | 1.00 | 29 | 887.0 | 655.8 | 13.48 MB | 1.00 |
| Sep_MT___ | Asset | 50000 | 12.16 ms | 0.37 | 29 | 2391.7 | 243.2 | 13.56 MB | 1.01 |
| Sylvan___ | Asset | 50000 | 53.91 ms | 1.64 | 29 | 539.5 | 1078.2 | 13.63 MB | 1.01 |
| ReadLine_ | Asset | 50000 | 51.92 ms | 1.58 | 29 | 560.2 | 1038.4 | 99.74 MB | 7.40 |
| CsvHelper | Asset | 50000 | 100.22 ms | 3.06 | 29 | 290.2 | 2004.5 | 13.64 MB | 1.01 |
| | | | | | | | | | |
| Sep______ | Asset | 1000000 | 644.08 ms | 1.00 | 581 | 903.4 | 644.1 | 260.41 MB | 1.00 |
| Sep_MT___ | Asset | 1000000 | 217.49 ms | 0.34 | 581 | 2675.4 | 217.5 | 267.86 MB | 1.03 |
| Sylvan___ | Asset | 1000000 | 1,060.21 ms | 1.65 | 581 | 548.8 | 1060.2 | 260.57 MB | 1.00 |
| ReadLine_ | Asset | 1000000 | 1,072.36 ms | 1.66 | 581 | 542.6 | 1072.4 | 1991.04 MB | 7.65 |
| CsvHelper | Asset | 1000000 | 1,995.68 ms | 3.10 | 581 | 291.6 | 1995.7 | 260.58 MB | 1.00 |
24 changes: 24 additions & 0 deletions benchmarks/Neoverse-N2/PackageAssetsBench-Parsers.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
```

BenchmarkDotNet v0.16.0-preview.1, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
Memory: 15.57 GB Total, 11.44 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 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 | 5.677 ms | 29 | 5123.2 | 113.5 | 960 B |
| Sep_ | SepParserAdvSimdLoad4xNrwCmpOrBulkMoveMaskTzcnt | Row | 50000 | 6.474 ms | 29 | 4492.7 | 129.5 | 960 B |
| Sep_ | SepParserVector128NrwCmpExtMsbTzcnt | Row | 50000 | 8.493 ms | 29 | 3424.6 | 169.9 | 976 B |
| Sep_ | SepParserVector64NrwCmpExtMsbTzcnt | Row | 50000 | 9.960 ms | 29 | 2920.1 | 199.2 | 936 B |
| Sep_ | SepParserIndexOfAny | Row | 50000 | 18.581 ms | 29 | 1565.4 | 371.6 | 936 B |
| Sep_ | SepParserVector512NrwCmpExtMsbTzcnt | Row | 50000 | 18.678 ms | 29 | 1557.2 | 373.6 | 1216 B |
| Sep_ | SepParserVector256NrwCmpExtMsbTzcnt | Row | 50000 | 18.689 ms | 29 | 1556.3 | 373.8 | 1056 B |
41 changes: 41 additions & 0 deletions benchmarks/Neoverse-N2/PackageAssetsBench.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
```

BenchmarkDotNet v0.16.0-preview.1, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
Memory: 15.57 GB Total, 11.44 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 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 | 4.683 ms | 1.00 | 29 | 6210.5 | 93.7 | 960 B | 1.00 |
| Sep_Async | Row | 50000 | 4.885 ms | 1.04 | 29 | 5953.6 | 97.7 | 960 B | 1.00 |
| Sep_Unescape | Row | 50000 | 4.651 ms | 0.99 | 29 | 6254.3 | 93.0 | 960 B | 1.00 |
| Sylvan___ | Row | 50000 | 19.601 ms | 4.19 | 29 | 1483.9 | 392.0 | 7470 B | 7.78 |
| ReadLine_ | Row | 50000 | 21.947 ms | 4.69 | 29 | 1325.3 | 438.9 | 90734824 B | 94,515.44 |
| CsvHelper | Row | 50000 | 56.225 ms | 12.01 | 29 | 517.3 | 1124.5 | 20424 B | 21.27 |
| | | | | | | | | | |
| Sep______ | Cols | 50000 | 6.119 ms | 1.00 | 29 | 4753.2 | 122.4 | 960 B | 1.00 |
| Sep_Unescape | Cols | 50000 | 6.859 ms | 1.12 | 29 | 4240.8 | 137.2 | 960 B | 1.00 |
| Sylvan___ | Cols | 50000 | 22.465 ms | 3.67 | 29 | 1294.7 | 449.3 | 7477 B | 7.79 |
| ReadLine_ | Cols | 50000 | 22.459 ms | 3.67 | 29 | 1295.0 | 449.2 | 90734824 B | 94,515.44 |
| CsvHelper | Cols | 50000 | 86.763 ms | 14.18 | 29 | 335.2 | 1735.3 | 456296 B | 475.31 |
| | | | | | | | | | |
| Sep______ | Asset | 50000 | 35.128 ms | 1.00 | 29 | 828.0 | 702.6 | 14132928 B | 1.00 |
| Sep_MT___ | Asset | 50000 | 18.971 ms | 0.54 | 29 | 1533.2 | 379.4 | 14205842 B | 1.01 |
| Sylvan___ | Asset | 50000 | 57.145 ms | 1.63 | 29 | 509.0 | 1142.9 | 14295531 B | 1.01 |
| ReadLine_ | Asset | 50000 | 128.714 ms | 3.66 | 29 | 226.0 | 2574.3 | 104584256 B | 7.40 |
| CsvHelper | Asset | 50000 | 102.671 ms | 2.92 | 29 | 283.3 | 2053.4 | 14305232 B | 1.01 |
| | | | | | | | | | |
| Sep______ | Asset | 1000000 | 784.447 ms | 1.00 | 581 | 741.8 | 784.4 | 273063928 B | 1.00 |
| Sep_MT___ | Asset | 1000000 | 394.643 ms | 0.50 | 581 | 1474.4 | 394.6 | 283205560 B | 1.04 |
| Sylvan___ | Asset | 1000000 | 1,202.935 ms | 1.53 | 581 | 483.7 | 1202.9 | 273225400 B | 1.00 |
| ReadLine_ | Asset | 1000000 | 2,886.913 ms | 3.68 | 581 | 201.6 | 2886.9 | 2087766056 B | 7.65 |
| CsvHelper | Asset | 1000000 | 2,158.069 ms | 2.75 | 581 | 269.6 | 2158.1 | 273235184 B | 1.00 |
28 changes: 28 additions & 0 deletions benchmarks/Neoverse-N2/PackageAssetsBenchQuotes-GcServer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
```

BenchmarkDotNet v0.16.0-preview.1, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
Memory: 15.57 GB Total, 11.44 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 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=True Reader=String

```
| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio |
|---------- |------ |-------- |------------:|------:|----:|-------:|-------:|-----------:|------------:|
| Sep______ | Asset | 50000 | 37.84 ms | 1.00 | 33 | 879.6 | 756.7 | 13.48 MB | 1.00 |
| Sep_MT___ | Asset | 50000 | 15.45 ms | 0.41 | 33 | 2154.1 | 309.0 | 13.54 MB | 1.00 |
| Sylvan___ | Asset | 50000 | 56.72 ms | 1.50 | 33 | 586.8 | 1134.3 | 13.63 MB | 1.01 |
| ReadLine_ | Asset | 50000 | 60.39 ms | 1.60 | 33 | 551.1 | 1207.7 | 119.44 MB | 8.86 |
| CsvHelper | Asset | 50000 | 106.88 ms | 2.82 | 33 | 311.4 | 2137.5 | 13.64 MB | 1.01 |
| | | | | | | | | | |
| Sep______ | Asset | 1000000 | 748.89 ms | 1.00 | 665 | 889.1 | 748.9 | 260.41 MB | 1.00 |
| Sep_MT___ | Asset | 1000000 | 246.78 ms | 0.33 | 665 | 2697.9 | 246.8 | 262.68 MB | 1.01 |
| Sylvan___ | Asset | 1000000 | 1,111.32 ms | 1.48 | 665 | 599.1 | 1111.3 | 260.57 MB | 1.00 |
| ReadLine_ | Asset | 1000000 | 1,265.39 ms | 1.69 | 665 | 526.2 | 1265.4 | 2385.07 MB | 9.16 |
| CsvHelper | Asset | 1000000 | 2,119.59 ms | 2.83 | 665 | 314.1 | 2119.6 | 260.58 MB | 1.00 |
41 changes: 41 additions & 0 deletions benchmarks/Neoverse-N2/PackageAssetsBenchQuotes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
```

BenchmarkDotNet v0.16.0-preview.1, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
Memory: 15.57 GB Total, 11.44 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 11.0 EnvironmentVariables=DOTNET_GCDynamicAdaptationMode=0 Runtime=.NET 11.0
Toolchain=net11.0 InvocationCount=Default IterationTime=350ms
MaxIterationCount=15 MinIterationCount=5 WarmupCount=6
Quotes=True Reader=String

```
| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio |
|------------- |------ |-------- |------------:|------:|----:|-------:|-------:|-------------:|------------:|
| Sep______ | Row | 50000 | 10.14 ms | 1.00 | 33 | 3280.8 | 202.9 | 960 B | 1.00 |
| Sep_Async | Row | 50000 | 10.19 ms | 1.00 | 33 | 3265.4 | 203.8 | 960 B | 1.00 |
| Sep_Unescape | Row | 50000 | 10.52 ms | 1.04 | 33 | 3165.0 | 210.3 | 960 B | 1.00 |
| Sylvan___ | Row | 50000 | 21.64 ms | 2.13 | 33 | 1538.1 | 432.8 | 7477 B | 7.79 |
| ReadLine_ | Row | 50000 | 27.23 ms | 2.68 | 33 | 1222.1 | 544.7 | 111389416 B | 116,030.64 |
| CsvHelper | Row | 50000 | 64.74 ms | 6.38 | 33 | 514.1 | 1294.7 | 20424 B | 21.27 |
| | | | | | | | | | |
| Sep______ | Cols | 50000 | 11.57 ms | 1.00 | 33 | 2875.5 | 231.5 | 960 B | 1.00 |
| Sep_Unescape | Cols | 50000 | 12.85 ms | 1.11 | 33 | 2589.3 | 257.1 | 960 B | 1.00 |
| Sylvan___ | Cols | 50000 | 25.68 ms | 2.22 | 33 | 1296.1 | 513.6 | 7479 B | 7.79 |
| ReadLine_ | Cols | 50000 | 27.44 ms | 2.37 | 33 | 1213.0 | 548.8 | 111389416 B | 116,030.64 |
| CsvHelper | Cols | 50000 | 94.24 ms | 8.14 | 33 | 353.2 | 1884.7 | 456296 B | 475.31 |
| | | | | | | | | | |
| Sep______ | Asset | 50000 | 39.94 ms | 1.00 | 33 | 833.3 | 798.8 | 14132928 B | 1.00 |
| Sep_MT___ | Asset | 50000 | 21.67 ms | 0.54 | 33 | 1536.0 | 433.4 | 14217741 B | 1.01 |
| Sylvan___ | Asset | 50000 | 58.59 ms | 1.47 | 33 | 568.0 | 1171.8 | 14295507 B | 1.01 |
| ReadLine_ | Asset | 50000 | 128.46 ms | 3.22 | 33 | 259.1 | 2569.2 | 125238840 B | 8.86 |
| CsvHelper | Asset | 50000 | 106.38 ms | 2.66 | 33 | 312.9 | 2127.6 | 14305232 B | 1.01 |
| | | | | | | | | | |
| Sep______ | Asset | 1000000 | 879.89 ms | 1.00 | 665 | 756.7 | 879.9 | 273063736 B | 1.00 |
| Sep_MT___ | Asset | 1000000 | 382.07 ms | 0.43 | 665 | 1742.6 | 382.1 | 276224424 B | 1.01 |
| Sylvan___ | Asset | 1000000 | 1,237.80 ms | 1.41 | 665 | 537.9 | 1237.8 | 273225488 B | 1.00 |
| ReadLine_ | Asset | 1000000 | 3,343.44 ms | 3.80 | 665 | 199.1 | 3343.4 | 2500933624 B | 9.16 |
| CsvHelper | Asset | 1000000 | 2,272.54 ms | 2.58 | 665 | 293.0 | 2272.5 | 273235096 B | 1.00 |
23 changes: 23 additions & 0 deletions benchmarks/Neoverse-N2/PackageAssetsBenchSpacesQuotes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
```

BenchmarkDotNet v0.16.0-preview.1, Linux Ubuntu 24.04.5 LTS (Noble Numbat)
Neoverse-N2, 4 physical cores
Memory: 15.57 GB Total, 11.44 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 11.0 EnvironmentVariables=DOTNET_GCDynamicAdaptationMode=0 Runtime=.NET 11.0
Toolchain=net11.0 InvocationCount=Default IterationTime=350ms
MaxIterationCount=15 MinIterationCount=5 WarmupCount=6
Quotes=True Reader=String

```
| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio |
|--------------------------- |------ |------ |----------:|------:|---:|-------:|-------:|----------:|------------:|
| Sep_ | Cols | 50000 | 13.33 ms | 1.00 | 41 | 3125.5 | 266.7 | 960 B | 1.00 |
| Sep_Trim | Cols | 50000 | 17.63 ms | 1.32 | 41 | 2363.4 | 352.7 | 960 B | 1.00 |
| Sep_TrimUnescape | Cols | 50000 | 18.40 ms | 1.38 | 41 | 2264.8 | 368.0 | 960 B | 1.00 |
| Sep_TrimUnescapeTrim | Cols | 50000 | 20.15 ms | 1.51 | 41 | 2068.3 | 403.0 | 960 B | 1.00 |
| CsvHelper_TrimUnescape | Cols | 50000 | 118.83 ms | 8.91 | 41 | 350.7 | 2376.6 | 462096 B | 481.35 |
| CsvHelper_TrimUnescapeTrim | Cols | 50000 | 115.18 ms | 8.64 | 41 | 361.8 | 2303.6 | 456296 B | 475.31 |
1 change: 1 addition & 0 deletions benchmarks/Neoverse-N2/Versions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Sep 0.18.0.0, Sylvan 1.4.4.0, CsvHelper 33.1.0.26