Skip to content

[Perf] Windows 10.0.25094/arm64 : Improvement on 8/17/2022 3:53:31 PM #8046

@performanceautofiler

Description

@performanceautofiler

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline 96d1c8e3ba4bc94afdcf15ee2896a3bc984820e7
Compare 6521c2b7c01660873fa978c9e73038a1d75e7962
Diff Diff

Improvements in System.Collections.ContainsTrue<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Stack - Duration of single invocation 67.03 μs 41.25 μs 0.62 0.69 False
ICollection - Duration of single invocation 51.99 μs 48.20 μs 0.93 0.65 False
Queue - Duration of single invocation 61.40 μs 43.93 μs 0.72 0.63 False
Array - Duration of single invocation 61.07 μs 50.95 μs 0.83 0.62 False
ImmutableArray - Duration of single invocation 63.23 μs 46.27 μs 0.73 0.64 False
Span - Duration of single invocation 46.42 μs 43.77 μs 0.94 0.63 False
List - Duration of single invocation 57.28 μs 44.15 μs 0.77 0.61 False

graph
graph
graph
graph
graph
graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Collections.ContainsTrue&lt;Int32&gt;*'

Payloads

Baseline
Compare

Histogram

System.Collections.ContainsTrue<Int32>.Stack(Size: 512)


Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 41.253126285347044 < 67.7046807528753.
IsChangePoint: Marked as a change because one of 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 34.1691832461261 (T) = (0 -44640.5170014645) / Math.Sqrt((38086453.35239626 / (299)) + (15211634.832324246 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.3727470384452504 = (71168.28414937355 - 44640.5170014645) / 71168.28414937355 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsTrue&lt;Int32&gt;.ICollection(Size: 512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 48.20371333333333 < 51.444510113463124.
IsChangePoint: Marked as a change because one of 8/16/2022 2:19:13 PM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 14.260396400117736 (T) = (0 -46039.32976362666) / Math.Sqrt((23613145.797331817 / (299)) + (16948473.156914372 / (36))) is greater than 1.9671134448822736 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (36) - 2, .975) and 0.18676905032243843 = (56612.85983013905 - 46039.32976362666) / 56612.85983013905 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsTrue&lt;Int32&gt;.Queue(Size: 512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 43.9313289695946 < 58.76969228871477.
IsChangePoint: Marked as a change because one of 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 19.44803832456189 (T) = (0 -47230.532762616334) / Math.Sqrt((17774521.593582354 / (299)) + (9547216.926427232 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.19762750643486657 = (58863.599065765266 - 47230.532762616334) / 58863.599065765266 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsTrue&lt;Int32&gt;.Array(Size: 512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 50.94738087431693 < 56.803101373231726.
IsChangePoint: Marked as a change because one of 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 16.654078783070236 (T) = (0 -46151.61580738947) / Math.Sqrt((19141797.875240102 / (299)) + (13623397.965177797 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.20161896999559803 = (57806.50350263834 - 46151.61580738947) / 57806.50350263834 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsTrue&lt;Int32&gt;.ImmutableArray(Size: 512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 46.27290962099125 < 56.82066184925695.
IsChangePoint: Marked as a change because one of 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 16.823422370849524 (T) = (0 -46666.69427964329) / Math.Sqrt((23986463.57867944 / (299)) + (15203114.672694461 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.2117574483120163 = (59203.47002291211 - 46666.69427964329) / 59203.47002291211 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsTrue&lt;Int32&gt;.Span(Size: 512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 43.768999643874636 < 51.9272928917646.
IsChangePoint: Marked as a change because one of 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 18.016796817942907 (T) = (0 -39875.74653469465) / Math.Sqrt((17365136.97893322 / (299)) + (12365193.773345778 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.2314969173576864 = (51887.555737045914 - 39875.74653469465) / 51887.555737045914 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsTrue&lt;Int32&gt;.List(Size: 512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 44.14557784810127 < 52.967123514074515.
IsChangePoint: Marked as a change because one of 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 15.449053197310603 (T) = (0 -44475.402359914726) / Math.Sqrt((19259872.629205693 / (299)) + (13538781.927293537 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.1951920395186652 = (55262.13027678695 - 44475.402359914726) / 55262.13027678695 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

### Run Information
Architecture arm64
OS Windows 10.0.25094
Baseline 96d1c8e3ba4bc94afdcf15ee2896a3bc984820e7
Compare 6521c2b7c01660873fa978c9e73038a1d75e7962
Diff Diff

Improvements in System.Tests.Perf_String

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Replace_Char - Duration of single invocation 16.21 ns 9.52 ns 0.59 0.75 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Tests.Perf_String*'

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_String.Replace_Char(text: "This is a very nice sentence", oldChar: 'z', newChar: 'y')


Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 9.5195120014171 < 14.550140191036471.
IsChangePoint: Marked as a change because one of 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 27.910603059604952 (T) = (0 -10.029686263507138) / Math.Sqrt((6.433893987766081 / (299)) + (2.6344452229866913 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.47278361857628587 = (19.02385171800355 - 10.029686263507138) / 19.02385171800355 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline 96d1c8e3ba4bc94afdcf15ee2896a3bc984820e7
Compare 6521c2b7c01660873fa978c9e73038a1d75e7962
Diff Diff

Improvements in System.Collections.ContainsFalse<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Span - Duration of single invocation 78.35 μs 66.86 μs 0.85 0.65 False
List - Duration of single invocation 90.82 μs 81.11 μs 0.89 0.60 False
ICollection - Duration of single invocation 94.69 μs 72.85 μs 0.77 0.62 False
Stack - Duration of single invocation 148.53 μs 74.14 μs 0.50 0.63 False

graph
graph
graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Collections.ContainsFalse&lt;Int32&gt;*'

Payloads

Baseline
Compare

Histogram

System.Collections.ContainsFalse<Int32>.Span(Size: 512)


Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 66.8583940092166 < 74.61047012371013.
IsChangePoint: Marked as a change because one of 5/29/2022 5:15:01 PM, 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 9.243466667712314 (T) = (0 -73206.4718910854) / Math.Sqrt((42797359.46293402 / (299)) + (38778450.22937386 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.12814280961511312 = (83966.12736401008 - 73206.4718910854) / 83966.12736401008 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsFalse&lt;Int32&gt;.List(Size: 512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 81.11086376404496 < 85.35221265625.
IsChangePoint: Marked as a change because one of 5/30/2022 9:47:47 AM, 8/17/2022 2:33:27 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 7.541304064368708 (T) = (0 -78149.69790489855) / Math.Sqrt((42154156.70759557 / (299)) + (26018215.79948908 / (33))) is greater than 1.9671786747533526 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (33) - 2, .975) and 0.0851121837875006 = (85419.97884333707 - 78149.69790489855) / 85419.97884333707 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsFalse&lt;Int32&gt;.ICollection(Size: 512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 72.85459178743963 < 84.55407176723376.
IsChangePoint: Marked as a change because one of 5/30/2022 4:33:23 PM, 8/18/2022 7:53:08 PM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 8.349946921880473 (T) = (0 -74919.31349042665) / Math.Sqrt((48526613.14642653 / (299)) + (42935193.42956646 / (25))) is greater than 1.9673585853226652 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (25) - 2, .975) and 0.13254983838687245 = (86367.28287779116 - 74919.31349042665) / 86367.28287779116 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsFalse&lt;Int32&gt;.Stack(Size: 512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 74.14113445945945 < 121.38300431386634.
IsChangePoint: Marked as a change because one of 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 42.455394909063216 (T) = (0 -78600.16687781751) / Math.Sqrt((115988361.63977732 / (299)) + (48673354.38685118 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.4273577533133018 = (137258.76379641428 - 78600.16687781751) / 137258.76379641428 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline 96d1c8e3ba4bc94afdcf15ee2896a3bc984820e7
Compare 6521c2b7c01660873fa978c9e73038a1d75e7962
Diff Diff

Improvements in System.Tests.Perf_Array

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
IndexOfShort - Duration of single invocation 20.25 ns 15.49 ns 0.76 0.68 False
ArrayRetrieve3D - Duration of single invocation 4.22 ms 3.64 ms 0.86 0.60 False

graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Tests.Perf_Array*'

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_Array.IndexOfShort


Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 15.48895191789797 < 19.86879030453027.
IsChangePoint: Marked as a change because one of 6/6/2022 8:15:49 PM, 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 24.884457752137788 (T) = (0 -16.052239949029847) / Math.Sqrt((7.2856275579830045 / (299)) + (2.1942317028723917 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.32092481233050313 = (23.638383849834323 - 16.052239949029847) / 23.638383849834323 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_Array.ArrayRetrieve3D

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 3.63990590625 < 3.78065503125.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 15.292852249065243 (T) = (0 -3354521.282226563) / Math.Sqrt((133220105407.60631 / (299)) + (36295054849.3932 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.15340243469953524 = (3962356.4013393004 - 3354521.282226563) / 3962356.4013393004 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline 96d1c8e3ba4bc94afdcf15ee2896a3bc984820e7
Compare 6521c2b7c01660873fa978c9e73038a1d75e7962
Diff Diff

Improvements in System.Memory.SequenceReader

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
TryReadTo - Duration of single invocation 358.10 ns 204.59 ns 0.57 0.63 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Memory.SequenceReader*'

Payloads

Baseline
Compare

Histogram

System.Memory.SequenceReader.TryReadTo


Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 204.59007816250602 < 317.3375234503376.
IsChangePoint: Marked as a change because one of 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 34.89481796400625 (T) = (0 -232.02008166429772) / Math.Sqrt((942.8037382565044 / (299)) + (358.341239609356 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.36295453181064785 = (364.2127497174711 - 232.02008166429772) / 364.2127497174711 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline 96d1c8e3ba4bc94afdcf15ee2896a3bc984820e7
Compare 6521c2b7c01660873fa978c9e73038a1d75e7962
Diff Diff

Improvements in System.Memory.Span<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
LastIndexOfValue - Duration of single invocation 132.68 ns 66.75 ns 0.50 0.67 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Memory.Span&lt;Int32&gt;*'

Payloads

Baseline
Compare

Histogram

System.Memory.Span<Int32>.LastIndexOfValue(Size: 512)


Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 66.74933088818399 < 125.57861421714051.
IsChangePoint: Marked as a change because one of 8/17/2022 10:14:53 AM, 8/25/2022 6:55:57 AM falls between 8/16/2022 2:19:13 PM and 8/25/2022 6:55:57 AM.
IsImprovementStdDev: Marked as improvement because 42.915516384559616 (T) = (0 -68.38077768592535) / Math.Sqrt((111.45597203297228 / (299)) + (48.021400153125356 / (32))) is greater than 1.9672006833568965 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (32) - 2, .975) and 0.46207982933276787 = (127.12067963747548 - 68.38077768592535) / 127.12067963747548 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions