Skip to content

[Perf] Windows/x86: 21 Improvements on 11/7/2022 8:57:30 PM #9754

@performanceautofiler

Description

@performanceautofiler

Run Information

Architecture x86
OS Windows 10.0.18362
Baseline bfa4812aec806f09f1e2927939ba98118e5e5bf7
Compare 2aebbf75167b3aa21cae23e6fd702688dd724663
Diff Diff

Improvements in System.IO.Tests.StreamReaderReadLineTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
ReadLine - Duration of single invocation 23.01 μs 7.45 μs 0.32 0.00 False
ReadLineAsync - Duration of single invocation 25.23 μs 8.90 μs 0.35 0.00 False
ReadLine - Duration of single invocation 83.84 μs 76.79 μs 0.92 0.01 False
ReadLine - Duration of single invocation 20.81 μs 6.51 μs 0.31 0.00 False
ReadLineAsync - Duration of single invocation 25.63 μs 9.04 μs 0.35 0.01 False
ReadLineAsync - Duration of single invocation 27.40 μs 8.70 μs 0.32 0.00 False
ReadLine - Duration of single invocation 20.38 μs 6.80 μs 0.33 0.00 False
ReadLine - Duration of single invocation 23.18 μs 9.52 μs 0.41 0.00 False
ReadLineAsync - Duration of single invocation 33.93 μs 19.88 μs 0.59 0.01 False

graph
graph
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.IO.Tests.StreamReaderReadLineTests*'

Related Issues

Regressions

Improvements

Payloads

Baseline
Compare

Histogram

Edge Detector Info

Collection Data

