Skip to content

[Perf] Changes at 11/22/2021 8:11:44 PM #2517

@performanceautofiler

Description

@performanceautofiler

Run Information

Architecture x64
OS alpine 3.12
Baseline f45dfdc2244166da0248c4a0fabad19a8bfcea1a
Compare 48fe63793040eaee87bdb26ee7d19636527efa3b
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
ImmutableArray - Duration of single invocation 38.90 μs 22.24 μs 0.57 0.13 False
Array - Duration of single invocation 40.28 μs 18.81 μs 0.47 0.09 False
Span - Duration of single invocation 36.32 μs 17.78 μs 0.49 0.07 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 'System.Collections.ContainsFalse&lt;Int32&gt;*'
Details

Payloads

Baseline
Compare

Histogram

System.Collections.ContainsFalse<Int32>.ImmutableArray(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 22.238306160411426 < 36.97994862314173.
IsChangePoint: Marked as a change because one of 11/22/2021 6:07:11 PM, 11/23/2021 6:42:08 AM falls between 11/14/2021 12:07:47 PM and 11/23/2021 6:42:08 AM.
IsImprovementStdDev: Marked as improvement because 371.34392078607164 (T) = (0 -22236.159055871227) / Math.Sqrt((637318.6110205639 / (299)) + (9.220115813090674 / (2))) is greater than 1.9679296690655894 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (2) - 2, .975) and 0.4356155851795846 = (39398.96012710888 - 22236.159055871227) / 39398.96012710888 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsFalse&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 18.814560989520658 < 35.8563517237025.
IsChangePoint: Marked as a change because one of 11/22/2021 6:07:11 PM, 11/23/2021 6:42:08 AM falls between 11/14/2021 12:07:47 PM and 11/23/2021 6:42:08 AM.
IsImprovementStdDev: Marked as improvement because 380.9128834654921 (T) = (0 -18820.121939266483) / Math.Sqrt((749990.6289880677 / (299)) + (61.848324151170544 / (2))) is greater than 1.9679296690655894 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (2) - 2, .975) and 0.5049252450013874 = (38014.70737347378 - 18820.121939266483) / 38014.70737347378 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Collections.ContainsFalse&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 17.7808710072635 < 35.65414976426354.
IsChangePoint: Marked as a change because one of 11/22/2021 6:07:11 PM, 11/23/2021 6:42:08 AM falls between 11/14/2021 12:07:47 PM and 11/23/2021 6:42:08 AM.
IsImprovementStdDev: Marked as improvement because 452.2803137030013 (T) = (0 -17782.701920928193) / Math.Sqrt((510767.6624360083 / (299)) + (6.704489695106301 / (2))) is greater than 1.9679296690655894 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (2) - 2, .975) and 0.5127257957251296 = (36494.24033720653 - 17782.701920928193) / 36494.24033720653 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 x64
OS alpine 3.12
Baseline f45dfdc2244166da0248c4a0fabad19a8bfcea1a
Compare 48fe63793040eaee87bdb26ee7d19636527efa3b
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
Queue - Duration of single invocation 23.68 μs 16.17 μs 0.68 0.01 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.ContainsTrue&lt;Int32&gt;*'
Details

Payloads

Baseline
Compare

Histogram

System.Collections.ContainsTrue<Int32>.Queue(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 16.172932967080317 < 22.239195991209566.
IsChangePoint: Marked as a change because one of 11/22/2021 6:07:11 PM, 11/23/2021 6:42:08 AM falls between 11/14/2021 12:07:47 PM and 11/23/2021 6:42:08 AM.
IsImprovementStdDev: Marked as improvement because 12.38196494195861 (T) = (0 -15559.276071125194) / Math.Sqrt((68201.73599364515 / (299)) + (753149.5719065538 / (2))) is greater than 1.9679296690655894 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (2) - 2, .975) and 0.3281790411141863 = (23159.855115162805 - 15559.276071125194) / 23159.855115162805 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

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions