From 6af3eb2349aadb4a3c1bf9bd1a4ad94b19f75412 Mon Sep 17 00:00:00 2001 From: nietras Date: Fri, 17 Nov 2023 13:40:51 +0100 Subject: [PATCH] Update benchmarks (.NET 8 only) (#64) Bump to BenchmarkDotNet 0.13.11-nightly.20231116.103 to get AVX-512 info. --- README.md | 490 +++++++----------- .../AMD.Ryzen.9.5950X/FloatsReaderBench.md | 56 +- .../AMD.Ryzen.9.5950X/PackageAssetsBench.md | 63 +-- .../PackageAssetsBenchQuotes.md | 63 +-- .../FloatsReaderBench.md | 58 +-- .../PackageAssetsBench.md | 61 +-- .../PackageAssetsBenchQuotes.md | 61 +-- .../Versions.txt | 2 +- benchmarks/Neoverse.N1/FloatsReaderBench.md | 58 +-- benchmarks/Neoverse.N1/PackageAssetsBench.md | 61 +-- .../Neoverse.N1/PackageAssetsBenchQuotes.md | 61 +-- benchmarks/Neoverse.N1/Versions.txt | 2 +- nuget.config | 3 +- src/Sep.Benchmarks/Sep.Benchmarks.csproj | 4 +- .../Sep.ComparisonBenchmarks.csproj | 4 +- 15 files changed, 425 insertions(+), 622 deletions(-) diff --git a/README.md b/README.md index 271741eb..27e7f3db 100644 --- a/README.md +++ b/README.md @@ -708,7 +708,6 @@ than that. Or how many *times* more bytes are allocated in `Alloc Ratio`. ### Runtime and Platforms The following runtime is used for benchmarking: -* `NET 7.0.X` * `NET 8.0.X` The following platforms are used for benchmarking: @@ -820,6 +819,14 @@ without any overlap to other columns. This also allows one to define per column specific handling of `ToString` behavior. Whether to pool or not. Or even to use a statically defined pool. +Sep supports unescaping via an option, see [SepReaderOptions](#sepreaderoptions) +and [Unescaping](#unescaping). Therefore, Sep has two methods being tested. The +default `Sep` without unescaping and `Sep_Unescape` where unescaping is enabled. +Note that only if there are quotes will there be any unescaping, but to support +unescape one has to track extra state during parsing which means there is a +slight cost no matter what, most notably for the `Cols` scope. Sep is still the +fastest of all (by far in many cases). + ##### PackageAssets Benchmark Results The results below show Sep is now **the fastest .NET CSV Parser** (for this benchmark on these platforms and machines 😀). While for pure parsing allocating @@ -833,102 +840,69 @@ not for a decently fast csv-parser. ###### AMD.Ryzen.9.5950X - PackageAssets Benchmark Results (Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0) -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|------------ |--------- |------ |------ |-----------:|------:|---:|--------:|-------:|------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 2.537 ms | 1.00 | 29 | 11503.7 | 50.7 | 935 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Row | 50000 | 2.569 ms | 1.01 | 29 | 11360.9 | 51.4 | 935 B | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 3.197 ms | 1.26 | 29 | 9128.8 | 63.9 | 7383 B | 7.90 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 13.549 ms | 5.27 | 29 | 2153.8 | 271.0 | 90734847 B | 97,042.62 | -| CsvHelper | .NET 7.0 | Row | 50000 | 61.317 ms | 24.28 | 29 | 475.9 | 1226.3 | 21150 B | 22.62 | -| Sep______ | .NET 8.0 | Row | 50000 | 2.446 ms | 0.96 | 29 | 11931.8 | 48.9 | 934 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Row | 50000 | 2.521 ms | 0.99 | 29 | 11576.6 | 50.4 | 934 B | 1.00 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 2.965 ms | 1.17 | 29 | 9842.7 | 59.3 | 7382 B | 7.90 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 12.622 ms | 5.00 | 29 | 2311.9 | 252.4 | 90734841 B | 97,042.61 | -| CsvHelper | .NET 8.0 | Row | 50000 | 43.642 ms | 17.19 | 29 | 668.6 | 872.8 | 21081 B | 22.55 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 3.705 ms | 1.00 | 29 | 7875.9 | 74.1 | 938 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Cols | 50000 | 4.391 ms | 1.19 | 29 | 6645.3 | 87.8 | 941 B | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 5.598 ms | 1.51 | 29 | 5213.0 | 112.0 | 7389 B | 7.88 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 13.541 ms | 3.61 | 29 | 2155.1 | 270.8 | 90734847 B | 96,732.25 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 77.553 ms | 20.93 | 29 | 376.3 | 1551.1 | 457022 B | 487.23 | -| Sep______ | .NET 8.0 | Cols | 50000 | 3.628 ms | 0.98 | 29 | 8043.9 | 72.6 | 937 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Cols | 50000 | 3.984 ms | 1.08 | 29 | 7325.4 | 79.7 | 938 B | 1.00 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 5.157 ms | 1.39 | 29 | 5658.3 | 103.1 | 7386 B | 7.87 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 13.149 ms | 3.54 | 29 | 2219.3 | 263.0 | 90734841 B | 96,732.24 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 70.761 ms | 19.10 | 29 | 412.4 | 1415.2 | 457060 B | 487.27 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 34.415 ms | 1.00 | 29 | 847.9 | 688.3 | 14130898 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Asset | 50000 | 34.273 ms | 1.00 | 29 | 851.4 | 685.5 | 14130898 B | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 42.214 ms | 1.22 | 29 | 691.3 | 844.3 | 14296698 B | 1.01 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 113.604 ms | 3.29 | 29 | 256.9 | 2272.1 | 104584612 B | 7.40 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 103.655 ms | 3.02 | 29 | 281.5 | 2073.1 | 14307286 B | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 30.453 ms | 0.88 | 29 | 958.3 | 609.1 | 14130846 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Asset | 50000 | 30.480 ms | 0.89 | 29 | 957.4 | 609.6 | 14130886 B | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 38.244 ms | 1.11 | 29 | 763.0 | 764.9 | 14296692 B | 1.01 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 105.568 ms | 2.96 | 29 | 276.4 | 2111.4 | 104584668 B | 7.40 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 85.633 ms | 2.49 | 29 | 340.8 | 1712.7 | 14306936 B | 1.01 | - -###### Intel.Xeon.Silver.4316.2.30GHz - PackageAssets Benchmark Results (Sep 0.2.3, Sylvan 1.3.2.0, CsvHelper 30.0.1.0) - -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------ |------ |-----------:|------:|---:|-------:|-------:|-------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 5.948 ms | 1.00 | 29 | 4905.8 | 119.0 | 1.14 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 6.733 ms | 1.13 | 29 | 4334.0 | 134.7 | 7.18 KB | 6.29 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 27.988 ms | 4.70 | 29 | 1042.6 | 559.8 | 88608.29 KB | 77,617.53 | -| CsvHelper | .NET 7.0 | Row | 50000 | 114.902 ms | 19.31 | 29 | 254.0 | 2298.0 | 20.65 KB | 18.09 | -| Sep______ | .NET 8.0 | Row | 50000 | 5.440 ms | 0.91 | 29 | 5363.8 | 108.8 | 1.29 KB | 1.13 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 6.383 ms | 1.07 | 29 | 4571.5 | 127.7 | 7.18 KB | 6.29 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 26.933 ms | 4.53 | 29 | 1083.5 | 538.7 | 88608.26 KB | 77,617.50 | -| CsvHelper | .NET 8.0 | Row | 50000 | 90.332 ms | 15.18 | 29 | 323.0 | 1806.6 | 20.69 KB | 18.12 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 7.401 ms | 1.00 | 29 | 3942.7 | 148.0 | 1.15 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 11.545 ms | 1.56 | 29 | 2527.5 | 230.9 | 7.19 KB | 6.28 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 28.892 ms | 3.90 | 29 | 1010.0 | 577.8 | 88608.29 KB | 77,352.84 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 157.705 ms | 21.31 | 29 | 185.0 | 3154.1 | 446.5 KB | 389.78 | -| Sep______ | .NET 8.0 | Cols | 50000 | 6.683 ms | 0.90 | 29 | 4366.8 | 133.7 | 1.3 KB | 1.13 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 10.417 ms | 1.41 | 29 | 2801.2 | 208.3 | 7.19 KB | 6.28 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 27.292 ms | 3.69 | 29 | 1069.2 | 545.8 | 88608.26 KB | 77,352.82 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 141.559 ms | 19.11 | 29 | 206.1 | 2831.2 | 446.45 KB | 389.74 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 58.708 ms | 1.00 | 29 | 497.1 | 1174.2 | 13799.65 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 76.436 ms | 1.31 | 29 | 381.8 | 1528.7 | 14025.71 KB | 1.02 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 174.574 ms | 3.00 | 29 | 167.2 | 3491.5 | 102133.35 KB | 7.40 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 172.747 ms | 2.95 | 29 | 168.9 | 3454.9 | 13970.85 KB | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 55.672 ms | 0.95 | 29 | 524.2 | 1113.4 | 13800.53 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 71.428 ms | 1.22 | 29 | 408.5 | 1428.6 | 14026.38 KB | 1.02 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 162.203 ms | 2.76 | 29 | 179.9 | 3244.1 | 102133.69 KB | 7.40 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 161.805 ms | 2.76 | 29 | 180.3 | 3236.1 | 13970.8 KB | 1.01 | - -###### Neoverse.N1 - PackageAssets Benchmark Results (Sep 0.2.3, Sylvan 1.3.2.0, CsvHelper 30.0.1.0) - -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------ |------ |----------:|------:|---:|-------:|-------:|-------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 12.15 ms | 1.00 | 29 | 2393.9 | 243.0 | 1.11 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 34.31 ms | 2.82 | 29 | 847.7 | 686.2 | 6.25 KB | 5.64 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 40.99 ms | 3.37 | 29 | 709.6 | 819.8 | 88608.34 KB | 79,942.68 | -| CsvHelper | .NET 7.0 | Row | 50000 | 107.97 ms | 8.89 | 29 | 269.4 | 2159.4 | 20.74 KB | 18.71 | -| Sep______ | .NET 8.0 | Row | 50000 | 12.01 ms | 0.99 | 29 | 2421.2 | 240.3 | 1.1 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 30.14 ms | 2.48 | 29 | 965.0 | 602.8 | 6.09 KB | 5.50 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 39.05 ms | 3.21 | 29 | 744.9 | 780.9 | 88608.41 KB | 79,942.74 | -| CsvHelper | .NET 8.0 | Row | 50000 | 91.57 ms | 7.54 | 29 | 317.6 | 1831.5 | 20.77 KB | 18.74 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 14.52 ms | 1.00 | 29 | 2002.8 | 290.5 | 1.12 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 40.36 ms | 2.78 | 29 | 720.6 | 807.2 | 6.25 KB | 5.57 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 41.92 ms | 2.89 | 29 | 693.8 | 838.5 | 88608.36 KB | 78,899.97 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 156.03 ms | 10.74 | 29 | 186.4 | 3120.6 | 446.66 KB | 397.72 | -| Sep______ | .NET 8.0 | Cols | 50000 | 14.24 ms | 0.98 | 29 | 2042.8 | 284.8 | 1.11 KB | 0.99 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 35.23 ms | 2.43 | 29 | 825.6 | 704.6 | 6.11 KB | 5.44 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 37.10 ms | 2.55 | 29 | 784.0 | 742.0 | 88608.32 KB | 78,899.93 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 138.20 ms | 9.52 | 29 | 210.5 | 2763.9 | 446.61 KB | 397.68 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 70.16 ms | 1.00 | 29 | 414.5 | 1403.3 | 13800.75 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 107.28 ms | 1.53 | 29 | 271.1 | 2145.6 | 14025.09 KB | 1.02 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 159.87 ms | 2.27 | 29 | 181.9 | 3197.4 | 102134.11 KB | 7.40 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 189.44 ms | 2.69 | 29 | 153.5 | 3788.8 | 13973.66 KB | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 67.72 ms | 0.96 | 29 | 429.5 | 1354.3 | 13800.73 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 100.09 ms | 1.43 | 29 | 290.6 | 2001.8 | 14024.23 KB | 1.02 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 144.19 ms | 2.06 | 29 | 201.7 | 2883.8 | 102134.74 KB | 7.40 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 170.81 ms | 2.43 | 29 | 170.3 | 3416.1 | 13971.32 KB | 1.01 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |-----------:|------:|---:|--------:|-------:|------------:|------------:| +| Sep______ | Row | 50000 | 2.409 ms | 1.00 | 29 | 12111.6 | 48.2 | 933 B | 1.00 | +| Sep_Unescape | Row | 50000 | 2.499 ms | 1.04 | 29 | 11675.7 | 50.0 | 934 B | 1.00 | +| Sylvan___ | Row | 50000 | 2.913 ms | 1.21 | 29 | 10016.5 | 58.3 | 7381 B | 7.91 | +| ReadLine_ | Row | 50000 | 12.198 ms | 5.04 | 29 | 2392.3 | 244.0 | 90734838 B | 97,250.63 | +| CsvHelper | Row | 50000 | 42.460 ms | 17.63 | 29 | 687.3 | 849.2 | 21074 B | 22.59 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 3.480 ms | 1.00 | 29 | 8385.3 | 69.6 | 935 B | 1.00 | +| Sep_Unescape | Cols | 50000 | 3.959 ms | 1.14 | 29 | 7370.9 | 79.2 | 936 B | 1.00 | +| Sylvan___ | Cols | 50000 | 5.210 ms | 1.50 | 29 | 5600.5 | 104.2 | 7385 B | 7.90 | +| ReadLine_ | Cols | 50000 | 14.275 ms | 3.60 | 29 | 2044.3 | 285.5 | 90734826 B | 97,042.59 | +| CsvHelper | Cols | 50000 | 69.058 ms | 19.86 | 29 | 422.6 | 1381.2 | 457060 B | 488.83 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 35.052 ms | 1.00 | 29 | 832.5 | 701.0 | 14131121 B | 1.00 | +| Sep_Unescape | Asset | 50000 | 34.813 ms | 1.00 | 29 | 838.2 | 696.3 | 14130768 B | 1.00 | +| Sylvan___ | Asset | 50000 | 38.875 ms | 1.12 | 29 | 750.6 | 777.5 | 14297351 B | 1.01 | +| ReadLine_ | Asset | 50000 | 127.866 ms | 3.76 | 29 | 228.2 | 2557.3 | 104584604 B | 7.40 | +| CsvHelper | Asset | 50000 | 86.415 ms | 2.47 | 29 | 337.7 | 1728.3 | 14306352 B | 1.01 | + +###### Intel.Xeon.Silver.4316.2.30GHz - PackageAssets Benchmark Results (Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0) + +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 50000 | 5.253 ms | 1.00 | 29 | 5554.8 | 105.1 | 1.07 KB | 1.00 | +| Sep_Unescape | Row | 50000 | 5.287 ms | 1.01 | 29 | 5519.5 | 105.7 | 1.07 KB | 1.00 | +| Sylvan___ | Row | 50000 | 5.925 ms | 1.13 | 29 | 4925.4 | 118.5 | 7.21 KB | 6.72 | +| ReadLine_ | Row | 50000 | 25.585 ms | 4.87 | 29 | 1140.5 | 511.7 | 88608.26 KB | 82,561.29 | +| CsvHelper | Row | 50000 | 89.448 ms | 17.02 | 29 | 326.2 | 1789.0 | 20.69 KB | 19.28 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 7.123 ms | 1.00 | 29 | 4097.0 | 142.5 | 1.08 KB | 1.00 | +| Sep_Unescape | Cols | 50000 | 7.953 ms | 1.12 | 29 | 3669.4 | 159.1 | 1.08 KB | 1.00 | +| Sylvan___ | Cols | 50000 | 10.047 ms | 1.41 | 29 | 2904.6 | 200.9 | 7.22 KB | 6.71 | +| ReadLine_ | Cols | 50000 | 25.720 ms | 3.61 | 29 | 1134.6 | 514.4 | 88608.26 KB | 82,261.89 | +| CsvHelper | Cols | 50000 | 138.163 ms | 19.40 | 29 | 211.2 | 2763.3 | 446.28 KB | 414.31 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 53.365 ms | 1.00 | 29 | 546.8 | 1067.3 | 13799.86 KB | 1.00 | +| Sep_Unescape | Asset | 50000 | 53.388 ms | 1.00 | 29 | 546.6 | 1067.8 | 13800.99 KB | 1.00 | +| Sylvan___ | Asset | 50000 | 67.865 ms | 1.27 | 29 | 430.0 | 1357.3 | 13962.46 KB | 1.01 | +| ReadLine_ | Asset | 50000 | 153.589 ms | 2.88 | 29 | 190.0 | 3071.8 | 102133.4 KB | 7.40 | +| CsvHelper | Asset | 50000 | 159.288 ms | 2.99 | 29 | 183.2 | 3185.8 | 13970.8 KB | 1.01 | + +###### Neoverse.N1 - PackageAssets Benchmark Results (Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0) + +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 50000 | 12.56 ms | 1.00 | 29 | 2315.4 | 251.2 | 904 B | 1.00 | +| Sep_Unescape | Row | 50000 | 12.46 ms | 0.99 | 29 | 2334.2 | 249.2 | 902 B | 1.00 | +| Sylvan___ | Row | 50000 | 31.26 ms | 2.49 | 29 | 930.4 | 625.2 | 6269 B | 6.93 | +| ReadLine_ | Row | 50000 | 38.28 ms | 3.05 | 29 | 759.8 | 765.6 | 90734916 B | 100,370.48 | +| CsvHelper | Row | 50000 | 91.28 ms | 7.27 | 29 | 318.6 | 1825.6 | 21272 B | 23.53 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 14.96 ms | 1.00 | 29 | 1944.2 | 299.2 | 913 B | 1.00 | +| Sep_Unescape | Cols | 50000 | 15.70 ms | 1.05 | 29 | 1853.0 | 313.9 | 915 B | 1.00 | +| Sylvan___ | Cols | 50000 | 35.36 ms | 2.36 | 29 | 822.6 | 707.2 | 6288 B | 6.89 | +| ReadLine_ | Cols | 50000 | 40.74 ms | 2.72 | 29 | 713.9 | 814.9 | 90734929 B | 99,381.08 | +| CsvHelper | Cols | 50000 | 136.92 ms | 9.15 | 29 | 212.4 | 2738.3 | 457144 B | 500.71 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 67.27 ms | 1.00 | 29 | 432.4 | 1345.4 | 14131346 B | 1.00 | +| Sep_Unescape | Asset | 50000 | 67.01 ms | 1.00 | 29 | 434.1 | 1340.2 | 14131792 B | 1.00 | +| Sylvan___ | Asset | 50000 | 100.28 ms | 1.49 | 29 | 290.0 | 2005.7 | 14295848 B | 1.01 | +| ReadLine_ | Asset | 50000 | 152.69 ms | 2.27 | 29 | 190.5 | 3053.8 | 104585572 B | 7.40 | +| CsvHelper | Asset | 50000 | 166.75 ms | 2.46 | 29 | 174.4 | 3334.9 | 14306628 B | 1.01 | ##### PackageAssets with Quotes Benchmark Results @@ -946,117 +920,85 @@ triple the total to 76. ###### AMD.Ryzen.9.5950X - PackageAssets with Quotes Benchmark Results (Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0) -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|------------ |--------- |------ |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 6.926 ms | 1.00 | 33 | 4819.0 | 138.5 | 948 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Row | 50000 | 7.226 ms | 1.04 | 33 | 4618.8 | 144.5 | 948 B | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 20.511 ms | 2.97 | 33 | 1627.3 | 410.2 | 7426 B | 7.83 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 15.893 ms | 2.26 | 33 | 2100.1 | 317.9 | 111389450 B | 117,499.42 | -| CsvHelper | .NET 7.0 | Row | 50000 | 61.713 ms | 8.91 | 33 | 540.8 | 1234.3 | 24234 B | 25.56 | -| Sep______ | .NET 8.0 | Row | 50000 | 6.838 ms | 0.99 | 33 | 4881.5 | 136.8 | 945 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Row | 50000 | 6.963 ms | 1.01 | 33 | 4793.3 | 139.3 | 946 B | 1.00 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 18.535 ms | 2.60 | 33 | 1800.8 | 370.7 | 7411 B | 7.82 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 16.519 ms | 2.38 | 33 | 2020.5 | 330.4 | 111389436 B | 117,499.41 | -| CsvHelper | .NET 8.0 | Row | 50000 | 53.122 ms | 7.67 | 33 | 628.3 | 1062.4 | 21091 B | 22.25 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 8.502 ms | 1.00 | 33 | 3926.0 | 170.0 | 951 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Cols | 50000 | 8.784 ms | 1.03 | 33 | 3799.6 | 175.7 | 953 B | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 23.206 ms | 2.73 | 33 | 1438.3 | 464.1 | 7430 B | 7.81 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 16.651 ms | 1.94 | 33 | 2004.6 | 333.0 | 111389446 B | 117,128.75 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 98.855 ms | 11.63 | 33 | 337.6 | 1977.1 | 457022 B | 480.57 | -| Sep______ | .NET 8.0 | Cols | 50000 | 7.616 ms | 0.90 | 33 | 4382.5 | 152.3 | 947 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Cols | 50000 | 8.560 ms | 1.01 | 33 | 3899.3 | 171.2 | 950 B | 1.00 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 20.405 ms | 2.40 | 33 | 1635.8 | 408.1 | 7419 B | 7.80 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 15.310 ms | 1.80 | 33 | 2180.1 | 306.2 | 111389441 B | 117,128.75 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 85.567 ms | 10.05 | 33 | 390.1 | 1711.3 | 457060 B | 480.61 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 41.325 ms | 1.00 | 33 | 807.7 | 826.5 | 14139450 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Asset | 50000 | 38.076 ms | 0.93 | 33 | 876.6 | 761.5 | 14130898 B | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 61.446 ms | 1.49 | 33 | 543.2 | 1228.9 | 14298344 B | 1.01 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 125.874 ms | 3.05 | 33 | 265.2 | 2517.5 | 125239164 B | 8.86 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 115.031 ms | 2.77 | 33 | 290.2 | 2300.6 | 14307054 B | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 37.937 ms | 0.92 | 33 | 879.8 | 758.7 | 14139438 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Asset | 50000 | 34.323 ms | 0.83 | 33 | 972.5 | 686.5 | 14130926 B | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 53.940 ms | 1.30 | 33 | 618.8 | 1078.8 | 14296672 B | 1.01 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 118.606 ms | 2.88 | 33 | 281.4 | 2372.1 | 125239072 B | 8.86 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 99.200 ms | 2.38 | 33 | 336.5 | 1984.0 | 14306154 B | 1.01 | - -###### Intel.Xeon.Silver.4316.2.30GHz - PackageAssets with Quotes Benchmark Results (Sep 0.2.3, Sylvan 1.3.2.0, CsvHelper 30.0.1.0) - -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------ |------ |----------:|------:|---:|-------:|-------:|-------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 15.13 ms | 1.00 | 33 | 2206.5 | 302.5 | 1.17 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 42.25 ms | 2.80 | 33 | 790.0 | 845.0 | 7.26 KB | 6.22 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 32.95 ms | 2.18 | 33 | 1013.0 | 659.0 | 108778.78 KB | 93,135.01 | -| CsvHelper | .NET 7.0 | Row | 50000 | 121.55 ms | 8.03 | 33 | 274.6 | 2431.1 | 20.84 KB | 17.84 | -| Sep______ | .NET 8.0 | Row | 50000 | 12.34 ms | 0.82 | 33 | 2705.0 | 246.8 | 1.31 KB | 1.12 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 35.42 ms | 2.34 | 33 | 942.4 | 708.4 | 7.24 KB | 6.20 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 32.15 ms | 2.13 | 33 | 1038.3 | 642.9 | 108778.77 KB | 93,135.00 | -| CsvHelper | .NET 8.0 | Row | 50000 | 104.02 ms | 6.88 | 33 | 320.9 | 2080.4 | 20.69 KB | 17.72 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 15.80 ms | 1.00 | 33 | 2112.6 | 316.0 | 1.18 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 45.83 ms | 2.91 | 33 | 728.3 | 916.6 | 7.33 KB | 6.24 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 33.98 ms | 2.15 | 33 | 982.2 | 679.7 | 108778.78 KB | 92,516.17 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 177.61 ms | 11.23 | 33 | 187.9 | 3552.2 | 446.43 KB | 379.69 | -| Sep______ | .NET 8.0 | Cols | 50000 | 15.59 ms | 0.99 | 33 | 2140.6 | 311.8 | 1.5 KB | 1.28 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 38.85 ms | 2.46 | 33 | 859.2 | 777.0 | 7.25 KB | 6.16 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 32.64 ms | 2.06 | 33 | 1022.6 | 652.8 | 108778.77 KB | 92,516.16 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 161.84 ms | 10.23 | 33 | 206.2 | 3236.9 | 446.45 KB | 379.70 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 71.19 ms | 1.00 | 33 | 468.9 | 1423.8 | 13808.03 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 106.82 ms | 1.50 | 33 | 312.5 | 2136.5 | 14025.33 KB | 1.02 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 205.79 ms | 2.89 | 33 | 162.2 | 4115.9 | 122304.11 KB | 8.86 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 192.54 ms | 2.71 | 33 | 173.3 | 3850.9 | 13970.85 KB | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 52.18 ms | 0.74 | 33 | 639.6 | 1043.7 | 13808.73 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 96.05 ms | 1.35 | 33 | 347.5 | 1921.0 | 14026.75 KB | 1.02 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 202.80 ms | 2.82 | 33 | 164.6 | 4056.0 | 122304.21 KB | 8.86 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 179.61 ms | 2.52 | 33 | 185.8 | 3592.1 | 13970.8 KB | 1.01 | - -###### Neoverse.N1 - PackageAssets with Quotes Benchmark Results (Sep 0.2.3, Sylvan 1.3.2.0, CsvHelper 30.0.1.0) - -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------ |------ |----------:|------:|---:|-------:|-------:|-------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 25.47 ms | 1.00 | 33 | 1306.5 | 509.5 | 1.39 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 46.21 ms | 1.81 | 33 | 720.2 | 924.2 | 6.25 KB | 4.50 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 49.46 ms | 1.94 | 33 | 673.0 | 989.1 | 108778.86 KB | 78,333.02 | -| CsvHelper | .NET 7.0 | Row | 50000 | 121.28 ms | 4.76 | 33 | 274.4 | 2425.6 | 20.74 KB | 14.93 | -| Sep______ | .NET 8.0 | Row | 50000 | 23.43 ms | 0.92 | 33 | 1420.5 | 468.6 | 1.36 KB | 0.98 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 39.42 ms | 1.55 | 33 | 844.2 | 788.5 | 6.11 KB | 4.40 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 47.68 ms | 1.87 | 33 | 698.1 | 953.5 | 108778.91 KB | 78,333.05 | -| CsvHelper | .NET 8.0 | Row | 50000 | 107.00 ms | 4.20 | 33 | 311.0 | 2140.1 | 20.77 KB | 14.96 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 28.30 ms | 1.00 | 33 | 1175.9 | 566.1 | 1.39 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 53.39 ms | 1.89 | 33 | 623.4 | 1067.8 | 6.25 KB | 4.50 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 50.71 ms | 1.79 | 33 | 656.3 | 1014.2 | 108778.93 KB | 78,333.07 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 180.08 ms | 6.36 | 33 | 184.8 | 3601.5 | 446.66 KB | 321.65 | -| Sep______ | .NET 8.0 | Cols | 50000 | 25.68 ms | 0.91 | 33 | 1295.8 | 513.7 | 1.36 KB | 0.98 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 45.33 ms | 1.61 | 33 | 734.2 | 906.6 | 6.15 KB | 4.43 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 44.96 ms | 1.59 | 33 | 740.3 | 899.2 | 108778.91 KB | 78,333.05 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 153.04 ms | 5.41 | 33 | 217.5 | 3060.7 | 446.61 KB | 321.61 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 88.20 ms | 1.00 | 33 | 377.4 | 1764.0 | 13808.62 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 115.22 ms | 1.31 | 33 | 288.9 | 2304.4 | 14024.52 KB | 1.02 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 200.14 ms | 2.28 | 33 | 166.3 | 4002.9 | 122305.55 KB | 8.86 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 208.19 ms | 2.35 | 33 | 159.9 | 4163.8 | 13971.42 KB | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 84.89 ms | 0.96 | 33 | 392.1 | 1697.7 | 13808.47 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 109.42 ms | 1.24 | 33 | 304.2 | 2188.4 | 14025.4 KB | 1.02 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 190.83 ms | 2.19 | 33 | 174.4 | 3816.6 | 122305.06 KB | 8.86 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 185.03 ms | 2.09 | 33 | 179.9 | 3700.5 | 13972.06 KB | 1.01 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 50000 | 7.453 ms | 1.00 | 33 | 4478.2 | 149.1 | 944 B | 1.00 | +| Sep_Unescape | Row | 50000 | 7.381 ms | 0.99 | 33 | 4522.2 | 147.6 | 944 B | 1.00 | +| Sylvan___ | Row | 50000 | 18.035 ms | 2.40 | 33 | 1850.7 | 360.7 | 7390 B | 7.83 | +| ReadLine_ | Row | 50000 | 14.689 ms | 1.97 | 33 | 2272.3 | 293.8 | 111389433 B | 117,997.28 | +| CsvHelper | Row | 50000 | 52.212 ms | 7.01 | 33 | 639.3 | 1044.2 | 21081 B | 22.33 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 7.780 ms | 1.00 | 33 | 4290.1 | 155.6 | 946 B | 1.00 | +| Sep_Unescape | Cols | 50000 | 8.337 ms | 1.07 | 33 | 4003.6 | 166.7 | 946 B | 1.00 | +| Sylvan___ | Cols | 50000 | 20.329 ms | 2.60 | 33 | 1641.9 | 406.6 | 7411 B | 7.83 | +| ReadLine_ | Cols | 50000 | 15.540 ms | 1.99 | 33 | 2147.8 | 310.8 | 111389433 B | 117,747.82 | +| CsvHelper | Cols | 50000 | 83.149 ms | 10.64 | 33 | 401.4 | 1663.0 | 457060 B | 483.15 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 35.903 ms | 1.00 | 33 | 929.6 | 718.1 | 14139438 B | 1.00 | +| Sep_Unescape | Asset | 50000 | 34.316 ms | 0.93 | 33 | 972.7 | 686.3 | 14130926 B | 1.00 | +| Sylvan___ | Asset | 50000 | 51.465 ms | 1.43 | 33 | 648.5 | 1029.3 | 14296613 B | 1.01 | +| ReadLine_ | Asset | 50000 | 117.914 ms | 3.29 | 33 | 283.1 | 2358.3 | 125239144 B | 8.86 | +| CsvHelper | Asset | 50000 | 96.670 ms | 2.57 | 33 | 345.3 | 1933.4 | 14307304 B | 1.01 | + +###### Intel.Xeon.Silver.4316.2.30GHz - PackageAssets with Quotes Benchmark Results (Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0) + +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |----------:|------:|---:|-------:|-------:|-------------:|------------:| +| Sep______ | Row | 50000 | 13.72 ms | 1.00 | 33 | 2433.1 | 274.4 | 1.09 KB | 1.00 | +| Sep_Unescape | Row | 50000 | 14.36 ms | 1.05 | 33 | 2325.0 | 287.1 | 1.09 KB | 1.00 | +| Sylvan___ | Row | 50000 | 34.97 ms | 2.55 | 33 | 954.3 | 699.5 | 7.26 KB | 6.66 | +| ReadLine_ | Row | 50000 | 29.99 ms | 2.18 | 33 | 1113.0 | 599.8 | 108778.77 KB | 99,721.98 | +| CsvHelper | Row | 50000 | 102.27 ms | 7.45 | 33 | 326.4 | 2045.5 | 20.69 KB | 18.97 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 15.38 ms | 1.00 | 33 | 2169.7 | 307.7 | 1.09 KB | 1.00 | +| Sep_Unescape | Cols | 50000 | 17.71 ms | 1.15 | 33 | 1884.8 | 354.2 | 1.1 KB | 1.01 | +| Sylvan___ | Cols | 50000 | 40.92 ms | 2.71 | 33 | 815.6 | 818.5 | 7.27 KB | 6.64 | +| ReadLine_ | Cols | 50000 | 30.22 ms | 1.96 | 33 | 1104.5 | 604.4 | 108778.77 KB | 99,366.16 | +| CsvHelper | Cols | 50000 | 159.90 ms | 10.39 | 33 | 208.7 | 3198.0 | 446.45 KB | 407.81 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 66.17 ms | 1.00 | 33 | 504.4 | 1323.4 | 13809.96 KB | 1.00 | +| Sep_Unescape | Asset | 50000 | 62.28 ms | 0.95 | 33 | 536.0 | 1245.5 | 13799.79 KB | 1.00 | +| Sylvan___ | Asset | 50000 | 95.92 ms | 1.45 | 33 | 348.0 | 1918.4 | 13962.73 KB | 1.01 | +| ReadLine_ | Asset | 50000 | 193.85 ms | 2.96 | 33 | 172.2 | 3876.9 | 122304.1 KB | 8.86 | +| CsvHelper | Asset | 50000 | 178.36 ms | 2.70 | 33 | 187.1 | 3567.2 | 13970.8 KB | 1.01 | + +###### Neoverse.N1 - PackageAssets with Quotes Benchmark Results (Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0) + +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 50000 | 24.35 ms | 1.00 | 33 | 1366.9 | 487.0 | 941 B | 1.00 | +| Sep_Unescape | Row | 50000 | 24.21 ms | 0.99 | 33 | 1374.7 | 484.2 | 941 B | 1.00 | +| Sylvan___ | Row | 50000 | 39.92 ms | 1.64 | 33 | 833.6 | 798.5 | 6288 B | 6.68 | +| ReadLine_ | Row | 50000 | 45.96 ms | 1.89 | 33 | 724.1 | 919.3 | 111389508 B | 118,373.55 | +| CsvHelper | Row | 50000 | 106.99 ms | 4.40 | 33 | 311.1 | 2139.8 | 21272 B | 22.61 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 26.96 ms | 1.00 | 33 | 1234.3 | 539.3 | 869 B | 1.00 | +| Sep_Unescape | Cols | 50000 | 28.60 ms | 1.06 | 33 | 1163.6 | 572.1 | 953 B | 1.10 | +| Sylvan___ | Cols | 50000 | 45.48 ms | 1.69 | 33 | 731.8 | 909.6 | 6318 B | 7.27 | +| ReadLine_ | Cols | 50000 | 45.95 ms | 1.70 | 33 | 724.4 | 918.9 | 111389521 B | 128,181.27 | +| CsvHelper | Cols | 50000 | 152.46 ms | 5.65 | 33 | 218.3 | 3049.1 | 457328 B | 526.27 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 83.86 ms | 1.00 | 33 | 396.9 | 1677.2 | 14139912 B | 1.00 | +| Sep_Unescape | Asset | 50000 | 79.99 ms | 0.96 | 33 | 416.1 | 1599.9 | 14132628 B | 1.00 | +| Sylvan___ | Asset | 50000 | 110.29 ms | 1.31 | 33 | 301.8 | 2205.9 | 14298320 B | 1.01 | +| ReadLine_ | Asset | 50000 | 178.89 ms | 2.13 | 33 | 186.1 | 3577.7 | 125240480 B | 8.86 | +| CsvHelper | Asset | 50000 | 182.59 ms | 2.18 | 33 | 182.3 | 3651.7 | 14308800 B | 1.01 | #### Floats Reader Comparison Benchmarks The [FloatsReaderBench.cs](src/Sep.ComparisonBenchmarks/FloatsReaderBench.cs) benchmark demonstrates what Sep is built for. Namely parsing 32-bit floating points or features as in machine learning. Here a simple CSV-file is randomly -generated with `N` ground truth values, `N` predicted result values and some -typical extra columns leading that, but which aren't used as such in the -benchmark. `N = 20` here. For example: +generated with `N` ground truth values, `N` predicted result values and nothing +else (note this was changed from version 0.3.0, prior to that there were some +extra leading columns). `N = 20` +here. For example: ``` -Set;FileName;DataSplit;GT_Feature0;GT_Feature1;GT_Feature2;GT_Feature3;GT_Feature4;GT_Feature5;GT_Feature6;GT_Feature7;GT_Feature8;GT_Feature9;GT_Feature10;GT_Feature11;GT_Feature12;GT_Feature13;GT_Feature14;GT_Feature15;GT_Feature16;GT_Feature17;GT_Feature18;GT_Feature19;RE_Feature0;RE_Feature1;RE_Feature2;RE_Feature3;RE_Feature4;RE_Feature5;RE_Feature6;RE_Feature7;RE_Feature8;RE_Feature9;RE_Feature10;RE_Feature11;RE_Feature12;RE_Feature13;RE_Feature14;RE_Feature15;RE_Feature16;RE_Feature17;RE_Feature18;RE_Feature19 -SetCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC;wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww.png;Train;0.52276427;0.16843422;0.26259267;0.7244084;0.51292276;0.17365117;0.76125056;0.23458846;0.2573214;0.50560355;0.3202332;0.3809696;0.26024464;0.5174511;0.035318818;0.8141374;0.57719684;0.3974705;0.15219308;0.09011261;0.70515215;0.81618196;0.5399706;0.044147138;0.7111546;0.14776127;0.90621275;0.6925897;0.5164137;0.18637845;0.041509967;0.30819967;0.5831603;0.8210651;0.003954861;0.535722;0.8051845;0.7483589;0.3845737;0.14911908 -SetAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA;mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm.png;Test;0.6264564;0.11517637;0.24996082;0.77242833;0.2896067;0.6481459;0.14364648;0.044498358;0.6045593;0.51591337;0.050794687;0.42036617;0.7065823;0.6284636;0.21844554;0.013253775;0.36516154;0.2674384;0.06866083;0.71817476;0.07094294;0.46409357;0.012033525;0.7978093;0.43917948;0.5134962;0.4995968;0.008952909;0.82883793;0.012896823;0.0030740085;0.063773096;0.6541431;0.034539033;0.9135142;0.92897075;0.46119377;0.37533295;0.61660606;0.044443816 -SetBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB;lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll.png;Validation;0.7922863;0.5323656;0.400699;0.29737252;0.9072584;0.58673894;0.73510516;0.019412167;0.88168067;0.9576787;0.33283427;0.7107;0.1623628;0.10314285;0.4521515;0.33324885;0.7761104;0.14854911;0.13469358;0.21566042;0.59166247;0.5128394;0.98702157;0.766223;0.67204326;0.7149494;0.2894748;0.55206;0.9898286;0.65083236;0.02421702;0.34540752;0.92906284;0.027142895;0.21974725;0.26544374;0.03848049;0.2161237;0.59233844;0.42221397 -SetAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA;ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss.png;Train;0.10609442;0.32130885;0.32383907;0.7511514;0.8258279;0.00904226;0.0420841;0.84049565;0.8958947;0.23807365;0.92621964;0.8452882;0.2794469;0.545344;0.63447595;0.62532926;0.19230893;0.29726416;0.18304513;0.029583583;0.23084833;0.93346167;0.98742676;0.78163713;0.13521992;0.8833956;0.18670778;0.29476836;0.5599867;0.5562107;0.7124796;0.121927656;0.5981778;0.39144602;0.88092715;0.4449142;0.34820423;0.96379805;0.46364686;0.54301775 +GT_Feature0;GT_Feature1;GT_Feature2;GT_Feature3;GT_Feature4;GT_Feature5;GT_Feature6;GT_Feature7;GT_Feature8;GT_Feature9;GT_Feature10;GT_Feature11;GT_Feature12;GT_Feature13;GT_Feature14;GT_Feature15;GT_Feature16;GT_Feature17;GT_Feature18;GT_Feature19;RE_Feature0;RE_Feature1;RE_Feature2;RE_Feature3;RE_Feature4;RE_Feature5;RE_Feature6;RE_Feature7;RE_Feature8;RE_Feature9;RE_Feature10;RE_Feature11;RE_Feature12;RE_Feature13;RE_Feature14;RE_Feature15;RE_Feature16;RE_Feature17;RE_Feature18;RE_Feature19 +0.52276427;0.16843422;0.26259267;0.7244084;0.51292276;0.17365117;0.76125056;0.23458846;0.2573214;0.50560355;0.3202332;0.3809696;0.26024464;0.5174511;0.035318818;0.8141374;0.57719684;0.3974705;0.15219308;0.09011261;0.70515215;0.81618196;0.5399706;0.044147138;0.7111546;0.14776127;0.90621275;0.6925897;0.5164137;0.18637845;0.041509967;0.30819967;0.5831603;0.8210651;0.003954861;0.535722;0.8051845;0.7483589;0.3845737;0.14911908 +0.6264564;0.11517637;0.24996082;0.77242833;0.2896067;0.6481459;0.14364648;0.044498358;0.6045593;0.51591337;0.050794687;0.42036617;0.7065823;0.6284636;0.21844554;0.013253775;0.36516154;0.2674384;0.06866083;0.71817476;0.07094294;0.46409357;0.012033525;0.7978093;0.43917948;0.5134962;0.4995968;0.008952909;0.82883793;0.012896823;0.0030740085;0.063773096;0.6541431;0.034539033;0.9135142;0.92897075;0.46119377;0.37533295;0.61660606;0.044443816 +0.7922863;0.5323656;0.400699;0.29737252;0.9072584;0.58673894;0.73510516;0.019412167;0.88168067;0.9576787;0.33283427;0.7107;0.1623628;0.10314285;0.4521515;0.33324885;0.7761104;0.14854911;0.13469358;0.21566042;0.59166247;0.5128394;0.98702157;0.766223;0.67204326;0.7149494;0.2894748;0.55206;0.9898286;0.65083236;0.02421702;0.34540752;0.92906284;0.027142895;0.21974725;0.26544374;0.03848049;0.2161237;0.59233844;0.42221397 +0.10609442;0.32130885;0.32383907;0.7511514;0.8258279;0.00904226;0.0420841;0.84049565;0.8958947;0.23807365;0.92621964;0.8452882;0.2794469;0.545344;0.63447595;0.62532926;0.19230893;0.29726416;0.18304513;0.029583583;0.23084833;0.93346167;0.98742676;0.78163713;0.13521992;0.8833956;0.18670778;0.29476836;0.5599867;0.5562107;0.7124796;0.121927656;0.5981778;0.39144602;0.88092715;0.4449142;0.34820423;0.96379805;0.46364686;0.54301775 ``` For `Scope=Floats` the benchmark will parse the features as two spans of `float`s; one for ground truth values and one for predicted result values. Then @@ -1103,103 +1045,67 @@ Sylvan one may consider using csFastFloat if that is an option. CsvHelper suffers from the fact that one can only access the column as a string so this has to be allocated for each column (ReadLine by definition always allocates a string per column). Still CsvHelper is significantly slower than the -naive `ReadLine` approach. With Sep being **>3.8x faster than CsvHelper**. +naive `ReadLine` approach. With Sep being **>4x faster than CsvHelper**. It is a testament to how good the .NET and the .NET GC is that the ReadLine is pretty good compared to CsvHelper regardless of allocating a lot of strings. ##### AMD.Ryzen.9.5950X - FloatsReader Benchmark Results (Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0) -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------- |------ |-----------:|------:|---:|--------:|-------:|------------:|------------:| -| Sep______ | .NET 7.0 | Row | 25000 | 2.649 ms | 1.00 | 27 | 10291.1 | 106.0 | 1.2 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 25000 | 3.073 ms | 1.16 | 27 | 8873.0 | 122.9 | 10.59 KB | 8.84 | -| ReadLine_ | .NET 7.0 | Row | 25000 | 13.823 ms | 5.09 | 27 | 1972.3 | 552.9 | 89986.84 KB | 75,160.30 | -| CsvHelper | .NET 7.0 | Row | 25000 | 40.128 ms | 15.14 | 27 | 679.4 | 1605.1 | 20.74 KB | 17.32 | -| Sep______ | .NET 8.0 | Row | 25000 | 2.579 ms | 0.98 | 27 | 10571.6 | 103.2 | 1.2 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Row | 25000 | 3.059 ms | 1.15 | 27 | 8911.7 | 122.4 | 10.59 KB | 8.84 | -| ReadLine_ | .NET 8.0 | Row | 25000 | 13.625 ms | 5.13 | 27 | 2000.9 | 545.0 | 89986.83 KB | 75,160.29 | -| CsvHelper | .NET 8.0 | Row | 25000 | 34.168 ms | 12.90 | 27 | 797.9 | 1366.7 | 20.61 KB | 17.22 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 25000 | 3.574 ms | 1.00 | 27 | 7628.8 | 142.9 | 1.2 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 25000 | 4.968 ms | 1.39 | 27 | 5488.1 | 198.7 | 10.59 KB | 8.83 | -| ReadLine_ | .NET 7.0 | Cols | 25000 | 14.102 ms | 3.90 | 27 | 1933.3 | 564.1 | 89986.84 KB | 75,037.89 | -| CsvHelper | .NET 7.0 | Cols | 25000 | 42.826 ms | 11.98 | 27 | 636.6 | 1713.0 | 28451.27 KB | 23,724.84 | -| Sep______ | .NET 8.0 | Cols | 25000 | 3.294 ms | 0.92 | 27 | 8275.5 | 131.8 | 1.2 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Cols | 25000 | 4.717 ms | 1.32 | 27 | 5779.3 | 188.7 | 10.59 KB | 8.83 | -| ReadLine_ | .NET 8.0 | Cols | 25000 | 13.991 ms | 3.92 | 27 | 1948.7 | 559.6 | 89986.83 KB | 75,037.88 | -| CsvHelper | .NET 8.0 | Cols | 25000 | 39.277 ms | 10.94 | 27 | 694.1 | 1571.1 | 28451.15 KB | 23,724.74 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Floats | 25000 | 33.288 ms | 1.00 | 27 | 819.0 | 1331.5 | 8.18 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Floats | 25000 | 78.853 ms | 2.37 | 27 | 345.8 | 3154.1 | 18.89 KB | 2.31 | -| ReadLine_ | .NET 7.0 | Floats | 25000 | 87.688 ms | 2.62 | 27 | 310.9 | 3507.5 | 89993.42 KB | 11,002.06 | -| CsvHelper | .NET 7.0 | Floats | 25000 | 143.571 ms | 4.29 | 27 | 189.9 | 5742.8 | 22039.48 KB | 2,694.42 | -| Sep______ | .NET 8.0 | Floats | 25000 | 23.568 ms | 0.71 | 27 | 1156.8 | 942.7 | 8.13 KB | 0.99 | -| Sylvan___ | .NET 8.0 | Floats | 25000 | 70.200 ms | 2.10 | 27 | 388.4 | 2808.0 | 18.87 KB | 2.31 | -| ReadLine_ | .NET 8.0 | Floats | 25000 | 81.667 ms | 2.45 | 27 | 333.8 | 3266.7 | 89990.3 KB | 11,001.68 | -| CsvHelper | .NET 8.0 | Floats | 25000 | 121.367 ms | 3.65 | 27 | 224.6 | 4854.7 | 22035.94 KB | 2,693.98 | - -##### Intel.Xeon.Silver.4316.2.30GHz - FloatsReader Benchmark Results (Sep 0.2.3, Sylvan 1.3.2.0, CsvHelper 30.0.1.0) - -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------- |------ |-----------:|------:|---:|-------:|--------:|------------:|------------:| -| Sep______ | .NET 7.0 | Row | 25000 | 5.417 ms | 1.00 | 27 | 5033.3 | 216.7 | 1.57 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 25000 | 6.328 ms | 1.17 | 27 | 4308.3 | 253.1 | 10.56 KB | 6.74 | -| ReadLine_ | .NET 7.0 | Row | 25000 | 28.805 ms | 5.35 | 27 | 946.5 | 1152.2 | 89986.9 KB | 57,412.20 | -| CsvHelper | .NET 7.0 | Row | 25000 | 76.930 ms | 14.20 | 27 | 354.4 | 3077.2 | 20.74 KB | 13.23 | -| Sep______ | .NET 8.0 | Row | 25000 | 5.841 ms | 1.08 | 27 | 4667.7 | 233.6 | 1.72 KB | 1.10 | -| Sylvan___ | .NET 8.0 | Row | 25000 | 6.526 ms | 1.20 | 27 | 4177.8 | 261.0 | 10.56 KB | 6.74 | -| ReadLine_ | .NET 8.0 | Row | 25000 | 28.041 ms | 5.18 | 27 | 972.3 | 1121.7 | 89986.9 KB | 57,412.20 | -| CsvHelper | .NET 8.0 | Row | 25000 | 77.364 ms | 14.27 | 27 | 352.4 | 3094.5 | 20.77 KB | 13.25 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 25000 | 6.921 ms | 1.00 | 27 | 3939.4 | 276.8 | 1.57 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 25000 | 10.300 ms | 1.49 | 27 | 2647.0 | 412.0 | 10.58 KB | 6.72 | -| ReadLine_ | .NET 7.0 | Cols | 25000 | 29.077 ms | 4.19 | 27 | 937.6 | 1163.1 | 89986.9 KB | 57,198.38 | -| CsvHelper | .NET 7.0 | Cols | 25000 | 95.212 ms | 13.76 | 27 | 286.3 | 3808.5 | 28451.27 KB | 18,084.48 | -| Sep______ | .NET 8.0 | Cols | 25000 | 6.685 ms | 0.97 | 27 | 4078.0 | 267.4 | 1.73 KB | 1.10 | -| Sylvan___ | .NET 8.0 | Cols | 25000 | 9.724 ms | 1.41 | 27 | 2803.8 | 388.9 | 10.57 KB | 6.72 | -| ReadLine_ | .NET 8.0 | Cols | 25000 | 27.190 ms | 3.94 | 27 | 1002.7 | 1087.6 | 89986.89 KB | 57,198.37 | -| CsvHelper | .NET 8.0 | Cols | 25000 | 81.925 ms | 11.88 | 27 | 332.8 | 3277.0 | 28451.84 KB | 18,084.85 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Floats | 25000 | 61.789 ms | 1.00 | 27 | 441.2 | 2471.6 | 9.1 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Floats | 25000 | 146.737 ms | 2.37 | 27 | 185.8 | 5869.5 | 19.62 KB | 2.16 | -| ReadLine_ | .NET 7.0 | Floats | 25000 | 168.368 ms | 2.73 | 27 | 161.9 | 6734.7 | 89993.63 KB | 9,894.08 | -| CsvHelper | .NET 7.0 | Floats | 25000 | 264.441 ms | 4.28 | 27 | 103.1 | 10577.6 | 22039.48 KB | 2,423.07 | -| Sep______ | .NET 8.0 | Floats | 25000 | 44.122 ms | 0.71 | 27 | 617.9 | 1764.9 | 9.08 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Floats | 25000 | 135.504 ms | 2.19 | 27 | 201.2 | 5420.2 | 19.07 KB | 2.10 | -| ReadLine_ | .NET 8.0 | Floats | 25000 | 151.400 ms | 2.45 | 27 | 180.1 | 6056.0 | 89990.48 KB | 9,893.74 | -| CsvHelper | .NET 8.0 | Floats | 25000 | 231.426 ms | 3.75 | 27 | 117.8 | 9257.1 | 22036.58 KB | 2,422.75 | - -##### Neoverse.N1 - FloatsReader Benchmark Results (Sep 0.2.3, Sylvan 1.3.2.0, CsvHelper 30.0.1.0) - -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------- |------ |----------:|------:|---:|-------:|--------:|------------:|------------:| -| Sep______ | .NET 7.0 | Row | 25000 | 11.54 ms | 1.00 | 27 | 2359.4 | 461.4 | 1.54 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 25000 | 37.00 ms | 3.21 | 27 | 735.6 | 1479.9 | 10.48 KB | 6.80 | -| ReadLine_ | .NET 7.0 | Row | 25000 | 40.34 ms | 3.50 | 27 | 674.7 | 1613.6 | 89986.96 KB | 58,394.58 | -| CsvHelper | .NET 7.0 | Row | 25000 | 84.31 ms | 7.31 | 27 | 322.8 | 3372.4 | 20.82 KB | 13.51 | -| Sep______ | .NET 8.0 | Row | 25000 | 11.63 ms | 1.01 | 27 | 2339.4 | 465.3 | 1.54 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Row | 25000 | 38.26 ms | 3.32 | 27 | 711.3 | 1530.4 | 10.3 KB | 6.69 | -| ReadLine_ | .NET 8.0 | Row | 25000 | 40.77 ms | 3.53 | 27 | 667.5 | 1630.8 | 89987.06 KB | 58,394.64 | -| CsvHelper | .NET 8.0 | Row | 25000 | 79.69 ms | 6.91 | 27 | 341.5 | 3187.7 | 20.86 KB | 13.53 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 25000 | 13.37 ms | 1.00 | 27 | 2035.0 | 535.0 | 1.55 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 25000 | 41.82 ms | 3.13 | 27 | 650.8 | 1672.8 | 10.48 KB | 6.74 | -| ReadLine_ | .NET 7.0 | Cols | 25000 | 42.16 ms | 3.15 | 27 | 645.5 | 1686.4 | 89986.99 KB | 57,881.08 | -| CsvHelper | .NET 7.0 | Cols | 25000 | 90.73 ms | 6.79 | 27 | 300.0 | 3629.2 | 28451.35 KB | 18,300.37 | -| Sep______ | .NET 8.0 | Cols | 25000 | 13.74 ms | 1.03 | 27 | 1980.9 | 549.6 | 1.55 KB | 0.99 | -| Sylvan___ | .NET 8.0 | Cols | 25000 | 42.55 ms | 3.18 | 27 | 639.7 | 1701.9 | 10.33 KB | 6.64 | -| ReadLine_ | .NET 8.0 | Cols | 25000 | 38.88 ms | 2.90 | 27 | 700.0 | 1555.1 | 89987.06 KB | 57,881.12 | -| CsvHelper | .NET 8.0 | Cols | 25000 | 85.89 ms | 6.42 | 27 | 316.9 | 3435.7 | 28451.39 KB | 18,300.39 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Floats | 25000 | 64.82 ms | 1.00 | 27 | 419.9 | 2592.6 | 9.12 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Floats | 25000 | 209.21 ms | 3.23 | 27 | 130.1 | 8368.4 | 19.55 KB | 2.15 | -| ReadLine_ | .NET 7.0 | Floats | 25000 | 214.76 ms | 3.31 | 27 | 126.7 | 8590.6 | 89994.37 KB | 9,872.96 | -| CsvHelper | .NET 7.0 | Floats | 25000 | 297.94 ms | 4.60 | 27 | 91.3 | 11917.5 | 22040.05 KB | 2,417.94 | -| Sep______ | .NET 8.0 | Floats | 25000 | 53.37 ms | 0.82 | 27 | 510.0 | 2134.7 | 8.95 KB | 0.98 | -| Sylvan___ | .NET 8.0 | Floats | 25000 | 164.95 ms | 2.55 | 27 | 165.0 | 6598.0 | 18.84 KB | 2.07 | -| ReadLine_ | .NET 8.0 | Floats | 25000 | 160.20 ms | 2.47 | 27 | 169.9 | 6408.1 | 89990.64 KB | 9,872.55 | -| CsvHelper | .NET 8.0 | Floats | 25000 | 231.15 ms | 3.57 | 27 | 117.7 | 9245.8 | 22037.14 KB | 2,417.62 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|---------- |------- |------ |-----------:|------:|---:|--------:|-------:|------------:|------------:| +| Sep______ | Row | 25000 | 1.893 ms | 1.00 | 20 | 10733.4 | 75.7 | 1.15 KB | 1.00 | +| Sylvan___ | Row | 25000 | 2.212 ms | 1.17 | 20 | 9187.9 | 88.5 | 10.02 KB | 8.74 | +| ReadLine_ | Row | 25000 | 10.913 ms | 5.76 | 20 | 1862.0 | 436.5 | 73489.63 KB | 64,099.99 | +| CsvHelper | Row | 25000 | 25.079 ms | 13.25 | 20 | 810.2 | 1003.2 | 20.58 KB | 17.95 | +| | | | | | | | | | | +| Sep______ | Cols | 25000 | 2.591 ms | 1.00 | 20 | 7843.3 | 103.6 | 1.15 KB | 1.00 | +| Sylvan___ | Cols | 25000 | 3.738 ms | 1.44 | 20 | 5436.2 | 149.5 | 10.03 KB | 8.74 | +| ReadLine_ | Cols | 25000 | 11.010 ms | 4.25 | 20 | 1845.6 | 440.4 | 73489.64 KB | 64,045.44 | +| CsvHelper | Cols | 25000 | 27.201 ms | 10.43 | 20 | 747.0 | 1088.0 | 21340.99 KB | 18,598.45 | +| | | | | | | | | | | +| Sep______ | Floats | 25000 | 21.397 ms | 1.00 | 20 | 949.7 | 855.9 | 7.87 KB | 1.00 | +| Sylvan___ | Floats | 25000 | 65.771 ms | 3.08 | 20 | 308.9 | 2630.8 | 18.2 KB | 2.31 | +| ReadLine_ | Floats | 25000 | 72.513 ms | 3.39 | 20 | 280.2 | 2900.5 | 73493.12 KB | 9,338.25 | +| CsvHelper | Floats | 25000 | 106.198 ms | 4.96 | 20 | 191.3 | 4247.9 | 22062.55 KB | 2,803.33 | + +##### Intel.Xeon.Silver.4316.2.30GHz - FloatsReader Benchmark Results (Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0) + +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|---------- |------- |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 25000 | 3.698 ms | 1.00 | 20 | 5494.3 | 147.9 | 1.31 KB | 1.00 | +| Sylvan___ | Row | 25000 | 4.570 ms | 1.24 | 20 | 4446.5 | 182.8 | 10.03 KB | 7.67 | +| ReadLine_ | Row | 25000 | 20.949 ms | 5.66 | 20 | 970.0 | 837.9 | 73489.67 KB | 56,201.21 | +| CsvHelper | Row | 25000 | 56.975 ms | 15.41 | 20 | 356.6 | 2279.0 | 20.77 KB | 15.89 | +| | | | | | | | | | | +| Sep______ | Cols | 25000 | 5.087 ms | 1.00 | 20 | 3994.7 | 203.5 | 1.31 KB | 1.00 | +| Sylvan___ | Cols | 25000 | 7.370 ms | 1.45 | 20 | 2757.1 | 294.8 | 10.04 KB | 7.68 | +| ReadLine_ | Cols | 25000 | 21.340 ms | 4.20 | 20 | 952.2 | 853.6 | 73489.67 KB | 56,243.22 | +| CsvHelper | Cols | 25000 | 60.316 ms | 11.86 | 20 | 336.9 | 2412.6 | 21340.99 KB | 16,332.72 | +| | | | | | | | | | | +| Sep______ | Floats | 25000 | 41.747 ms | 1.00 | 20 | 486.7 | 1669.9 | 8.12 KB | 1.00 | +| Sylvan___ | Floats | 25000 | 138.798 ms | 3.33 | 20 | 146.4 | 5551.9 | 18.43 KB | 2.27 | +| ReadLine_ | Floats | 25000 | 148.648 ms | 3.56 | 20 | 136.7 | 5945.9 | 73493.3 KB | 9,054.03 | +| CsvHelper | Floats | 25000 | 212.156 ms | 5.08 | 20 | 95.8 | 8486.2 | 22062.78 KB | 2,718.03 | + +##### Neoverse.N1 - FloatsReader Benchmark Results (Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0) + +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|---------- |------- |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 25000 | 9.182 ms | 1.00 | 20 | 2207.7 | 367.3 | 1.11 KB | 1.00 | +| Sylvan___ | Row | 25000 | 30.729 ms | 3.35 | 20 | 659.7 | 1229.1 | 9.74 KB | 8.80 | +| ReadLine_ | Row | 25000 | 33.696 ms | 3.67 | 20 | 601.6 | 1347.8 | 73489.73 KB | 66,419.67 | +| CsvHelper | Row | 25000 | 59.282 ms | 6.46 | 20 | 342.0 | 2371.3 | 20.71 KB | 18.71 | +| | | | | | | | | | | +| Sep______ | Cols | 25000 | 11.392 ms | 1.00 | 20 | 1779.4 | 455.7 | 1.12 KB | 1.00 | +| Sylvan___ | Cols | 25000 | 34.813 ms | 3.06 | 20 | 582.3 | 1392.5 | 9.75 KB | 8.70 | +| ReadLine_ | Cols | 25000 | 32.510 ms | 2.85 | 20 | 623.6 | 1300.4 | 73489.75 KB | 65,551.83 | +| CsvHelper | Cols | 25000 | 64.080 ms | 5.63 | 20 | 316.4 | 2563.2 | 21341.07 KB | 19,035.94 | +| | | | | | | | | | | +| Sep______ | Floats | 25000 | 52.081 ms | 1.00 | 20 | 389.2 | 2083.2 | 7.97 KB | 1.00 | +| Sylvan___ | Floats | 25000 | 169.677 ms | 3.26 | 20 | 119.5 | 6787.1 | 18.2 KB | 2.28 | +| ReadLine_ | Floats | 25000 | 162.237 ms | 3.11 | 20 | 125.0 | 6489.5 | 73493.46 KB | 9,221.58 | +| CsvHelper | Floats | 25000 | 220.231 ms | 4.23 | 20 | 92.0 | 8809.2 | 22063.34 KB | 2,768.39 | ### Writer Comparison Benchmarks diff --git a/benchmarks/AMD.Ryzen.9.5950X/FloatsReaderBench.md b/benchmarks/AMD.Ryzen.9.5950X/FloatsReaderBench.md index 22075b3d..ce299a2a 100644 --- a/benchmarks/AMD.Ryzen.9.5950X/FloatsReaderBench.md +++ b/benchmarks/AMD.Ryzen.9.5950X/FloatsReaderBench.md @@ -2,40 +2,28 @@ BenchmarkDotNet v0.13.10, Windows 10 (10.0.19044.3086/21H2/November2021Update) AMD Ryzen 9 5950X, 1 CPU, 32 logical and 16 physical cores -.NET SDK 8.0.100-rc.2.23502.2 - [Host] : .NET 8.0.0 (8.0.23.47906), X64 RyuJIT AVX2 - Job-WYCHAH : .NET 7.0.13 (7.0.1323.51816), X64 RyuJIT AVX2 - Job-OXIFBK : .NET 8.0.0 (8.0.23.47906), X64 RyuJIT AVX2 +.NET SDK 8.0.100 + [Host] : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX2 + Job-HCXKGU : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX2 -InvocationCount=Default IterationTime=300.0000 ms MaxIterationCount=15 -MinIterationCount=5 WarmupCount=6 Reader=String +Runtime=.NET 8.0 Toolchain=net80 InvocationCount=Default +IterationTime=350.0000 ms MaxIterationCount=15 MinIterationCount=5 +WarmupCount=6 Reader=String ``` -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------- |------ |-----------:|------:|---:|--------:|-------:|------------:|------------:| -| Sep______ | .NET 7.0 | Row | 25000 | 2.649 ms | 1.00 | 27 | 10291.1 | 106.0 | 1.2 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 25000 | 3.073 ms | 1.16 | 27 | 8873.0 | 122.9 | 10.59 KB | 8.84 | -| ReadLine_ | .NET 7.0 | Row | 25000 | 13.823 ms | 5.09 | 27 | 1972.3 | 552.9 | 89986.84 KB | 75,160.30 | -| CsvHelper | .NET 7.0 | Row | 25000 | 40.128 ms | 15.14 | 27 | 679.4 | 1605.1 | 20.74 KB | 17.32 | -| Sep______ | .NET 8.0 | Row | 25000 | 2.579 ms | 0.98 | 27 | 10571.6 | 103.2 | 1.2 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Row | 25000 | 3.059 ms | 1.15 | 27 | 8911.7 | 122.4 | 10.59 KB | 8.84 | -| ReadLine_ | .NET 8.0 | Row | 25000 | 13.625 ms | 5.13 | 27 | 2000.9 | 545.0 | 89986.83 KB | 75,160.29 | -| CsvHelper | .NET 8.0 | Row | 25000 | 34.168 ms | 12.90 | 27 | 797.9 | 1366.7 | 20.61 KB | 17.22 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 25000 | 3.574 ms | 1.00 | 27 | 7628.8 | 142.9 | 1.2 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 25000 | 4.968 ms | 1.39 | 27 | 5488.1 | 198.7 | 10.59 KB | 8.83 | -| ReadLine_ | .NET 7.0 | Cols | 25000 | 14.102 ms | 3.90 | 27 | 1933.3 | 564.1 | 89986.84 KB | 75,037.89 | -| CsvHelper | .NET 7.0 | Cols | 25000 | 42.826 ms | 11.98 | 27 | 636.6 | 1713.0 | 28451.27 KB | 23,724.84 | -| Sep______ | .NET 8.0 | Cols | 25000 | 3.294 ms | 0.92 | 27 | 8275.5 | 131.8 | 1.2 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Cols | 25000 | 4.717 ms | 1.32 | 27 | 5779.3 | 188.7 | 10.59 KB | 8.83 | -| ReadLine_ | .NET 8.0 | Cols | 25000 | 13.991 ms | 3.92 | 27 | 1948.7 | 559.6 | 89986.83 KB | 75,037.88 | -| CsvHelper | .NET 8.0 | Cols | 25000 | 39.277 ms | 10.94 | 27 | 694.1 | 1571.1 | 28451.15 KB | 23,724.74 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Floats | 25000 | 33.288 ms | 1.00 | 27 | 819.0 | 1331.5 | 8.18 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Floats | 25000 | 78.853 ms | 2.37 | 27 | 345.8 | 3154.1 | 18.89 KB | 2.31 | -| ReadLine_ | .NET 7.0 | Floats | 25000 | 87.688 ms | 2.62 | 27 | 310.9 | 3507.5 | 89993.42 KB | 11,002.06 | -| CsvHelper | .NET 7.0 | Floats | 25000 | 143.571 ms | 4.29 | 27 | 189.9 | 5742.8 | 22039.48 KB | 2,694.42 | -| Sep______ | .NET 8.0 | Floats | 25000 | 23.568 ms | 0.71 | 27 | 1156.8 | 942.7 | 8.13 KB | 0.99 | -| Sylvan___ | .NET 8.0 | Floats | 25000 | 70.200 ms | 2.10 | 27 | 388.4 | 2808.0 | 18.87 KB | 2.31 | -| ReadLine_ | .NET 8.0 | Floats | 25000 | 81.667 ms | 2.45 | 27 | 333.8 | 3266.7 | 89990.3 KB | 11,001.68 | -| CsvHelper | .NET 8.0 | Floats | 25000 | 121.367 ms | 3.65 | 27 | 224.6 | 4854.7 | 22035.94 KB | 2,693.98 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|---------- |------- |------ |-----------:|------:|---:|--------:|-------:|------------:|------------:| +| Sep______ | Row | 25000 | 1.893 ms | 1.00 | 20 | 10733.4 | 75.7 | 1.15 KB | 1.00 | +| Sylvan___ | Row | 25000 | 2.212 ms | 1.17 | 20 | 9187.9 | 88.5 | 10.02 KB | 8.74 | +| ReadLine_ | Row | 25000 | 10.913 ms | 5.76 | 20 | 1862.0 | 436.5 | 73489.63 KB | 64,099.99 | +| CsvHelper | Row | 25000 | 25.079 ms | 13.25 | 20 | 810.2 | 1003.2 | 20.58 KB | 17.95 | +| | | | | | | | | | | +| Sep______ | Cols | 25000 | 2.591 ms | 1.00 | 20 | 7843.3 | 103.6 | 1.15 KB | 1.00 | +| Sylvan___ | Cols | 25000 | 3.738 ms | 1.44 | 20 | 5436.2 | 149.5 | 10.03 KB | 8.74 | +| ReadLine_ | Cols | 25000 | 11.010 ms | 4.25 | 20 | 1845.6 | 440.4 | 73489.64 KB | 64,045.44 | +| CsvHelper | Cols | 25000 | 27.201 ms | 10.43 | 20 | 747.0 | 1088.0 | 21340.99 KB | 18,598.45 | +| | | | | | | | | | | +| Sep______ | Floats | 25000 | 21.397 ms | 1.00 | 20 | 949.7 | 855.9 | 7.87 KB | 1.00 | +| Sylvan___ | Floats | 25000 | 65.771 ms | 3.08 | 20 | 308.9 | 2630.8 | 18.2 KB | 2.31 | +| ReadLine_ | Floats | 25000 | 72.513 ms | 3.39 | 20 | 280.2 | 2900.5 | 73493.12 KB | 9,338.25 | +| CsvHelper | Floats | 25000 | 106.198 ms | 4.96 | 20 | 191.3 | 4247.9 | 22062.55 KB | 2,803.33 | diff --git a/benchmarks/AMD.Ryzen.9.5950X/PackageAssetsBench.md b/benchmarks/AMD.Ryzen.9.5950X/PackageAssetsBench.md index fc1961df..cd7ff4ee 100644 --- a/benchmarks/AMD.Ryzen.9.5950X/PackageAssetsBench.md +++ b/benchmarks/AMD.Ryzen.9.5950X/PackageAssetsBench.md @@ -2,47 +2,32 @@ BenchmarkDotNet v0.13.10, Windows 10 (10.0.19044.3086/21H2/November2021Update) AMD Ryzen 9 5950X, 1 CPU, 32 logical and 16 physical cores -.NET SDK 8.0.100-rc.2.23502.2 - [Host] : .NET 8.0.0 (8.0.23.47906), X64 RyuJIT AVX2 - Job-WYCHAH : .NET 7.0.13 (7.0.1323.51816), X64 RyuJIT AVX2 - Job-OXIFBK : .NET 8.0.0 (8.0.23.47906), X64 RyuJIT AVX2 +.NET SDK 8.0.100 + [Host] : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX2 + Job-TUSNIO : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX2 -InvocationCount=Default IterationTime=300.0000 ms MaxIterationCount=15 +Job=Job-TUSNIO Runtime=.NET 8.0 Toolchain=net80 +InvocationCount=Default IterationTime=350.0000 ms MaxIterationCount=15 MinIterationCount=5 WarmupCount=6 Quotes=False Reader=String ``` -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|------------ |--------- |------ |------ |-----------:|------:|---:|--------:|-------:|------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 2.537 ms | 1.00 | 29 | 11503.7 | 50.7 | 935 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Row | 50000 | 2.569 ms | 1.01 | 29 | 11360.9 | 51.4 | 935 B | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 3.197 ms | 1.26 | 29 | 9128.8 | 63.9 | 7383 B | 7.90 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 13.549 ms | 5.27 | 29 | 2153.8 | 271.0 | 90734847 B | 97,042.62 | -| CsvHelper | .NET 7.0 | Row | 50000 | 61.317 ms | 24.28 | 29 | 475.9 | 1226.3 | 21150 B | 22.62 | -| Sep______ | .NET 8.0 | Row | 50000 | 2.446 ms | 0.96 | 29 | 11931.8 | 48.9 | 934 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Row | 50000 | 2.521 ms | 0.99 | 29 | 11576.6 | 50.4 | 934 B | 1.00 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 2.965 ms | 1.17 | 29 | 9842.7 | 59.3 | 7382 B | 7.90 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 12.622 ms | 5.00 | 29 | 2311.9 | 252.4 | 90734841 B | 97,042.61 | -| CsvHelper | .NET 8.0 | Row | 50000 | 43.642 ms | 17.19 | 29 | 668.6 | 872.8 | 21081 B | 22.55 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 3.705 ms | 1.00 | 29 | 7875.9 | 74.1 | 938 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Cols | 50000 | 4.391 ms | 1.19 | 29 | 6645.3 | 87.8 | 941 B | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 5.598 ms | 1.51 | 29 | 5213.0 | 112.0 | 7389 B | 7.88 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 13.541 ms | 3.61 | 29 | 2155.1 | 270.8 | 90734847 B | 96,732.25 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 77.553 ms | 20.93 | 29 | 376.3 | 1551.1 | 457022 B | 487.23 | -| Sep______ | .NET 8.0 | Cols | 50000 | 3.628 ms | 0.98 | 29 | 8043.9 | 72.6 | 937 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Cols | 50000 | 3.984 ms | 1.08 | 29 | 7325.4 | 79.7 | 938 B | 1.00 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 5.157 ms | 1.39 | 29 | 5658.3 | 103.1 | 7386 B | 7.87 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 13.149 ms | 3.54 | 29 | 2219.3 | 263.0 | 90734841 B | 96,732.24 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 70.761 ms | 19.10 | 29 | 412.4 | 1415.2 | 457060 B | 487.27 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 34.415 ms | 1.00 | 29 | 847.9 | 688.3 | 14130898 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Asset | 50000 | 34.273 ms | 1.00 | 29 | 851.4 | 685.5 | 14130898 B | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 42.214 ms | 1.22 | 29 | 691.3 | 844.3 | 14296698 B | 1.01 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 113.604 ms | 3.29 | 29 | 256.9 | 2272.1 | 104584612 B | 7.40 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 103.655 ms | 3.02 | 29 | 281.5 | 2073.1 | 14307286 B | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 30.453 ms | 0.88 | 29 | 958.3 | 609.1 | 14130846 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Asset | 50000 | 30.480 ms | 0.89 | 29 | 957.4 | 609.6 | 14130886 B | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 38.244 ms | 1.11 | 29 | 763.0 | 764.9 | 14296692 B | 1.01 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 105.568 ms | 2.96 | 29 | 276.4 | 2111.4 | 104584668 B | 7.40 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 85.633 ms | 2.49 | 29 | 340.8 | 1712.7 | 14306936 B | 1.01 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |-----------:|------:|---:|--------:|-------:|------------:|------------:| +| Sep______ | Row | 50000 | 2.409 ms | 1.00 | 29 | 12111.6 | 48.2 | 933 B | 1.00 | +| Sep_Unescape | Row | 50000 | 2.499 ms | 1.04 | 29 | 11675.7 | 50.0 | 934 B | 1.00 | +| Sylvan___ | Row | 50000 | 2.913 ms | 1.21 | 29 | 10016.5 | 58.3 | 7381 B | 7.91 | +| ReadLine_ | Row | 50000 | 12.198 ms | 5.04 | 29 | 2392.3 | 244.0 | 90734838 B | 97,250.63 | +| CsvHelper | Row | 50000 | 42.460 ms | 17.63 | 29 | 687.3 | 849.2 | 21074 B | 22.59 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 3.480 ms | 1.00 | 29 | 8385.3 | 69.6 | 935 B | 1.00 | +| Sep_Unescape | Cols | 50000 | 3.959 ms | 1.14 | 29 | 7370.9 | 79.2 | 936 B | 1.00 | +| Sylvan___ | Cols | 50000 | 5.210 ms | 1.50 | 29 | 5600.5 | 104.2 | 7385 B | 7.90 | +| ReadLine_ | Cols | 50000 | 14.275 ms | 3.60 | 29 | 2044.3 | 285.5 | 90734826 B | 97,042.59 | +| CsvHelper | Cols | 50000 | 69.058 ms | 19.86 | 29 | 422.6 | 1381.2 | 457060 B | 488.83 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 35.052 ms | 1.00 | 29 | 832.5 | 701.0 | 14131121 B | 1.00 | +| Sep_Unescape | Asset | 50000 | 34.813 ms | 1.00 | 29 | 838.2 | 696.3 | 14130768 B | 1.00 | +| Sylvan___ | Asset | 50000 | 38.875 ms | 1.12 | 29 | 750.6 | 777.5 | 14297351 B | 1.01 | +| ReadLine_ | Asset | 50000 | 127.866 ms | 3.76 | 29 | 228.2 | 2557.3 | 104584604 B | 7.40 | +| CsvHelper | Asset | 50000 | 86.415 ms | 2.47 | 29 | 337.7 | 1728.3 | 14306352 B | 1.01 | diff --git a/benchmarks/AMD.Ryzen.9.5950X/PackageAssetsBenchQuotes.md b/benchmarks/AMD.Ryzen.9.5950X/PackageAssetsBenchQuotes.md index e5a595e5..d6948d03 100644 --- a/benchmarks/AMD.Ryzen.9.5950X/PackageAssetsBenchQuotes.md +++ b/benchmarks/AMD.Ryzen.9.5950X/PackageAssetsBenchQuotes.md @@ -2,47 +2,32 @@ BenchmarkDotNet v0.13.10, Windows 10 (10.0.19044.3086/21H2/November2021Update) AMD Ryzen 9 5950X, 1 CPU, 32 logical and 16 physical cores -.NET SDK 8.0.100-rc.2.23502.2 - [Host] : .NET 8.0.0 (8.0.23.47906), X64 RyuJIT AVX2 - Job-WYCHAH : .NET 7.0.13 (7.0.1323.51816), X64 RyuJIT AVX2 - Job-OXIFBK : .NET 8.0.0 (8.0.23.47906), X64 RyuJIT AVX2 +.NET SDK 8.0.100 + [Host] : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX2 + Job-TUSNIO : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX2 -InvocationCount=Default IterationTime=300.0000 ms MaxIterationCount=15 +Job=Job-TUSNIO Runtime=.NET 8.0 Toolchain=net80 +InvocationCount=Default IterationTime=350.0000 ms MaxIterationCount=15 MinIterationCount=5 WarmupCount=6 Quotes=True Reader=String ``` -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|------------ |--------- |------ |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 6.926 ms | 1.00 | 33 | 4819.0 | 138.5 | 948 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Row | 50000 | 7.226 ms | 1.04 | 33 | 4618.8 | 144.5 | 948 B | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 20.511 ms | 2.97 | 33 | 1627.3 | 410.2 | 7426 B | 7.83 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 15.893 ms | 2.26 | 33 | 2100.1 | 317.9 | 111389450 B | 117,499.42 | -| CsvHelper | .NET 7.0 | Row | 50000 | 61.713 ms | 8.91 | 33 | 540.8 | 1234.3 | 24234 B | 25.56 | -| Sep______ | .NET 8.0 | Row | 50000 | 6.838 ms | 0.99 | 33 | 4881.5 | 136.8 | 945 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Row | 50000 | 6.963 ms | 1.01 | 33 | 4793.3 | 139.3 | 946 B | 1.00 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 18.535 ms | 2.60 | 33 | 1800.8 | 370.7 | 7411 B | 7.82 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 16.519 ms | 2.38 | 33 | 2020.5 | 330.4 | 111389436 B | 117,499.41 | -| CsvHelper | .NET 8.0 | Row | 50000 | 53.122 ms | 7.67 | 33 | 628.3 | 1062.4 | 21091 B | 22.25 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 8.502 ms | 1.00 | 33 | 3926.0 | 170.0 | 951 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Cols | 50000 | 8.784 ms | 1.03 | 33 | 3799.6 | 175.7 | 953 B | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 23.206 ms | 2.73 | 33 | 1438.3 | 464.1 | 7430 B | 7.81 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 16.651 ms | 1.94 | 33 | 2004.6 | 333.0 | 111389446 B | 117,128.75 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 98.855 ms | 11.63 | 33 | 337.6 | 1977.1 | 457022 B | 480.57 | -| Sep______ | .NET 8.0 | Cols | 50000 | 7.616 ms | 0.90 | 33 | 4382.5 | 152.3 | 947 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Cols | 50000 | 8.560 ms | 1.01 | 33 | 3899.3 | 171.2 | 950 B | 1.00 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 20.405 ms | 2.40 | 33 | 1635.8 | 408.1 | 7419 B | 7.80 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 15.310 ms | 1.80 | 33 | 2180.1 | 306.2 | 111389441 B | 117,128.75 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 85.567 ms | 10.05 | 33 | 390.1 | 1711.3 | 457060 B | 480.61 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 41.325 ms | 1.00 | 33 | 807.7 | 826.5 | 14139450 B | 1.00 | -| Sep_Unescape| .NET 7.0 | Asset | 50000 | 38.076 ms | 0.93 | 33 | 876.6 | 761.5 | 14130898 B | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 61.446 ms | 1.49 | 33 | 543.2 | 1228.9 | 14298344 B | 1.01 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 125.874 ms | 3.05 | 33 | 265.2 | 2517.5 | 125239164 B | 8.86 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 115.031 ms | 2.77 | 33 | 290.2 | 2300.6 | 14307054 B | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 37.937 ms | 0.92 | 33 | 879.8 | 758.7 | 14139438 B | 1.00 | -| Sep_Unescape| .NET 8.0 | Asset | 50000 | 34.323 ms | 0.83 | 33 | 972.5 | 686.5 | 14130926 B | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 53.940 ms | 1.30 | 33 | 618.8 | 1078.8 | 14296672 B | 1.01 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 118.606 ms | 2.88 | 33 | 281.4 | 2372.1 | 125239072 B | 8.86 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 99.200 ms | 2.38 | 33 | 336.5 | 1984.0 | 14306154 B | 1.01 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 50000 | 7.453 ms | 1.00 | 33 | 4478.2 | 149.1 | 944 B | 1.00 | +| Sep_Unescape | Row | 50000 | 7.381 ms | 0.99 | 33 | 4522.2 | 147.6 | 944 B | 1.00 | +| Sylvan___ | Row | 50000 | 18.035 ms | 2.40 | 33 | 1850.7 | 360.7 | 7390 B | 7.83 | +| ReadLine_ | Row | 50000 | 14.689 ms | 1.97 | 33 | 2272.3 | 293.8 | 111389433 B | 117,997.28 | +| CsvHelper | Row | 50000 | 52.212 ms | 7.01 | 33 | 639.3 | 1044.2 | 21081 B | 22.33 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 7.780 ms | 1.00 | 33 | 4290.1 | 155.6 | 946 B | 1.00 | +| Sep_Unescape | Cols | 50000 | 8.337 ms | 1.07 | 33 | 4003.6 | 166.7 | 946 B | 1.00 | +| Sylvan___ | Cols | 50000 | 20.329 ms | 2.60 | 33 | 1641.9 | 406.6 | 7411 B | 7.83 | +| ReadLine_ | Cols | 50000 | 15.540 ms | 1.99 | 33 | 2147.8 | 310.8 | 111389433 B | 117,747.82 | +| CsvHelper | Cols | 50000 | 83.149 ms | 10.64 | 33 | 401.4 | 1663.0 | 457060 B | 483.15 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 35.903 ms | 1.00 | 33 | 929.6 | 718.1 | 14139438 B | 1.00 | +| Sep_Unescape | Asset | 50000 | 34.316 ms | 0.93 | 33 | 972.7 | 686.3 | 14130926 B | 1.00 | +| Sylvan___ | Asset | 50000 | 51.465 ms | 1.43 | 33 | 648.5 | 1029.3 | 14296613 B | 1.01 | +| ReadLine_ | Asset | 50000 | 117.914 ms | 3.29 | 33 | 283.1 | 2358.3 | 125239144 B | 8.86 | +| CsvHelper | Asset | 50000 | 96.670 ms | 2.57 | 33 | 345.3 | 1933.4 | 14307304 B | 1.01 | diff --git a/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/FloatsReaderBench.md b/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/FloatsReaderBench.md index 16c66a43..6ff026c3 100644 --- a/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/FloatsReaderBench.md +++ b/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/FloatsReaderBench.md @@ -1,41 +1,29 @@ -``` ini +``` -BenchmarkDotNet=v0.13.5, OS=Windows 10 (10.0.17763.3287/1809/October2018Update/Redstone5) +BenchmarkDotNet v0.13.11-nightly.20231116.103, Windows 10 (10.0.17763.3287/1809/October2018Update/Redstone5) Intel Xeon Silver 4316 CPU 2.30GHz, 1 CPU, 40 logical and 20 physical cores -.NET SDK=8.0.100-preview.7.23376.3 - [Host] : .NET 8.0.0 (8.0.23.37506), X64 RyuJIT AVX2 - Job-UHOMSO : .NET 7.0.10 (7.0.1023.36312), X64 RyuJIT AVX2 - Job-SRTOSO : .NET 8.0.0 (8.0.23.37506), X64 RyuJIT AVX2 +.NET SDK 8.0.100 + [Host] : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI + Job-CEECDD : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI -InvocationCount=Default IterationTime=300.0000 ms MinIterationCount=5 +Runtime=.NET 8.0 Toolchain=net80 InvocationCount=Default +IterationTime=350.0000 ms MaxIterationCount=15 MinIterationCount=5 WarmupCount=6 Reader=String ``` -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------- |------ |-----------:|------:|---:|-------:|--------:|------------:|------------:| -| Sep______ | .NET 7.0 | Row | 25000 | 5.417 ms | 1.00 | 27 | 5033.3 | 216.7 | 1.57 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 25000 | 6.328 ms | 1.17 | 27 | 4308.3 | 253.1 | 10.56 KB | 6.74 | -| ReadLine_ | .NET 7.0 | Row | 25000 | 28.805 ms | 5.35 | 27 | 946.5 | 1152.2 | 89986.9 KB | 57,412.20 | -| CsvHelper | .NET 7.0 | Row | 25000 | 76.930 ms | 14.20 | 27 | 354.4 | 3077.2 | 20.74 KB | 13.23 | -| Sep______ | .NET 8.0 | Row | 25000 | 5.841 ms | 1.08 | 27 | 4667.7 | 233.6 | 1.72 KB | 1.10 | -| Sylvan___ | .NET 8.0 | Row | 25000 | 6.526 ms | 1.20 | 27 | 4177.8 | 261.0 | 10.56 KB | 6.74 | -| ReadLine_ | .NET 8.0 | Row | 25000 | 28.041 ms | 5.18 | 27 | 972.3 | 1121.7 | 89986.9 KB | 57,412.20 | -| CsvHelper | .NET 8.0 | Row | 25000 | 77.364 ms | 14.27 | 27 | 352.4 | 3094.5 | 20.77 KB | 13.25 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 25000 | 6.921 ms | 1.00 | 27 | 3939.4 | 276.8 | 1.57 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 25000 | 10.300 ms | 1.49 | 27 | 2647.0 | 412.0 | 10.58 KB | 6.72 | -| ReadLine_ | .NET 7.0 | Cols | 25000 | 29.077 ms | 4.19 | 27 | 937.6 | 1163.1 | 89986.9 KB | 57,198.38 | -| CsvHelper | .NET 7.0 | Cols | 25000 | 95.212 ms | 13.76 | 27 | 286.3 | 3808.5 | 28451.27 KB | 18,084.48 | -| Sep______ | .NET 8.0 | Cols | 25000 | 6.685 ms | 0.97 | 27 | 4078.0 | 267.4 | 1.73 KB | 1.10 | -| Sylvan___ | .NET 8.0 | Cols | 25000 | 9.724 ms | 1.41 | 27 | 2803.8 | 388.9 | 10.57 KB | 6.72 | -| ReadLine_ | .NET 8.0 | Cols | 25000 | 27.190 ms | 3.94 | 27 | 1002.7 | 1087.6 | 89986.89 KB | 57,198.37 | -| CsvHelper | .NET 8.0 | Cols | 25000 | 81.925 ms | 11.88 | 27 | 332.8 | 3277.0 | 28451.84 KB | 18,084.85 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Floats | 25000 | 61.789 ms | 1.00 | 27 | 441.2 | 2471.6 | 9.1 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Floats | 25000 | 146.737 ms | 2.37 | 27 | 185.8 | 5869.5 | 19.62 KB | 2.16 | -| ReadLine_ | .NET 7.0 | Floats | 25000 | 168.368 ms | 2.73 | 27 | 161.9 | 6734.7 | 89993.63 KB | 9,894.08 | -| CsvHelper | .NET 7.0 | Floats | 25000 | 264.441 ms | 4.28 | 27 | 103.1 | 10577.6 | 22039.48 KB | 2,423.07 | -| Sep______ | .NET 8.0 | Floats | 25000 | 44.122 ms | 0.71 | 27 | 617.9 | 1764.9 | 9.08 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Floats | 25000 | 135.504 ms | 2.19 | 27 | 201.2 | 5420.2 | 19.07 KB | 2.10 | -| ReadLine_ | .NET 8.0 | Floats | 25000 | 151.400 ms | 2.45 | 27 | 180.1 | 6056.0 | 89990.48 KB | 9,893.74 | -| CsvHelper | .NET 8.0 | Floats | 25000 | 231.426 ms | 3.75 | 27 | 117.8 | 9257.1 | 22036.58 KB | 2,422.75 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|---------- |------- |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 25000 | 3.698 ms | 1.00 | 20 | 5494.3 | 147.9 | 1.31 KB | 1.00 | +| Sylvan___ | Row | 25000 | 4.570 ms | 1.24 | 20 | 4446.5 | 182.8 | 10.03 KB | 7.67 | +| ReadLine_ | Row | 25000 | 20.949 ms | 5.66 | 20 | 970.0 | 837.9 | 73489.67 KB | 56,201.21 | +| CsvHelper | Row | 25000 | 56.975 ms | 15.41 | 20 | 356.6 | 2279.0 | 20.77 KB | 15.89 | +| | | | | | | | | | | +| Sep______ | Cols | 25000 | 5.087 ms | 1.00 | 20 | 3994.7 | 203.5 | 1.31 KB | 1.00 | +| Sylvan___ | Cols | 25000 | 7.370 ms | 1.45 | 20 | 2757.1 | 294.8 | 10.04 KB | 7.68 | +| ReadLine_ | Cols | 25000 | 21.340 ms | 4.20 | 20 | 952.2 | 853.6 | 73489.67 KB | 56,243.22 | +| CsvHelper | Cols | 25000 | 60.316 ms | 11.86 | 20 | 336.9 | 2412.6 | 21340.99 KB | 16,332.72 | +| | | | | | | | | | | +| Sep______ | Floats | 25000 | 41.747 ms | 1.00 | 20 | 486.7 | 1669.9 | 8.12 KB | 1.00 | +| Sylvan___ | Floats | 25000 | 138.798 ms | 3.33 | 20 | 146.4 | 5551.9 | 18.43 KB | 2.27 | +| ReadLine_ | Floats | 25000 | 148.648 ms | 3.56 | 20 | 136.7 | 5945.9 | 73493.3 KB | 9,054.03 | +| CsvHelper | Floats | 25000 | 212.156 ms | 5.08 | 20 | 95.8 | 8486.2 | 22062.78 KB | 2,718.03 | diff --git a/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/PackageAssetsBench.md b/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/PackageAssetsBench.md index 39e90d00..75bb35ec 100644 --- a/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/PackageAssetsBench.md +++ b/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/PackageAssetsBench.md @@ -1,42 +1,33 @@ -``` ini +``` -BenchmarkDotNet=v0.13.5, OS=Windows 10 (10.0.17763.3287/1809/October2018Update/Redstone5) +BenchmarkDotNet v0.13.11-nightly.20231116.103, Windows 10 (10.0.17763.3287/1809/October2018Update/Redstone5) Intel Xeon Silver 4316 CPU 2.30GHz, 1 CPU, 40 logical and 20 physical cores -.NET SDK=8.0.100-preview.7.23376.3 - [Host] : .NET 8.0.0 (8.0.23.37506), X64 RyuJIT AVX2 - Job-UHOMSO : .NET 7.0.10 (7.0.1023.36312), X64 RyuJIT AVX2 - Job-SRTOSO : .NET 8.0.0 (8.0.23.37506), X64 RyuJIT AVX2 +.NET SDK 8.0.100 + [Host] : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI + Job-CEECDD : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI -InvocationCount=Default IterationTime=300.0000 ms MaxIterationCount=Default +Job=Job-CEECDD Runtime=.NET 8.0 Toolchain=net80 +InvocationCount=Default IterationTime=350.0000 ms MaxIterationCount=15 MinIterationCount=5 WarmupCount=6 Quotes=False Reader=String ``` -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------ |------ |-----------:|------:|---:|-------:|-------:|-------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 5.948 ms | 1.00 | 29 | 4905.8 | 119.0 | 1.14 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 6.733 ms | 1.13 | 29 | 4334.0 | 134.7 | 7.18 KB | 6.29 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 27.988 ms | 4.70 | 29 | 1042.6 | 559.8 | 88608.29 KB | 77,617.53 | -| CsvHelper | .NET 7.0 | Row | 50000 | 114.902 ms | 19.31 | 29 | 254.0 | 2298.0 | 20.65 KB | 18.09 | -| Sep______ | .NET 8.0 | Row | 50000 | 5.440 ms | 0.91 | 29 | 5363.8 | 108.8 | 1.29 KB | 1.13 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 6.383 ms | 1.07 | 29 | 4571.5 | 127.7 | 7.18 KB | 6.29 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 26.933 ms | 4.53 | 29 | 1083.5 | 538.7 | 88608.26 KB | 77,617.50 | -| CsvHelper | .NET 8.0 | Row | 50000 | 90.332 ms | 15.18 | 29 | 323.0 | 1806.6 | 20.69 KB | 18.12 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 7.401 ms | 1.00 | 29 | 3942.7 | 148.0 | 1.15 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 11.545 ms | 1.56 | 29 | 2527.5 | 230.9 | 7.19 KB | 6.28 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 28.892 ms | 3.90 | 29 | 1010.0 | 577.8 | 88608.29 KB | 77,352.84 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 157.705 ms | 21.31 | 29 | 185.0 | 3154.1 | 446.5 KB | 389.78 | -| Sep______ | .NET 8.0 | Cols | 50000 | 6.683 ms | 0.90 | 29 | 4366.8 | 133.7 | 1.3 KB | 1.13 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 10.417 ms | 1.41 | 29 | 2801.2 | 208.3 | 7.19 KB | 6.28 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 27.292 ms | 3.69 | 29 | 1069.2 | 545.8 | 88608.26 KB | 77,352.82 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 141.559 ms | 19.11 | 29 | 206.1 | 2831.2 | 446.45 KB | 389.74 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 58.708 ms | 1.00 | 29 | 497.1 | 1174.2 | 13799.65 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 76.436 ms | 1.31 | 29 | 381.8 | 1528.7 | 14025.71 KB | 1.02 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 174.574 ms | 3.00 | 29 | 167.2 | 3491.5 | 102133.35 KB | 7.40 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 172.747 ms | 2.95 | 29 | 168.9 | 3454.9 | 13970.85 KB | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 55.672 ms | 0.95 | 29 | 524.2 | 1113.4 | 13800.53 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 71.428 ms | 1.22 | 29 | 408.5 | 1428.6 | 14026.38 KB | 1.02 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 162.203 ms | 2.76 | 29 | 179.9 | 3244.1 | 102133.69 KB | 7.40 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 161.805 ms | 2.76 | 29 | 180.3 | 3236.1 | 13970.8 KB | 1.01 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 50000 | 5.253 ms | 1.00 | 29 | 5554.8 | 105.1 | 1.07 KB | 1.00 | +| Sep_Unescape | Row | 50000 | 5.287 ms | 1.01 | 29 | 5519.5 | 105.7 | 1.07 KB | 1.00 | +| Sylvan___ | Row | 50000 | 5.925 ms | 1.13 | 29 | 4925.4 | 118.5 | 7.21 KB | 6.72 | +| ReadLine_ | Row | 50000 | 25.585 ms | 4.87 | 29 | 1140.5 | 511.7 | 88608.26 KB | 82,561.29 | +| CsvHelper | Row | 50000 | 89.448 ms | 17.02 | 29 | 326.2 | 1789.0 | 20.69 KB | 19.28 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 7.123 ms | 1.00 | 29 | 4097.0 | 142.5 | 1.08 KB | 1.00 | +| Sep_Unescape | Cols | 50000 | 7.953 ms | 1.12 | 29 | 3669.4 | 159.1 | 1.08 KB | 1.00 | +| Sylvan___ | Cols | 50000 | 10.047 ms | 1.41 | 29 | 2904.6 | 200.9 | 7.22 KB | 6.71 | +| ReadLine_ | Cols | 50000 | 25.720 ms | 3.61 | 29 | 1134.6 | 514.4 | 88608.26 KB | 82,261.89 | +| CsvHelper | Cols | 50000 | 138.163 ms | 19.40 | 29 | 211.2 | 2763.3 | 446.28 KB | 414.31 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 53.365 ms | 1.00 | 29 | 546.8 | 1067.3 | 13799.86 KB | 1.00 | +| Sep_Unescape | Asset | 50000 | 53.388 ms | 1.00 | 29 | 546.6 | 1067.8 | 13800.99 KB | 1.00 | +| Sylvan___ | Asset | 50000 | 67.865 ms | 1.27 | 29 | 430.0 | 1357.3 | 13962.46 KB | 1.01 | +| ReadLine_ | Asset | 50000 | 153.589 ms | 2.88 | 29 | 190.0 | 3071.8 | 102133.4 KB | 7.40 | +| CsvHelper | Asset | 50000 | 159.288 ms | 2.99 | 29 | 183.2 | 3185.8 | 13970.8 KB | 1.01 | diff --git a/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/PackageAssetsBenchQuotes.md b/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/PackageAssetsBenchQuotes.md index 8d9d93c6..8c203e11 100644 --- a/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/PackageAssetsBenchQuotes.md +++ b/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/PackageAssetsBenchQuotes.md @@ -1,42 +1,33 @@ -``` ini +``` -BenchmarkDotNet=v0.13.5, OS=Windows 10 (10.0.17763.3287/1809/October2018Update/Redstone5) +BenchmarkDotNet v0.13.11-nightly.20231116.103, Windows 10 (10.0.17763.3287/1809/October2018Update/Redstone5) Intel Xeon Silver 4316 CPU 2.30GHz, 1 CPU, 40 logical and 20 physical cores -.NET SDK=8.0.100-preview.7.23376.3 - [Host] : .NET 8.0.0 (8.0.23.37506), X64 RyuJIT AVX2 - Job-UHOMSO : .NET 7.0.10 (7.0.1023.36312), X64 RyuJIT AVX2 - Job-SRTOSO : .NET 8.0.0 (8.0.23.37506), X64 RyuJIT AVX2 +.NET SDK 8.0.100 + [Host] : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI + Job-CEECDD : .NET 8.0.0 (8.0.23.53103), X64 RyuJIT AVX-512F+CD+BW+DQ+VL+VBMI -InvocationCount=Default IterationTime=300.0000 ms MaxIterationCount=Default +Job=Job-CEECDD Runtime=.NET 8.0 Toolchain=net80 +InvocationCount=Default IterationTime=350.0000 ms MaxIterationCount=15 MinIterationCount=5 WarmupCount=6 Quotes=True Reader=String ``` -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------ |------ |----------:|------:|---:|-------:|-------:|-------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 15.13 ms | 1.00 | 33 | 2206.5 | 302.5 | 1.17 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 42.25 ms | 2.80 | 33 | 790.0 | 845.0 | 7.26 KB | 6.22 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 32.95 ms | 2.18 | 33 | 1013.0 | 659.0 | 108778.78 KB | 93,135.01 | -| CsvHelper | .NET 7.0 | Row | 50000 | 121.55 ms | 8.03 | 33 | 274.6 | 2431.1 | 20.84 KB | 17.84 | -| Sep______ | .NET 8.0 | Row | 50000 | 12.34 ms | 0.82 | 33 | 2705.0 | 246.8 | 1.31 KB | 1.12 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 35.42 ms | 2.34 | 33 | 942.4 | 708.4 | 7.24 KB | 6.20 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 32.15 ms | 2.13 | 33 | 1038.3 | 642.9 | 108778.77 KB | 93,135.00 | -| CsvHelper | .NET 8.0 | Row | 50000 | 104.02 ms | 6.88 | 33 | 320.9 | 2080.4 | 20.69 KB | 17.72 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 15.80 ms | 1.00 | 33 | 2112.6 | 316.0 | 1.18 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 45.83 ms | 2.91 | 33 | 728.3 | 916.6 | 7.33 KB | 6.24 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 33.98 ms | 2.15 | 33 | 982.2 | 679.7 | 108778.78 KB | 92,516.17 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 177.61 ms | 11.23 | 33 | 187.9 | 3552.2 | 446.43 KB | 379.69 | -| Sep______ | .NET 8.0 | Cols | 50000 | 15.59 ms | 0.99 | 33 | 2140.6 | 311.8 | 1.5 KB | 1.28 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 38.85 ms | 2.46 | 33 | 859.2 | 777.0 | 7.25 KB | 6.16 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 32.64 ms | 2.06 | 33 | 1022.6 | 652.8 | 108778.77 KB | 92,516.16 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 161.84 ms | 10.23 | 33 | 206.2 | 3236.9 | 446.45 KB | 379.70 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 71.19 ms | 1.00 | 33 | 468.9 | 1423.8 | 13808.03 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 106.82 ms | 1.50 | 33 | 312.5 | 2136.5 | 14025.33 KB | 1.02 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 205.79 ms | 2.89 | 33 | 162.2 | 4115.9 | 122304.11 KB | 8.86 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 192.54 ms | 2.71 | 33 | 173.3 | 3850.9 | 13970.85 KB | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 52.18 ms | 0.74 | 33 | 639.6 | 1043.7 | 13808.73 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 96.05 ms | 1.35 | 33 | 347.5 | 1921.0 | 14026.75 KB | 1.02 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 202.80 ms | 2.82 | 33 | 164.6 | 4056.0 | 122304.21 KB | 8.86 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 179.61 ms | 2.52 | 33 | 185.8 | 3592.1 | 13970.8 KB | 1.01 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |----------:|------:|---:|-------:|-------:|-------------:|------------:| +| Sep______ | Row | 50000 | 13.72 ms | 1.00 | 33 | 2433.1 | 274.4 | 1.09 KB | 1.00 | +| Sep_Unescape | Row | 50000 | 14.36 ms | 1.05 | 33 | 2325.0 | 287.1 | 1.09 KB | 1.00 | +| Sylvan___ | Row | 50000 | 34.97 ms | 2.55 | 33 | 954.3 | 699.5 | 7.26 KB | 6.66 | +| ReadLine_ | Row | 50000 | 29.99 ms | 2.18 | 33 | 1113.0 | 599.8 | 108778.77 KB | 99,721.98 | +| CsvHelper | Row | 50000 | 102.27 ms | 7.45 | 33 | 326.4 | 2045.5 | 20.69 KB | 18.97 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 15.38 ms | 1.00 | 33 | 2169.7 | 307.7 | 1.09 KB | 1.00 | +| Sep_Unescape | Cols | 50000 | 17.71 ms | 1.15 | 33 | 1884.8 | 354.2 | 1.1 KB | 1.01 | +| Sylvan___ | Cols | 50000 | 40.92 ms | 2.71 | 33 | 815.6 | 818.5 | 7.27 KB | 6.64 | +| ReadLine_ | Cols | 50000 | 30.22 ms | 1.96 | 33 | 1104.5 | 604.4 | 108778.77 KB | 99,366.16 | +| CsvHelper | Cols | 50000 | 159.90 ms | 10.39 | 33 | 208.7 | 3198.0 | 446.45 KB | 407.81 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 66.17 ms | 1.00 | 33 | 504.4 | 1323.4 | 13809.96 KB | 1.00 | +| Sep_Unescape | Asset | 50000 | 62.28 ms | 0.95 | 33 | 536.0 | 1245.5 | 13799.79 KB | 1.00 | +| Sylvan___ | Asset | 50000 | 95.92 ms | 1.45 | 33 | 348.0 | 1918.4 | 13962.73 KB | 1.01 | +| ReadLine_ | Asset | 50000 | 193.85 ms | 2.96 | 33 | 172.2 | 3876.9 | 122304.1 KB | 8.86 | +| CsvHelper | Asset | 50000 | 178.36 ms | 2.70 | 33 | 187.1 | 3567.2 | 13970.8 KB | 1.01 | diff --git a/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/Versions.txt b/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/Versions.txt index 11d4ffb1..b8465b92 100644 --- a/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/Versions.txt +++ b/benchmarks/Intel.Xeon.Silver.4316.2.30GHz/Versions.txt @@ -1 +1 @@ -Sep 0.2.3, Sylvan 1.3.2.0, CsvHelper 30.0.1.0 \ No newline at end of file +Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0 \ No newline at end of file diff --git a/benchmarks/Neoverse.N1/FloatsReaderBench.md b/benchmarks/Neoverse.N1/FloatsReaderBench.md index 57d0902c..ea6cfa07 100644 --- a/benchmarks/Neoverse.N1/FloatsReaderBench.md +++ b/benchmarks/Neoverse.N1/FloatsReaderBench.md @@ -1,41 +1,29 @@ -``` ini +``` -BenchmarkDotNet=v0.13.5, OS=ubuntu 22.04 +BenchmarkDotNet v0.13.10, Ubuntu 22.04.2 LTS (Jammy Jellyfish) Unknown processor -.NET SDK=8.0.100-preview.7.23376.3 - [Host] : .NET 8.0.0 (8.0.23.37506), Arm64 RyuJIT AdvSIMD - Job-GDSTLJ : .NET 7.0.10 (7.0.1023.36801), Arm64 RyuJIT AdvSIMD - Job-WFSLTV : .NET 8.0.0 (8.0.23.37506), Arm64 RyuJIT AdvSIMD +.NET SDK 8.0.100 + [Host] : .NET 8.0.0 (8.0.23.53103), Arm64 RyuJIT AdvSIMD + Job-HCCPYN : .NET 8.0.0 (8.0.23.53103), Arm64 RyuJIT AdvSIMD -InvocationCount=Default IterationTime=300.0000 ms MinIterationCount=5 +Runtime=.NET 8.0 Toolchain=net80 InvocationCount=Default +IterationTime=350.0000 ms MaxIterationCount=15 MinIterationCount=5 WarmupCount=6 Reader=String ``` -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------- |------ |----------:|------:|---:|-------:|--------:|------------:|------------:| -| Sep______ | .NET 7.0 | Row | 25000 | 11.54 ms | 1.00 | 27 | 2359.4 | 461.4 | 1.54 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 25000 | 37.00 ms | 3.21 | 27 | 735.6 | 1479.9 | 10.48 KB | 6.80 | -| ReadLine_ | .NET 7.0 | Row | 25000 | 40.34 ms | 3.50 | 27 | 674.7 | 1613.6 | 89986.96 KB | 58,394.58 | -| CsvHelper | .NET 7.0 | Row | 25000 | 84.31 ms | 7.31 | 27 | 322.8 | 3372.4 | 20.82 KB | 13.51 | -| Sep______ | .NET 8.0 | Row | 25000 | 11.63 ms | 1.01 | 27 | 2339.4 | 465.3 | 1.54 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Row | 25000 | 38.26 ms | 3.32 | 27 | 711.3 | 1530.4 | 10.3 KB | 6.69 | -| ReadLine_ | .NET 8.0 | Row | 25000 | 40.77 ms | 3.53 | 27 | 667.5 | 1630.8 | 89987.06 KB | 58,394.64 | -| CsvHelper | .NET 8.0 | Row | 25000 | 79.69 ms | 6.91 | 27 | 341.5 | 3187.7 | 20.86 KB | 13.53 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 25000 | 13.37 ms | 1.00 | 27 | 2035.0 | 535.0 | 1.55 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 25000 | 41.82 ms | 3.13 | 27 | 650.8 | 1672.8 | 10.48 KB | 6.74 | -| ReadLine_ | .NET 7.0 | Cols | 25000 | 42.16 ms | 3.15 | 27 | 645.5 | 1686.4 | 89986.99 KB | 57,881.08 | -| CsvHelper | .NET 7.0 | Cols | 25000 | 90.73 ms | 6.79 | 27 | 300.0 | 3629.2 | 28451.35 KB | 18,300.37 | -| Sep______ | .NET 8.0 | Cols | 25000 | 13.74 ms | 1.03 | 27 | 1980.9 | 549.6 | 1.55 KB | 0.99 | -| Sylvan___ | .NET 8.0 | Cols | 25000 | 42.55 ms | 3.18 | 27 | 639.7 | 1701.9 | 10.33 KB | 6.64 | -| ReadLine_ | .NET 8.0 | Cols | 25000 | 38.88 ms | 2.90 | 27 | 700.0 | 1555.1 | 89987.06 KB | 57,881.12 | -| CsvHelper | .NET 8.0 | Cols | 25000 | 85.89 ms | 6.42 | 27 | 316.9 | 3435.7 | 28451.39 KB | 18,300.39 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Floats | 25000 | 64.82 ms | 1.00 | 27 | 419.9 | 2592.6 | 9.12 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Floats | 25000 | 209.21 ms | 3.23 | 27 | 130.1 | 8368.4 | 19.55 KB | 2.15 | -| ReadLine_ | .NET 7.0 | Floats | 25000 | 214.76 ms | 3.31 | 27 | 126.7 | 8590.6 | 89994.37 KB | 9,872.96 | -| CsvHelper | .NET 7.0 | Floats | 25000 | 297.94 ms | 4.60 | 27 | 91.3 | 11917.5 | 22040.05 KB | 2,417.94 | -| Sep______ | .NET 8.0 | Floats | 25000 | 53.37 ms | 0.82 | 27 | 510.0 | 2134.7 | 8.95 KB | 0.98 | -| Sylvan___ | .NET 8.0 | Floats | 25000 | 164.95 ms | 2.55 | 27 | 165.0 | 6598.0 | 18.84 KB | 2.07 | -| ReadLine_ | .NET 8.0 | Floats | 25000 | 160.20 ms | 2.47 | 27 | 169.9 | 6408.1 | 89990.64 KB | 9,872.55 | -| CsvHelper | .NET 8.0 | Floats | 25000 | 231.15 ms | 3.57 | 27 | 117.7 | 9245.8 | 22037.14 KB | 2,417.62 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|---------- |------- |------ |-----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 25000 | 9.182 ms | 1.00 | 20 | 2207.7 | 367.3 | 1.11 KB | 1.00 | +| Sylvan___ | Row | 25000 | 30.729 ms | 3.35 | 20 | 659.7 | 1229.1 | 9.74 KB | 8.80 | +| ReadLine_ | Row | 25000 | 33.696 ms | 3.67 | 20 | 601.6 | 1347.8 | 73489.73 KB | 66,419.67 | +| CsvHelper | Row | 25000 | 59.282 ms | 6.46 | 20 | 342.0 | 2371.3 | 20.71 KB | 18.71 | +| | | | | | | | | | | +| Sep______ | Cols | 25000 | 11.392 ms | 1.00 | 20 | 1779.4 | 455.7 | 1.12 KB | 1.00 | +| Sylvan___ | Cols | 25000 | 34.813 ms | 3.06 | 20 | 582.3 | 1392.5 | 9.75 KB | 8.70 | +| ReadLine_ | Cols | 25000 | 32.510 ms | 2.85 | 20 | 623.6 | 1300.4 | 73489.75 KB | 65,551.83 | +| CsvHelper | Cols | 25000 | 64.080 ms | 5.63 | 20 | 316.4 | 2563.2 | 21341.07 KB | 19,035.94 | +| | | | | | | | | | | +| Sep______ | Floats | 25000 | 52.081 ms | 1.00 | 20 | 389.2 | 2083.2 | 7.97 KB | 1.00 | +| Sylvan___ | Floats | 25000 | 169.677 ms | 3.26 | 20 | 119.5 | 6787.1 | 18.2 KB | 2.28 | +| ReadLine_ | Floats | 25000 | 162.237 ms | 3.11 | 20 | 125.0 | 6489.5 | 73493.46 KB | 9,221.58 | +| CsvHelper | Floats | 25000 | 220.231 ms | 4.23 | 20 | 92.0 | 8809.2 | 22063.34 KB | 2,768.39 | diff --git a/benchmarks/Neoverse.N1/PackageAssetsBench.md b/benchmarks/Neoverse.N1/PackageAssetsBench.md index 13fd3067..9992df7b 100644 --- a/benchmarks/Neoverse.N1/PackageAssetsBench.md +++ b/benchmarks/Neoverse.N1/PackageAssetsBench.md @@ -1,42 +1,33 @@ -``` ini +``` -BenchmarkDotNet=v0.13.5, OS=ubuntu 22.04 +BenchmarkDotNet v0.13.10, Ubuntu 22.04.2 LTS (Jammy Jellyfish) Unknown processor -.NET SDK=8.0.100-preview.7.23376.3 - [Host] : .NET 8.0.0 (8.0.23.37506), Arm64 RyuJIT AdvSIMD - Job-GDSTLJ : .NET 7.0.10 (7.0.1023.36801), Arm64 RyuJIT AdvSIMD - Job-WFSLTV : .NET 8.0.0 (8.0.23.37506), Arm64 RyuJIT AdvSIMD +.NET SDK 8.0.100 + [Host] : .NET 8.0.0 (8.0.23.53103), Arm64 RyuJIT AdvSIMD + Job-HCCPYN : .NET 8.0.0 (8.0.23.53103), Arm64 RyuJIT AdvSIMD -InvocationCount=Default IterationTime=300.0000 ms MaxIterationCount=Default +Job=Job-HCCPYN Runtime=.NET 8.0 Toolchain=net80 +InvocationCount=Default IterationTime=350.0000 ms MaxIterationCount=15 MinIterationCount=5 WarmupCount=6 Quotes=False Reader=String ``` -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------ |------ |----------:|------:|---:|-------:|-------:|-------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 12.15 ms | 1.00 | 29 | 2393.9 | 243.0 | 1.11 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 34.31 ms | 2.82 | 29 | 847.7 | 686.2 | 6.25 KB | 5.64 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 40.99 ms | 3.37 | 29 | 709.6 | 819.8 | 88608.34 KB | 79,942.68 | -| CsvHelper | .NET 7.0 | Row | 50000 | 107.97 ms | 8.89 | 29 | 269.4 | 2159.4 | 20.74 KB | 18.71 | -| Sep______ | .NET 8.0 | Row | 50000 | 12.01 ms | 0.99 | 29 | 2421.2 | 240.3 | 1.1 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 30.14 ms | 2.48 | 29 | 965.0 | 602.8 | 6.09 KB | 5.50 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 39.05 ms | 3.21 | 29 | 744.9 | 780.9 | 88608.41 KB | 79,942.74 | -| CsvHelper | .NET 8.0 | Row | 50000 | 91.57 ms | 7.54 | 29 | 317.6 | 1831.5 | 20.77 KB | 18.74 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 14.52 ms | 1.00 | 29 | 2002.8 | 290.5 | 1.12 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 40.36 ms | 2.78 | 29 | 720.6 | 807.2 | 6.25 KB | 5.57 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 41.92 ms | 2.89 | 29 | 693.8 | 838.5 | 88608.36 KB | 78,899.97 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 156.03 ms | 10.74 | 29 | 186.4 | 3120.6 | 446.66 KB | 397.72 | -| Sep______ | .NET 8.0 | Cols | 50000 | 14.24 ms | 0.98 | 29 | 2042.8 | 284.8 | 1.11 KB | 0.99 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 35.23 ms | 2.43 | 29 | 825.6 | 704.6 | 6.11 KB | 5.44 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 37.10 ms | 2.55 | 29 | 784.0 | 742.0 | 88608.32 KB | 78,899.93 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 138.20 ms | 9.52 | 29 | 210.5 | 2763.9 | 446.61 KB | 397.68 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 70.16 ms | 1.00 | 29 | 414.5 | 1403.3 | 13800.75 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 107.28 ms | 1.53 | 29 | 271.1 | 2145.6 | 14025.09 KB | 1.02 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 159.87 ms | 2.27 | 29 | 181.9 | 3197.4 | 102134.11 KB | 7.40 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 189.44 ms | 2.69 | 29 | 153.5 | 3788.8 | 13973.66 KB | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 67.72 ms | 0.96 | 29 | 429.5 | 1354.3 | 13800.73 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 100.09 ms | 1.43 | 29 | 290.6 | 2001.8 | 14024.23 KB | 1.02 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 144.19 ms | 2.06 | 29 | 201.7 | 2883.8 | 102134.74 KB | 7.40 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 170.81 ms | 2.43 | 29 | 170.3 | 3416.1 | 13971.32 KB | 1.01 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 50000 | 12.56 ms | 1.00 | 29 | 2315.4 | 251.2 | 904 B | 1.00 | +| Sep_Unescape | Row | 50000 | 12.46 ms | 0.99 | 29 | 2334.2 | 249.2 | 902 B | 1.00 | +| Sylvan___ | Row | 50000 | 31.26 ms | 2.49 | 29 | 930.4 | 625.2 | 6269 B | 6.93 | +| ReadLine_ | Row | 50000 | 38.28 ms | 3.05 | 29 | 759.8 | 765.6 | 90734916 B | 100,370.48 | +| CsvHelper | Row | 50000 | 91.28 ms | 7.27 | 29 | 318.6 | 1825.6 | 21272 B | 23.53 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 14.96 ms | 1.00 | 29 | 1944.2 | 299.2 | 913 B | 1.00 | +| Sep_Unescape | Cols | 50000 | 15.70 ms | 1.05 | 29 | 1853.0 | 313.9 | 915 B | 1.00 | +| Sylvan___ | Cols | 50000 | 35.36 ms | 2.36 | 29 | 822.6 | 707.2 | 6288 B | 6.89 | +| ReadLine_ | Cols | 50000 | 40.74 ms | 2.72 | 29 | 713.9 | 814.9 | 90734929 B | 99,381.08 | +| CsvHelper | Cols | 50000 | 136.92 ms | 9.15 | 29 | 212.4 | 2738.3 | 457144 B | 500.71 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 67.27 ms | 1.00 | 29 | 432.4 | 1345.4 | 14131346 B | 1.00 | +| Sep_Unescape | Asset | 50000 | 67.01 ms | 1.00 | 29 | 434.1 | 1340.2 | 14131792 B | 1.00 | +| Sylvan___ | Asset | 50000 | 100.28 ms | 1.49 | 29 | 290.0 | 2005.7 | 14295848 B | 1.01 | +| ReadLine_ | Asset | 50000 | 152.69 ms | 2.27 | 29 | 190.5 | 3053.8 | 104585572 B | 7.40 | +| CsvHelper | Asset | 50000 | 166.75 ms | 2.46 | 29 | 174.4 | 3334.9 | 14306628 B | 1.01 | diff --git a/benchmarks/Neoverse.N1/PackageAssetsBenchQuotes.md b/benchmarks/Neoverse.N1/PackageAssetsBenchQuotes.md index 23c80843..773fc319 100644 --- a/benchmarks/Neoverse.N1/PackageAssetsBenchQuotes.md +++ b/benchmarks/Neoverse.N1/PackageAssetsBenchQuotes.md @@ -1,42 +1,33 @@ -``` ini +``` -BenchmarkDotNet=v0.13.5, OS=ubuntu 22.04 +BenchmarkDotNet v0.13.10, Ubuntu 22.04.2 LTS (Jammy Jellyfish) Unknown processor -.NET SDK=8.0.100-preview.7.23376.3 - [Host] : .NET 8.0.0 (8.0.23.37506), Arm64 RyuJIT AdvSIMD - Job-GDSTLJ : .NET 7.0.10 (7.0.1023.36801), Arm64 RyuJIT AdvSIMD - Job-WFSLTV : .NET 8.0.0 (8.0.23.37506), Arm64 RyuJIT AdvSIMD +.NET SDK 8.0.100 + [Host] : .NET 8.0.0 (8.0.23.53103), Arm64 RyuJIT AdvSIMD + Job-HCCPYN : .NET 8.0.0 (8.0.23.53103), Arm64 RyuJIT AdvSIMD -InvocationCount=Default IterationTime=300.0000 ms MaxIterationCount=Default +Job=Job-HCCPYN Runtime=.NET 8.0 Toolchain=net80 +InvocationCount=Default IterationTime=350.0000 ms MaxIterationCount=15 MinIterationCount=5 WarmupCount=6 Quotes=True Reader=String ``` -| Method | Runtime | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | -|---------- |--------- |------ |------ |----------:|------:|---:|-------:|-------:|-------------:|------------:| -| Sep______ | .NET 7.0 | Row | 50000 | 25.47 ms | 1.00 | 33 | 1306.5 | 509.5 | 1.39 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Row | 50000 | 46.21 ms | 1.81 | 33 | 720.2 | 924.2 | 6.25 KB | 4.50 | -| ReadLine_ | .NET 7.0 | Row | 50000 | 49.46 ms | 1.94 | 33 | 673.0 | 989.1 | 108778.86 KB | 78,333.02 | -| CsvHelper | .NET 7.0 | Row | 50000 | 121.28 ms | 4.76 | 33 | 274.4 | 2425.6 | 20.74 KB | 14.93 | -| Sep______ | .NET 8.0 | Row | 50000 | 23.43 ms | 0.92 | 33 | 1420.5 | 468.6 | 1.36 KB | 0.98 | -| Sylvan___ | .NET 8.0 | Row | 50000 | 39.42 ms | 1.55 | 33 | 844.2 | 788.5 | 6.11 KB | 4.40 | -| ReadLine_ | .NET 8.0 | Row | 50000 | 47.68 ms | 1.87 | 33 | 698.1 | 953.5 | 108778.91 KB | 78,333.05 | -| CsvHelper | .NET 8.0 | Row | 50000 | 107.00 ms | 4.20 | 33 | 311.0 | 2140.1 | 20.77 KB | 14.96 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Cols | 50000 | 28.30 ms | 1.00 | 33 | 1175.9 | 566.1 | 1.39 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Cols | 50000 | 53.39 ms | 1.89 | 33 | 623.4 | 1067.8 | 6.25 KB | 4.50 | -| ReadLine_ | .NET 7.0 | Cols | 50000 | 50.71 ms | 1.79 | 33 | 656.3 | 1014.2 | 108778.93 KB | 78,333.07 | -| CsvHelper | .NET 7.0 | Cols | 50000 | 180.08 ms | 6.36 | 33 | 184.8 | 3601.5 | 446.66 KB | 321.65 | -| Sep______ | .NET 8.0 | Cols | 50000 | 25.68 ms | 0.91 | 33 | 1295.8 | 513.7 | 1.36 KB | 0.98 | -| Sylvan___ | .NET 8.0 | Cols | 50000 | 45.33 ms | 1.61 | 33 | 734.2 | 906.6 | 6.15 KB | 4.43 | -| ReadLine_ | .NET 8.0 | Cols | 50000 | 44.96 ms | 1.59 | 33 | 740.3 | 899.2 | 108778.91 KB | 78,333.05 | -| CsvHelper | .NET 8.0 | Cols | 50000 | 153.04 ms | 5.41 | 33 | 217.5 | 3060.7 | 446.61 KB | 321.61 | -| | | | | | | | | | | | -| Sep______ | .NET 7.0 | Asset | 50000 | 88.20 ms | 1.00 | 33 | 377.4 | 1764.0 | 13808.62 KB | 1.00 | -| Sylvan___ | .NET 7.0 | Asset | 50000 | 115.22 ms | 1.31 | 33 | 288.9 | 2304.4 | 14024.52 KB | 1.02 | -| ReadLine_ | .NET 7.0 | Asset | 50000 | 200.14 ms | 2.28 | 33 | 166.3 | 4002.9 | 122305.55 KB | 8.86 | -| CsvHelper | .NET 7.0 | Asset | 50000 | 208.19 ms | 2.35 | 33 | 159.9 | 4163.8 | 13971.42 KB | 1.01 | -| Sep______ | .NET 8.0 | Asset | 50000 | 84.89 ms | 0.96 | 33 | 392.1 | 1697.7 | 13808.47 KB | 1.00 | -| Sylvan___ | .NET 8.0 | Asset | 50000 | 109.42 ms | 1.24 | 33 | 304.2 | 2188.4 | 14025.4 KB | 1.02 | -| ReadLine_ | .NET 8.0 | Asset | 50000 | 190.83 ms | 2.19 | 33 | 174.4 | 3816.6 | 122305.06 KB | 8.86 | -| CsvHelper | .NET 8.0 | Asset | 50000 | 185.03 ms | 2.09 | 33 | 179.9 | 3700.5 | 13972.06 KB | 1.01 | +| Method | Scope | Rows | Mean | Ratio | MB | MB/s | ns/row | Allocated | Alloc Ratio | +|------------- |------ |------ |----------:|------:|---:|-------:|-------:|------------:|------------:| +| Sep______ | Row | 50000 | 24.35 ms | 1.00 | 33 | 1366.9 | 487.0 | 941 B | 1.00 | +| Sep_Unescape | Row | 50000 | 24.21 ms | 0.99 | 33 | 1374.7 | 484.2 | 941 B | 1.00 | +| Sylvan___ | Row | 50000 | 39.92 ms | 1.64 | 33 | 833.6 | 798.5 | 6288 B | 6.68 | +| ReadLine_ | Row | 50000 | 45.96 ms | 1.89 | 33 | 724.1 | 919.3 | 111389508 B | 118,373.55 | +| CsvHelper | Row | 50000 | 106.99 ms | 4.40 | 33 | 311.1 | 2139.8 | 21272 B | 22.61 | +| | | | | | | | | | | +| Sep______ | Cols | 50000 | 26.96 ms | 1.00 | 33 | 1234.3 | 539.3 | 869 B | 1.00 | +| Sep_Unescape | Cols | 50000 | 28.60 ms | 1.06 | 33 | 1163.6 | 572.1 | 953 B | 1.10 | +| Sylvan___ | Cols | 50000 | 45.48 ms | 1.69 | 33 | 731.8 | 909.6 | 6318 B | 7.27 | +| ReadLine_ | Cols | 50000 | 45.95 ms | 1.70 | 33 | 724.4 | 918.9 | 111389521 B | 128,181.27 | +| CsvHelper | Cols | 50000 | 152.46 ms | 5.65 | 33 | 218.3 | 3049.1 | 457328 B | 526.27 | +| | | | | | | | | | | +| Sep______ | Asset | 50000 | 83.86 ms | 1.00 | 33 | 396.9 | 1677.2 | 14139912 B | 1.00 | +| Sep_Unescape | Asset | 50000 | 79.99 ms | 0.96 | 33 | 416.1 | 1599.9 | 14132628 B | 1.00 | +| Sylvan___ | Asset | 50000 | 110.29 ms | 1.31 | 33 | 301.8 | 2205.9 | 14298320 B | 1.01 | +| ReadLine_ | Asset | 50000 | 178.89 ms | 2.13 | 33 | 186.1 | 3577.7 | 125240480 B | 8.86 | +| CsvHelper | Asset | 50000 | 182.59 ms | 2.18 | 33 | 182.3 | 3651.7 | 14308800 B | 1.01 | diff --git a/benchmarks/Neoverse.N1/Versions.txt b/benchmarks/Neoverse.N1/Versions.txt index 11d4ffb1..b8465b92 100644 --- a/benchmarks/Neoverse.N1/Versions.txt +++ b/benchmarks/Neoverse.N1/Versions.txt @@ -1 +1 @@ -Sep 0.2.3, Sylvan 1.3.2.0, CsvHelper 30.0.1.0 \ No newline at end of file +Sep 0.3.0.0, Sylvan 1.3.5.0, CsvHelper 30.0.1.0 \ No newline at end of file diff --git a/nuget.config b/nuget.config index 9a6a11ca..cd10bbe8 100644 --- a/nuget.config +++ b/nuget.config @@ -2,7 +2,6 @@ - - + diff --git a/src/Sep.Benchmarks/Sep.Benchmarks.csproj b/src/Sep.Benchmarks/Sep.Benchmarks.csproj index e5d2bb20..2a74a5fb 100644 --- a/src/Sep.Benchmarks/Sep.Benchmarks.csproj +++ b/src/Sep.Benchmarks/Sep.Benchmarks.csproj @@ -22,8 +22,8 @@ - - + + diff --git a/src/Sep.ComparisonBenchmarks/Sep.ComparisonBenchmarks.csproj b/src/Sep.ComparisonBenchmarks/Sep.ComparisonBenchmarks.csproj index fe74b7eb..b3c282cf 100644 --- a/src/Sep.ComparisonBenchmarks/Sep.ComparisonBenchmarks.csproj +++ b/src/Sep.ComparisonBenchmarks/Sep.ComparisonBenchmarks.csproj @@ -21,8 +21,8 @@ - - + +