System.IO.Tests.StreamReaderReadLineTests.ReadLine(LineLengthRange: [1025, 2048])


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 7.445477762061919 < 21.80098969940932.
IsChangePoint: Marked as a change because one of 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 882.1080330900106 (T) = (0 -7193.22839951223) / Math.Sqrt((44999.9470137481 / (299)) + (6360.1481099859775 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.686164066493567 = (22920.346689251193 - 7193.22839951223) / 22920.346689251193 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.IO.Tests.StreamReaderReadLineTests.ReadLineAsync(LineLengthRange: [ 129, 1024])

```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 8.895889177739265 < 23.99421431904007.
IsChangePoint: Marked as a change because one of 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 814.1828465738296 (T) = (0 -8928.705313564273) / Math.Sqrt((56614.56791990252 / (299)) + (8025.352194929241 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.6460142558111429 = (25223.347154908774 - 8928.705313564273) / 25223.347154908774 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.IO.Tests.StreamReaderReadLineTests.ReadLine(LineLengthRange: [   1,    8])

```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 76.79131313131312 < 80.05180639560932.
IsChangePoint: Marked as a change because one of 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 29.384842840235038 (T) = (0 -77555.50303130291) / Math.Sqrt((298381.27843771264 / (299)) + (1571150.765716717 / (37))) is greater than 1.9670919629190173 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (37) - 2, .975) and 0.07320591712727444 = (83681.48272042154 - 77555.50303130291) / 83681.48272042154 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.IO.Tests.StreamReaderReadLineTests.ReadLine(LineLengthRange: [   0, 1024])

```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 6.511961573299889 < 19.726919493874824.
IsChangePoint: Marked as a change because one of 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 1053.204824107287 (T) = (0 -6534.269194185134) / Math.Sqrt((38981.313510121 / (299)) + (1935.4067166965506 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.6845723334421 = (20715.58676348925 - 6534.269194185134) / 20715.58676348925 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.IO.Tests.StreamReaderReadLineTests.ReadLineAsync(LineLengthRange: [   0, 1024])

```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 9.04193593779813 < 24.226849563273817.
IsChangePoint: Marked as a change because one of 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 636.4756886330647 (T) = (0 -9010.351762379138) / Math.Sqrt((55778.21595234887 / (299)) + (18163.831339204065 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.6455116926395796 = (25417.909632821837 - 9010.351762379138) / 25417.909632821837 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.IO.Tests.StreamReaderReadLineTests.ReadLineAsync(LineLengthRange: [1025, 2048])

```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 8.702845231532523 < 26.007270072068486.
IsChangePoint: Marked as a change because one of 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 845.4570582299016 (T) = (0 -8735.353132675475) / Math.Sqrt((57626.90419813487 / (299)) + (10941.071699568747 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.6796837159058946 = (27271.024192167275 - 8735.353132675475) / 27271.024192167275 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.IO.Tests.StreamReaderReadLineTests.ReadLine(LineLengthRange: [ 129, 1024])

```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 6.79854347983754 < 19.4188316827132.
IsChangePoint: Marked as a change because one of 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 942.4114578595236 (T) = (0 -6726.764024640064) / Math.Sqrt((47354.310046352635 / (299)) + (2106.919796537565 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.6719817228740118 = (20507.28417812032 - 6726.764024640064) / 20507.28417812032 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.IO.Tests.StreamReaderReadLineTests.ReadLine(LineLengthRange: [  33,  128])

```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 9.518761665652262 < 22.145409944734226.
IsChangePoint: Marked as a change because one of 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 659.4358372655649 (T) = (0 -9505.146024518564) / Math.Sqrt((45036.536648399975 / (299)) + (10749.435147263008 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.5909142863317022 = (23235.0964771791 - 9505.146024518564) / 23235.0964771791 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.IO.Tests.StreamReaderReadLineTests.ReadLineAsync(LineLengthRange: [  33,  128])

```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 19.879951513213978 < 32.241516570612355.
IsChangePoint: Marked as a change because one of 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 329.447871651957 (T) = (0 -19977.491392482916) / Math.Sqrt((264737.88035006105 / (299)) + (33119.94392474706 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.40871861216742505 = (33786.77530458589 - 19977.491392482916) / 33786.77530458589 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
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 x86
OS Windows 10.0.18362
Baseline bfa4812aec806f09f1e2927939ba98118e5e5bf7
Compare 2aebbf75167b3aa21cae23e6fd702688dd724663
Diff Diff

Improvements in PerfLabTests.CastingPerf2.CastingPerf

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
FooObjIsNull - Duration of single invocation 463.33 μs 313.12 μs 0.68 0.17 False
IFooFooIsIFoo - Duration of single invocation 439.11 μs 311.84 μs 0.71 0.17 False
ObjFooIsObj - Duration of single invocation 438.55 μs 311.83 μs 0.71 0.14 False

graph
graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'PerfLabTests.CastingPerf2.CastingPerf*'

Related Issues

Regressions

Improvements

Payloads

Baseline
Compare

Histogram

Edge Detector Info

Collection Data

PerfLabTests.CastingPerf2.CastingPerf.FooObjIsNull


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 313.11810833333334 < 417.5232737268518.
IsChangePoint: Marked as a change because one of 9/9/2022 3:12:19 AM, 9/26/2022 8:26:31 AM, 10/25/2022 12:27:43 PM, 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 12.136835014881553 (T) = (0 -318842.10390821984) / Math.Sqrt((4387302581.879595 / (299)) + (851503944.1731608 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.18817762731291224 = (392748.60441806976 - 318842.10390821984) / 392748.60441806976 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### PerfLabTests.CastingPerf2.CastingPerf.IFooFooIsIFoo

```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 311.83663340336136 < 417.5122846395502.
IsChangePoint: Marked as a change because one of 9/9/2022 3:12:19 AM, 9/26/2022 8:26:31 AM, 10/25/2022 12:27:43 PM, 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 10.813120836862696 (T) = (0 -319864.4189349136) / Math.Sqrt((4330050055.041819 / (299)) + (1130340197.6059084 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.1835523653317579 = (391775.79228934663 - 319864.4189349136) / 391775.79228934663 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### PerfLabTests.CastingPerf2.CastingPerf.ObjFooIsObj

```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 311.8302601809954 < 417.7277271412037.
IsChangePoint: Marked as a change because one of 9/9/2022 3:12:19 AM, 9/29/2022 7:42:19 AM, 10/25/2022 12:27:43 PM, 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 12.091661514021425 (T) = (0 -318983.73235065734) / Math.Sqrt((4317936624.216113 / (299)) + (848006204.0634981 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.18687319386664203 = (392292.7272162049 - 318983.73235065734) / 392292.7272162049 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
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 x86
OS Windows 10.0.18362
Baseline bfa4812aec806f09f1e2927939ba98118e5e5bf7
Compare 2aebbf75167b3aa21cae23e6fd702688dd724663
Diff Diff

Improvements in System.Collections.IterateForEach<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
ImmutableQueue - Duration of single invocation 4.98 μs 4.35 μs 0.87 0.05 False

graph
Test Report

Repro

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

Related Issues

Regressions

Improvements

Payloads

Baseline
Compare

Histogram

Edge Detector Info

Collection Data

System.Collections.IterateForEach<Int32>.ImmutableQueue(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 4.347126892033654 < 4.729494789545359.
IsChangePoint: Marked as a change because one of 10/6/2022 2:13:23 PM, 10/25/2022 12:27:43 PM, 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 23.02868803193849 (T) = (0 -4252.402324869367) / Math.Sqrt((84271.77090035546 / (299)) + (5737.265227989097 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.10125742131774589 = (4731.502018191109 - 4252.402324869367) / 4731.502018191109 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
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 x86
OS Windows 10.0.18362
Baseline bfa4812aec806f09f1e2927939ba98118e5e5bf7
Compare 2aebbf75167b3aa21cae23e6fd702688dd724663
Diff Diff

Improvements in System.Tests.Perf_Char

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Char_ToLowerInvariant - Duration of single invocation 25.90 ns 22.54 ns 0.87 0.05 False
Char_ToUpperInvariant - Duration of single invocation 25.72 ns 23.37 ns 0.91 0.04 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_Char*'

Related Issues

Regressions

Improvements

Payloads

Baseline
Compare

Histogram

Edge Detector Info

Collection Data

System.Tests.Perf_Char.Char_ToLowerInvariant(input: "Hello World!")


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 22.543953958356237 < 23.954193560096844.
IsChangePoint: Marked as a change because one of 9/29/2022 7:42:19 AM, 10/2/2022 4:08:26 PM, 10/19/2022 7:27:15 PM, 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 12.767923592935151 (T) = (0 -22.814252804408365) / Math.Sqrt((3.935287104289727 / (299)) + (0.48067143356077 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.08249414538967591 = (24.865511963515324 - 22.814252804408365) / 24.865511963515324 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_Char.Char_ToUpperInvariant(input: "Hello World!")

```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 23.369998878534965 < 24.060584966912742.
IsChangePoint: Marked as a change because one of 9/29/2022 7:42:19 AM, 10/2/2022 4:08:26 PM, 10/19/2022 7:27:15 PM, 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 12.166460734533102 (T) = (0 -23.518718879977364) / Math.Sqrt((3.125201651584426 / (299)) + (0.2479265356294659 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.06314620968134702 = (25.103937373171025 - 23.518718879977364) / 25.103937373171025 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
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 x86
OS Windows 10.0.18362
Baseline bfa4812aec806f09f1e2927939ba98118e5e5bf7
Compare 2aebbf75167b3aa21cae23e6fd702688dd724663
Diff Diff

Improvements in System.Collections.IndexerSet<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Span - Duration of single invocation 332.56 ns 255.54 ns 0.77 0.10 False

graph
Test Report

Repro

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

Related Issues

Regressions

Improvements

Payloads

Baseline
Compare

Histogram

Edge Detector Info

Collection Data

System.Collections.IndexerSet<String>.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 255.53951051281192 < 315.95549830913336.
IsChangePoint: Marked as a change because one of 9/1/2022 8:04:48 PM, 9/13/2022 12:23:36 PM, 9/26/2022 8:26:31 AM, 10/11/2022 6:23:40 AM, 10/25/2022 12:27:43 PM, 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 9.815363627490084 (T) = (0 -260.39566675028703) / Math.Sqrt((1589.4752250768363 / (299)) + (297.83428368462256 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.12026730677888776 = (295.994077242778 - 260.39566675028703) / 295.994077242778 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
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 x86
OS Windows 10.0.18362
Baseline bfa4812aec806f09f1e2927939ba98118e5e5bf7
Compare 2aebbf75167b3aa21cae23e6fd702688dd724663
Diff Diff

Improvements in System.Numerics.Tests.Perf_BitOperations

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
LeadingZeroCount_ulong - Duration of single invocation 1.23 μs 942.92 ns 0.77 0.04 False

graph
Test Report

Repro

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

Related Issues

Regressions

Improvements

Payloads

Baseline
Compare

Histogram

Edge Detector Info

Collection Data

System.Numerics.Tests.Perf_BitOperations.LeadingZeroCount_ulong


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 942.9160111736351 < 1.168888398888405.
IsChangePoint: Marked as a change because one of 9/9/2022 3:12:19 AM, 9/29/2022 7:42:19 AM, 10/2/2022 11:57:04 PM, 10/19/2022 7:27:15 PM, 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 16.06041921122691 (T) = (0 -943.2657118279471) / Math.Sqrt((20743.003630061005 / (299)) + (2.1012316717558557 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.12424494283285667 = (1077.0885124879376 - 943.2657118279471) / 1077.0885124879376 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
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 x86
OS Windows 10.0.18362
Baseline bfa4812aec806f09f1e2927939ba98118e5e5bf7
Compare 2aebbf75167b3aa21cae23e6fd702688dd724663
Diff Diff

Improvements in System.Collections.Tests.Perf_BitArray

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
BitArrayNot - Duration of single invocation 13.47 ns 11.19 ns 0.83 0.28 False

graph
Test Report

Repro

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

Related Issues

Regressions

Improvements

Payloads

Baseline
Compare

Histogram

Edge Detector Info

Collection Data

System.Collections.Tests.Perf_BitArray.BitArrayNot(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 11.191963393520957 < 12.810523893695366.
IsChangePoint: Marked as a change because one of 9/2/2022 11:09:40 AM, 9/13/2022 6:36:50 PM, 10/11/2022 5:13:36 PM, 10/25/2022 12:27:43 PM, 11/7/2022 4:10:19 PM, 11/14/2022 7:25:10 PM falls between 11/5/2022 10:22:58 PM and 11/14/2022 7:25:10 PM.
IsImprovementStdDev: Marked as improvement because 9.588722567223813 (T) = (0 -11.31547546089085) / Math.Sqrt((2.2657565747820687 / (299)) + (1.2313483521282258 / (38))) is greater than 1.967070609662329 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (38) - 2, .975) and 0.14489058957148943 = (13.232780884986944 - 11.31547546089085) / 13.232780884986944 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
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

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions