Skip to content

[Perf] Linux/x64: 6 Regressions on 10/3/2023 8:04:03 PM #22942

@performanceautofiler

Description

@performanceautofiler

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 7abea9ea6ac3cde23fe1a890338e22a5a58a51b6
Compare 213833ea99b79a4b494b2935e1ccb10b93cd4cbc
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Memory.Span<Char>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
12.65 ns 16.91 ns 1.34 0.69 False
45.92 ns 61.98 ns 1.35 0.47 False

graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

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

Payloads

Baseline
Compare

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

ETL Files

Histogram

Description of detection logic

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.
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 16.906139420888977 > 13.12798722052175.
IsChangePoint: Marked as a change because one of 10/3/2023 2:46:17 PM, 10/9/2023 8:09:24 PM falls between 10/1/2023 7:44:15 AM and 10/9/2023 8:09:24 PM.
IsRegressionStdDev: Marked as regression because -8.780844653204175 (T) = (0 -17.397390669041894) / Math.Sqrt((2.20242215468659 / (26)) + (3.853579294059306 / (22))) is less than -2.0128955989180297 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (26) + (22) - 2, .025) and -0.34642954117040464 = (12.921129652220007 - 17.397390669041894) / 12.921129652220007 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.

JIT Disasms

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

ETL Files

Histogram

Description of detection logic

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.
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 61.98329918065356 > 48.053681354965164.
IsChangePoint: Marked as a change because one of 10/4/2023 6:17:44 PM, 10/9/2023 8:09:24 PM falls between 10/1/2023 7:44:15 AM and 10/9/2023 8:09:24 PM.
IsRegressionStdDev: Marked as regression because -4.259880481521262 (T) = (0 -51.44915435241042) / Math.Sqrt((5.213297678564638 / (30)) + (10.091504925580088 / (18))) is less than -2.0128955989180297 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (30) + (18) - 2, .025) and -0.07637548156945861 = (47.79851941386905 - 51.44915435241042) / 47.79851941386905 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.

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 7abea9ea6ac3cde23fe1a890338e22a5a58a51b6
Compare 213833ea99b79a4b494b2935e1ccb10b93cd4cbc
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Microsoft.Extensions.Primitives.StringSegmentBenchmark

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
20.40 ns 24.68 ns 1.21 0.63 False

graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Primitives.StringSegmentBenchmark*'

Payloads

Baseline
Compare

Microsoft.Extensions.Primitives.StringSegmentBenchmark.LastIndexOf

ETL Files

Histogram

Description of detection logic

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.
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 24.67640847667444 > 22.246607567011473.
IsChangePoint: Marked as a change because one of 10/3/2023 2:46:17 PM, 10/9/2023 8:09:24 PM falls between 10/1/2023 7:44:15 AM and 10/9/2023 8:09:24 PM.
IsRegressionStdDev: Marked as regression because -7.326180430486016 (T) = (0 -26.00003329075111) / Math.Sqrt((7.078649060354597 / (26)) + (6.354426420382148 / (22))) is less than -2.0128955989180297 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (26) + (22) - 2, .025) and -0.26753546910768927 = (20.51227277218083 - 26.00003329075111) / 20.51227277218083 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.

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 7abea9ea6ac3cde23fe1a890338e22a5a58a51b6
Compare 213833ea99b79a4b494b2935e1ccb10b93cd4cbc
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Memory.Span<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
10.48 ns 18.48 ns 1.76 0.62 False

graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

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

Payloads

Baseline
Compare

System.Memory.Span<Byte>.LastIndexOfValue(Size: 33)

ETL Files

Histogram

Description of detection logic

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.
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 18.476323091316207 > 12.091420373119755.
IsChangePoint: Marked as a change because one of 10/3/2023 2:46:17 PM, 10/9/2023 8:09:24 PM falls between 10/1/2023 7:44:15 AM and 10/9/2023 8:09:24 PM.
IsRegressionStdDev: Marked as regression because -11.276291958975198 (T) = (0 -16.833534437034196) / Math.Sqrt((1.654282956726461 / (26)) + (3.26918501164675 / (22))) is less than -2.0128955989180297 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (26) + (22) - 2, .025) and -0.4463317639354326 = (11.638778084518153 - 16.833534437034196) / 11.638778084518153 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.

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 7abea9ea6ac3cde23fe1a890338e22a5a58a51b6
Compare 213833ea99b79a4b494b2935e1ccb10b93cd4cbc
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.IO.Tests.Perf_Path

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
115.32 ns 127.08 ns 1.10 0.27 False

graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.IO.Tests.Perf_Path*'

Payloads

Baseline
Compare

System.IO.Tests.Perf_Path.GetFileNameWithoutExtension

ETL Files

Histogram

Description of detection logic

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.
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 127.08157131881542 > 120.62450239198.
IsChangePoint: Marked as a change because one of 10/3/2023 2:46:17 PM, 10/9/2023 8:09:24 PM falls between 10/1/2023 7:44:15 AM and 10/9/2023 8:09:24 PM.
IsRegressionStdDev: Marked as regression because -13.46742380883745 (T) = (0 -127.14894946224385) / Math.Sqrt((9.194031932611797 / (26)) + (8.076843592816402 / (22))) is less than -2.0128955989180297 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (26) + (22) - 2, .025) and -0.098806133884205 = (115.71554393565401 - 127.14894946224385) / 115.71554393565401 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.

JIT Disasms

Docs

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


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 7abea9ea6ac3cde23fe1a890338e22a5a58a51b6
Compare 213833ea99b79a4b494b2935e1ccb10b93cd4cbc
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Memory.Span<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
13.99 ns 18.47 ns 1.32 0.77 False

graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

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

Payloads

Baseline
Compare

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

ETL Files

Histogram

Description of detection logic

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.
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 18.47256598045182 > 14.196659394603948.
IsChangePoint: Marked as a change because one of 10/3/2023 2:46:17 PM, 10/9/2023 8:09:24 PM falls between 10/1/2023 7:44:15 AM and 10/9/2023 8:09:24 PM.
IsRegressionStdDev: Marked as regression because -6.348743736825663 (T) = (0 -19.810480692092955) / Math.Sqrt((7.052434076108821 / (26)) + (6.637475531601061 / (22))) is less than -2.0128955989180297 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (26) + (22) - 2, .025) and -0.3202680344300552 = (15.00489307888524 - 19.810480692092955) / 15.00489307888524 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.

JIT Disasms

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