Skip to content

[Perf] Regressions in System.Memory.Span<Char> #76027

Closed as not planned
Closed as not planned

Description

@performanceautofiler

Regressions in System.Memory.Span<Char>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
LastIndexOfValue - Duration of single invocation 29.35 ns 33.23 ns 1.13 0.03 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;Char&gt;*'
Details

Payloads

Baseline
Compare

Histogram

Edge Detector Info

Collection Data

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


Description of detection logic

IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsRegressionBase: Marked as regression because the compare was 5% greater than the baseline, and the value was not too small.
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsRegressionWindowed: Marked as regression because 33.234352970999026 > 30.80907330059995.
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, 9/13/2022 2:36:07 PM, 9/22/2022 3:16:12 AM falls between 9/13/2022 2:36:07 PM and 9/22/2022 3:16:12 AM.
IsRegressionStdDev: Marked as regression because -15.831977795834955 (T) = (0 -31.808116157488204) / Math.Sqrt((0.011066090212876852 / (15)) + (0.9197330397655085 / (38))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (15) + (38) - 2, .025) and -0.08531215543829654 = (29.307804209234803 - 31.808116157488204) / 29.307804209234803 is less than -0.05.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
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

Activity

  1. changed the title [-][Perf] Windows/arm64: 1 Regression on 9/13/2022 6:36:50 PM[/-] [+][Perf] Regressions in System.Memory.Span<Char>[/+] on Sep 22, 2022
  2. 10 remaining items

  3. DrewScoggins commented on Sep 22, 2022

    @DrewScoggins
    Member

    Seems related to #75857

  4. adamsitnik commented on Sep 24, 2022

    @adamsitnik
    Member

    It went up, and down after a few days:

    image

    Since #75857 was a bug fix and we can't revert even if it caused a regression, I am going to close the issue.

  5. ghost removed
    untriagedNew issue has not been triaged by the area owner
    on Sep 24, 2022
  6. ghost locked as resolved and limited conversation to collaborators on Oct 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions