Skip to content

[Perf] ubuntu 18.04/x64 : Regressions in System.Memory.Span<Byte> on 8/18/2022 3:00:51 AM #74437

@performanceautofiler

Description

@performanceautofiler

Regressions in System.Memory.Span<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
IndexOfAnyFourValues - Duration of single invocation 558.19 ns 609.60 ns 1.09 0.04 False
Reverse - Duration of single invocation 9.00 ns 13.70 ns 1.52 0.10 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Memory.Span<Byte>.IndexOfAnyFourValues(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 609.6012116532438 > 582.2217924660905.
IsChangePoint: Marked as a change because one of 6/21/2022 5:13:43 PM, 7/7/2022 8:07:51 AM, 7/13/2022 7:22:00 AM, 8/18/2022 12:00:10 AM, 8/23/2022 7:19:33 AM falls between 8/5/2022 10:47:59 PM and 8/23/2022 7:19:33 AM.
IsRegressionStdDev: Marked as regression because -10.311622000573017 (T) = (0 -603.0243648755514) / Math.Sqrt((310.0218170282802 / (23)) + (133.8970184319089 / (25))) is less than -2.0128955989180297 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (25) - 2, .025) and -0.08016126770953527 = (558.2725310584918 - 603.0243648755514) / 558.2725310584918 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.

```#### System.Memory.Span&lt;Byte&gt;.Reverse(Size: 512)

```log

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 13.697770723836017 > 9.311207704530013.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/7/2022 7:02:29 PM, 7/9/2022 7:52:53 PM, 8/5/2022 10:47:59 PM, 8/23/2022 7:19:33 AM falls between 8/5/2022 10:47:59 PM and 8/23/2022 7:19:33 AM.
IsRegressionStdDev: Marked as regression because -57.91721242954937 (T) = (0 -13.676506550332855) / Math.Sqrt((0.12461960600712674 / (20)) + (0.009506423978100444 / (28))) is less than -2.0128955989180297 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (20) + (28) - 2, .025) and -0.5226878679638847 = (8.981818820570806 - 13.676506550332855) / 8.981818820570806 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.

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