Skip to content

Commit 168c68f

Browse files
Add zero-allocation string-sequence split with ZLinq ValueEnumerable
- Add StringSegmentSequenceSplitEnumerator implementing IValueEnumerator<StringSegment> - Update SplitAsSegments(StringSegment, StringSegment) to return ValueEnumerable - Update SplitToEnumerable(char/StringSegment) to return ValueEnumerable<Select<...>> - Update SplitAsMemory(char/string) to return ValueEnumerable<Select<...>> - Update tests to use .ToArray() for assertion comparisons - All 955 tests pass - Benchmarks confirm zero allocations for foreach/Select/Where operations
1 parent b424f8a commit 168c68f

7 files changed

Lines changed: 268 additions & 210 deletions

BenchmarkDotNet.Artifacts/results/Open.Text.Benchmarks.SplitAsSegmentsBaselineBenchmark-report-github.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,16 @@ AMD Ryzen 9 7900 3.70GHz, 1 CPU, 24 logical and 12 physical cores
99
Job=Baseline
1010
1111
```
12-
| Method | Mean | Error | StdDev | StdErr | Median | Min | Q1 | Q3 | Max | Op/s | Ratio | RatioSD | Gen0 | Gen1 | Allocated | Alloc Ratio |
13-
|------------------------------------- |-------------:|-----------:|-----------:|----------:|-------------:|-------------:|-------------:|-------------:|-------------:|-------------:|-------:|--------:|-------:|-------:|----------:|------------:|
14-
| &#39;Small - Foreach Only (no ToString)&#39; | 31.80 ns | 0.189 ns | 0.177 ns | 0.046 ns | 31.85 ns | 31.49 ns | 31.69 ns | 31.92 ns | 32.06 ns | 31,441,964.2 | 0.97 | 0.01 | - | - | - | 0.00 |
15-
| &#39;BCL String.Split (Reference)&#39; | 32.83 ns | 0.062 ns | 0.058 ns | 0.015 ns | 32.84 ns | 32.68 ns | 32.79 ns | 32.87 ns | 32.90 ns | 30,460,572.4 | 1.00 | 0.00 | 0.0119 | - | 200 B | 1.00 |
16-
| &#39;Small - Count()&#39; | 39.20 ns | 0.079 ns | 0.074 ns | 0.019 ns | 39.18 ns | 39.09 ns | 39.15 ns | 39.26 ns | 39.36 ns | 25,508,493.8 | 1.19 | 0.00 | - | - | - | 0.00 |
17-
| &#39;Small - Foreach with ToString&#39; | 42.27 ns | 0.132 ns | 0.123 ns | 0.032 ns | 42.27 ns | 42.04 ns | 42.22 ns | 42.35 ns | 42.51 ns | 23,657,927.6 | 1.29 | 0.00 | 0.0086 | - | 144 B | 0.72 |
18-
| &#39;Small - ToArray&#39; | 50.41 ns | 0.108 ns | 0.101 ns | 0.026 ns | 50.43 ns | 50.22 ns | 50.33 ns | 50.49 ns | 50.53 ns | 19,837,183.5 | 1.54 | 0.00 | 0.0052 | - | 88 B | 0.44 |
19-
| &#39;Medium - Foreach Only&#39; | 99.30 ns | 0.305 ns | 0.255 ns | 0.071 ns | 99.23 ns | 98.90 ns | 99.19 ns | 99.48 ns | 99.89 ns | 10,070,495.4 | 3.02 | 0.01 | - | - | - | 0.00 |
20-
| &#39;Medium - LINQ Select&#39; | 103.85 ns | 0.617 ns | 0.547 ns | 0.146 ns | 103.77 ns | 102.99 ns | 103.59 ns | 104.03 ns | 104.93 ns | 9,629,072.1 | 3.16 | 0.02 | - | - | - | 0.00 |
21-
| &#39;Medium - LINQ Where&#39; | 108.56 ns | 0.682 ns | 0.605 ns | 0.162 ns | 108.52 ns | 107.64 ns | 108.18 ns | 108.65 ns | 109.90 ns | 9,211,584.6 | 3.31 | 0.02 | - | - | - | 0.00 |
22-
| &#39;BCL Large String.Split&#39; | 6,669.08 ns | 130.648 ns | 128.314 ns | 32.078 ns | 6,646.10 ns | 6,446.95 ns | 6,613.36 ns | 6,746.26 ns | 6,935.43 ns | 149,945.7 | 203.14 | 3.81 | 2.3880 | 0.2975 | 39952 B | 199.76 |
23-
| &#39;Large (1000) - Foreach Only&#39; | 11,757.79 ns | 231.278 ns | 392.727 ns | 64.564 ns | 11,474.32 ns | 11,359.99 ns | 11,412.14 ns | 12,195.64 ns | 12,243.03 ns | 85,050.0 | 358.15 | 11.83 | - | - | - | 0.00 |
24-
| &#39;Large (1000) - ToList&#39; | 12,432.33 ns | 13.625 ns | 12.745 ns | 3.291 ns | 12,433.69 ns | 12,405.13 ns | 12,426.04 ns | 12,439.79 ns | 12,456.84 ns | 80,435.5 | 378.70 | 0.75 | 0.9460 | 0.0458 | 16056 B | 80.28 |
12+
| Method | Mean | Error | StdDev | StdErr | Min | Q1 | Median | Q3 | Max | Op/s | Ratio | RatioSD | Gen0 | Gen1 | Allocated | Alloc Ratio |
13+
|------------------------------------- |-------------:|----------:|----------:|----------:|-------------:|-------------:|-------------:|-------------:|-------------:|-------------:|-------:|--------:|-------:|-------:|----------:|------------:|
14+
| &#39;Small - Foreach Only (no ToString)&#39; | 31.84 ns | 0.208 ns | 0.184 ns | 0.049 ns | 31.42 ns | 31.76 ns | 31.83 ns | 31.95 ns | 32.23 ns | 31,404,338.9 | 0.95 | 0.01 | - | - | - | 0.00 |
15+
| &#39;BCL String.Split (Reference)&#39; | 33.56 ns | 0.137 ns | 0.115 ns | 0.032 ns | 33.42 ns | 33.45 ns | 33.55 ns | 33.60 ns | 33.81 ns | 29,801,405.3 | 1.00 | 0.00 | 0.0119 | - | 200 B | 1.00 |
16+
| &#39;Small - Count()&#39; | 39.27 ns | 0.076 ns | 0.067 ns | 0.018 ns | 39.17 ns | 39.22 ns | 39.26 ns | 39.32 ns | 39.39 ns | 25,466,318.6 | 1.17 | 0.00 | - | - | - | 0.00 |
17+
| &#39;Small - Foreach with ToString&#39; | 43.00 ns | 0.267 ns | 0.237 ns | 0.063 ns | 42.63 ns | 42.87 ns | 42.93 ns | 43.20 ns | 43.37 ns | 23,256,897.9 | 1.28 | 0.01 | 0.0086 | - | 144 B | 0.72 |
18+
| &#39;Small - ToArray&#39; | 56.39 ns | 0.169 ns | 0.150 ns | 0.040 ns | 56.13 ns | 56.31 ns | 56.39 ns | 56.50 ns | 56.60 ns | 17,734,403.7 | 1.68 | 0.01 | 0.0052 | - | 88 B | 0.44 |
19+
| &#39;Medium - LINQ Select&#39; | 104.34 ns | 1.594 ns | 1.491 ns | 0.385 ns | 102.57 ns | 103.30 ns | 103.99 ns | 105.32 ns | 108.02 ns | 9,583,903.8 | 3.11 | 0.04 | - | - | - | 0.00 |
20+
| &#39;Medium - Foreach Only&#39; | 105.37 ns | 0.360 ns | 0.319 ns | 0.085 ns | 104.89 ns | 105.16 ns | 105.36 ns | 105.55 ns | 105.97 ns | 9,490,696.6 | 3.14 | 0.01 | - | - | - | 0.00 |
21+
| &#39;Medium - LINQ Where&#39; | 116.59 ns | 0.652 ns | 0.578 ns | 0.155 ns | 115.59 ns | 116.21 ns | 116.49 ns | 116.95 ns | 117.96 ns | 8,576,765.6 | 3.47 | 0.02 | - | - | - | 0.00 |
22+
| &#39;BCL Large String.Split&#39; | 6,635.75 ns | 35.836 ns | 31.767 ns | 8.490 ns | 6,593.80 ns | 6,609.99 ns | 6,642.30 ns | 6,648.62 ns | 6,704.74 ns | 150,698.9 | 197.76 | 1.12 | 2.3880 | 0.2975 | 39952 B | 199.76 |
23+
| &#39;Large (1000) - Foreach Only&#39; | 11,433.20 ns | 24.112 ns | 22.554 ns | 5.823 ns | 11,393.40 ns | 11,417.21 ns | 11,432.39 ns | 11,447.33 ns | 11,477.60 ns | 87,464.6 | 340.73 | 1.29 | - | - | - | 0.00 |
24+
| &#39;Large (1000) - ToList&#39; | 12,512.25 ns | 68.592 ns | 64.161 ns | 16.566 ns | 12,426.34 ns | 12,468.81 ns | 12,487.67 ns | 12,549.61 ns | 12,628.75 ns | 79,921.6 | 372.89 | 2.22 | 0.9460 | 0.0458 | 16056 B | 80.28 |
Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,LargeAddressAware,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Mean,Error,StdDev,StdErr,Median,Min,Q1,Q3,Max,Op/s,Ratio,RatioSD,Gen0,Gen1,Allocated,Alloc Ratio
2-
'Small - Foreach Only (no ToString)',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,31.80 ns,0.189 ns,0.177 ns,0.046 ns,31.85 ns,31.49 ns,31.69 ns,31.92 ns,32.06 ns,"31,441,964.2",0.97,0.01,0.0000,0.0000,0 B,0.00
3-
'BCL String.Split (Reference)',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,32.83 ns,0.062 ns,0.058 ns,0.015 ns,32.84 ns,32.68 ns,32.79 ns,32.87 ns,32.90 ns,"30,460,572.4",1.00,0.00,0.0119,0.0000,200 B,1.00
4-
'Small - Count()',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,39.20 ns,0.079 ns,0.074 ns,0.019 ns,39.18 ns,39.09 ns,39.15 ns,39.26 ns,39.36 ns,"25,508,493.8",1.19,0.00,0.0000,0.0000,0 B,0.00
5-
'Small - Foreach with ToString',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,42.27 ns,0.132 ns,0.123 ns,0.032 ns,42.27 ns,42.04 ns,42.22 ns,42.35 ns,42.51 ns,"23,657,927.6",1.29,0.00,0.0086,0.0000,144 B,0.72
6-
'Small - ToArray',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,50.41 ns,0.108 ns,0.101 ns,0.026 ns,50.43 ns,50.22 ns,50.33 ns,50.49 ns,50.53 ns,"19,837,183.5",1.54,0.00,0.0052,0.0000,88 B,0.44
7-
'Medium - Foreach Only',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,99.30 ns,0.305 ns,0.255 ns,0.071 ns,99.23 ns,98.90 ns,99.19 ns,99.48 ns,99.89 ns,"10,070,495.4",3.02,0.01,0.0000,0.0000,0 B,0.00
8-
'Medium - LINQ Select',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,103.85 ns,0.617 ns,0.547 ns,0.146 ns,103.77 ns,102.99 ns,103.59 ns,104.03 ns,104.93 ns,"9,629,072.1",3.16,0.02,0.0000,0.0000,0 B,0.00
9-
'Medium - LINQ Where',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,108.56 ns,0.682 ns,0.605 ns,0.162 ns,108.52 ns,107.64 ns,108.18 ns,108.65 ns,109.90 ns,"9,211,584.6",3.31,0.02,0.0000,0.0000,0 B,0.00
10-
'BCL Large String.Split',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"6,669.08 ns",130.648 ns,128.314 ns,32.078 ns,"6,646.10 ns","6,446.95 ns","6,613.36 ns","6,746.26 ns","6,935.43 ns","149,945.7",203.14,3.81,2.3880,0.2975,39952 B,199.76
11-
'Large (1000) - Foreach Only',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"11,757.79 ns",231.278 ns,392.727 ns,64.564 ns,"11,474.32 ns","11,359.99 ns","11,412.14 ns","12,195.64 ns","12,243.03 ns","85,050.0",358.15,11.83,0.0000,0.0000,0 B,0.00
12-
'Large (1000) - ToList',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"12,432.33 ns",13.625 ns,12.745 ns,3.291 ns,"12,433.69 ns","12,405.13 ns","12,426.04 ns","12,439.79 ns","12,456.84 ns","80,435.5",378.70,0.75,0.9460,0.0458,16056 B,80.28
1+
Method,Job,AnalyzeLaunchVariance,EvaluateOverhead,MaxAbsoluteError,MaxRelativeError,MinInvokeCount,MinIterationTime,OutlierMode,Affinity,EnvironmentVariables,Jit,LargeAddressAware,Platform,PowerPlanMode,Runtime,AllowVeryLargeObjects,Concurrent,CpuGroups,Force,HeapAffinitizeMask,HeapCount,NoAffinitize,RetainVm,Server,Arguments,BuildConfiguration,Clock,EngineFactory,NuGetReferences,Toolchain,IsMutator,InvocationCount,IterationCount,IterationTime,LaunchCount,MaxIterationCount,MaxWarmupIterationCount,MemoryRandomization,MinIterationCount,MinWarmupIterationCount,RunStrategy,UnrollFactor,WarmupCount,Mean,Error,StdDev,StdErr,Min,Q1,Median,Q3,Max,Op/s,Ratio,RatioSD,Gen0,Gen1,Allocated,Alloc Ratio
2+
'Small - Foreach Only (no ToString)',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,31.84 ns,0.208 ns,0.184 ns,0.049 ns,31.42 ns,31.76 ns,31.83 ns,31.95 ns,32.23 ns,"31,404,338.9",0.95,0.01,0.0000,0.0000,0 B,0.00
3+
'BCL String.Split (Reference)',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,33.56 ns,0.137 ns,0.115 ns,0.032 ns,33.42 ns,33.45 ns,33.55 ns,33.60 ns,33.81 ns,"29,801,405.3",1.00,0.00,0.0119,0.0000,200 B,1.00
4+
'Small - Count()',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,39.27 ns,0.076 ns,0.067 ns,0.018 ns,39.17 ns,39.22 ns,39.26 ns,39.32 ns,39.39 ns,"25,466,318.6",1.17,0.00,0.0000,0.0000,0 B,0.00
5+
'Small - Foreach with ToString',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,43.00 ns,0.267 ns,0.237 ns,0.063 ns,42.63 ns,42.87 ns,42.93 ns,43.20 ns,43.37 ns,"23,256,897.9",1.28,0.01,0.0086,0.0000,144 B,0.72
6+
'Small - ToArray',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,56.39 ns,0.169 ns,0.150 ns,0.040 ns,56.13 ns,56.31 ns,56.39 ns,56.50 ns,56.60 ns,"17,734,403.7",1.68,0.01,0.0052,0.0000,88 B,0.44
7+
'Medium - LINQ Select',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,104.34 ns,1.594 ns,1.491 ns,0.385 ns,102.57 ns,103.30 ns,103.99 ns,105.32 ns,108.02 ns,"9,583,903.8",3.11,0.04,0.0000,0.0000,0 B,0.00
8+
'Medium - Foreach Only',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,105.37 ns,0.360 ns,0.319 ns,0.085 ns,104.89 ns,105.16 ns,105.36 ns,105.55 ns,105.97 ns,"9,490,696.6",3.14,0.01,0.0000,0.0000,0 B,0.00
9+
'Medium - LINQ Where',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,116.59 ns,0.652 ns,0.578 ns,0.155 ns,115.59 ns,116.21 ns,116.49 ns,116.95 ns,117.96 ns,"8,576,765.6",3.47,0.02,0.0000,0.0000,0 B,0.00
10+
'BCL Large String.Split',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"6,635.75 ns",35.836 ns,31.767 ns,8.490 ns,"6,593.80 ns","6,609.99 ns","6,642.30 ns","6,648.62 ns","6,704.74 ns","150,698.9",197.76,1.12,2.3880,0.2975,39952 B,199.76
11+
'Large (1000) - Foreach Only',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"11,433.20 ns",24.112 ns,22.554 ns,5.823 ns,"11,393.40 ns","11,417.21 ns","11,432.39 ns","11,447.33 ns","11,477.60 ns","87,464.6",340.73,1.29,0.0000,0.0000,0 B,0.00
12+
'Large (1000) - ToList',Baseline,False,Default,Default,Default,Default,Default,Default,111111111111111111111111,Empty,RyuJit,Default,X64,8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c,.NET 8.0,False,True,False,True,Default,Default,False,False,False,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,Default,16,Default,"12,512.25 ns",68.592 ns,64.161 ns,16.566 ns,"12,426.34 ns","12,468.81 ns","12,487.67 ns","12,549.61 ns","12,628.75 ns","79,921.6",372.89,2.22,0.9460,0.0458,16056 B,80.28

0 commit comments

Comments
 (0)