Skip to content

[Perf] Linux/arm64: 6 Improvements on 12/30/2022 6:15:13 AM #11347

@performanceautofiler

Description

@performanceautofiler

Run Information

Architecture arm64
OS ubuntu 20.04
Baseline 96b849ecfc8c535eafd01e0ae82c8a54488aacfb
Compare c71ad8cfdd0065395b01b3af6c06a0214f04c249
Diff Diff

Improvements in System.Globalization.Tests.StringSearch

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
IndexOf_Word_NotFound - Duration of single invocation 1.18 μs 1.00 μs 0.85 0.00 False
LastIndexOf_Word_NotFound - Duration of single invocation 1.20 μs 1.02 μs 0.85 0.00 False
IndexOf_Word_NotFound - Duration of single invocation 1.18 μs 1.01 μs 0.85 0.00 False
LastIndexOf_Word_NotFound - Duration of single invocation 1.20 μs 1.02 μs 0.85 0.00 False

graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (, IgnoreCase, False))


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 1.0040841132093683 < 1.1229246778583666.
IsChangePoint: Marked as a change because one of 12/30/2022 6:06:02 AM, 1/5/2023 2:25:12 AM falls between 12/27/2022 1:08:06 PM and 1/5/2023 2:25:12 AM.
IsImprovementStdDev: Marked as improvement because 162.42361150282548 (T) = (0 -999.5146445970914) / Math.Sqrt((19.140468119563387 / (299)) + (17.636679460178275 / (15))) is greater than 1.9675964973877862 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (15) - 2, .975) and 0.15321696047839586 = (1180.366868426857 - 999.5146445970914) / 1180.366868426857 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (, IgnoreCase, False))

```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 1.020617028224483 < 1.141986533445799.
IsChangePoint: Marked as a change because one of 9/29/2022 6:03:53 PM, 12/30/2022 6:06:02 AM, 1/5/2023 2:25:12 AM falls between 12/27/2022 1:08:06 PM and 1/5/2023 2:25:12 AM.
IsImprovementStdDev: Marked as improvement because 156.71332440767333 (T) = (0 -1019.3521188819607) / Math.Sqrt((40.539887253985206 / (299)) + (18.63013192177592 / (15))) is greater than 1.9675964973877862 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (15) - 2, .975) and 0.15286107377579347 = (1203.2880172622072 - 1019.3521188819607) / 1203.2880172622072 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (en-US, IgnoreCase, False))

```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 1.0074833870274913 < 1.123022673743787.
IsChangePoint: Marked as a change because one of 12/30/2022 6:06:02 AM, 1/5/2023 2:25:12 AM falls between 12/27/2022 1:08:06 PM and 1/5/2023 2:25:12 AM.
IsImprovementStdDev: Marked as improvement because 232.6613486176684 (T) = (0 -1001.4183359018126) / Math.Sqrt((14.336125943048268 / (299)) + (8.272767648232213 / (15))) is greater than 1.9675964973877862 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (15) - 2, .975) and 0.1524584579128877 = (1181.5566390241725 - 1001.4183359018126) / 1181.5566390241725 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (en-US, IgnoreCase, False))

```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 1.0209920412015758 < 1.1419688314542868.
IsChangePoint: Marked as a change because one of 9/29/2022 6:03:53 PM, 12/30/2022 6:06:02 AM, 1/5/2023 2:25:12 AM falls between 12/27/2022 1:08:06 PM and 1/5/2023 2:25:12 AM.
IsImprovementStdDev: Marked as improvement because 229.57243387723688 (T) = (0 -1017.9839940642762) / Math.Sqrt((16.936896254610456 / (299)) + (9.03184969411989 / (15))) is greater than 1.9675964973877862 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (15) - 2, .975) and 0.15471979573289893 = (1204.3154316466191 - 1017.9839940642762) / 1204.3154316466191 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 arm64
OS ubuntu 20.04
Baseline 96b849ecfc8c535eafd01e0ae82c8a54488aacfb
Compare c71ad8cfdd0065395b01b3af6c06a0214f04c249
Diff Diff

Improvements in System.Memory.ReadOnlySpan

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
IndexOfString - Duration of single invocation 309.46 ns 285.92 ns 0.92 0.00 False
IndexOfString - Duration of single invocation 28.40 ns 26.43 ns 0.93 0.00 False

graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Memory.ReadOnlySpan*'
Details

Payloads

Baseline
Compare

Histogram

System.Memory.ReadOnlySpan.IndexOfString(input: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", value: "x", comparisonType: InvariantCultureIgnoreCase)


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 285.9234344461546 < 293.8831655749665.
IsChangePoint: Marked as a change because one of 12/30/2022 6:06:02 AM, 1/5/2023 2:25:12 AM falls between 12/27/2022 1:08:06 PM and 1/5/2023 2:25:12 AM.
IsImprovementStdDev: Marked as improvement because 821.3111011353799 (T) = (0 -285.925410907568) / Math.Sqrt((0.20295049304693738 / (299)) + (0.0019462132932207307 / (15))) is greater than 1.9675964973877862 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (15) - 2, .975) and 0.07550933339078772 = (309.278850760351 - 285.925410907568) / 309.278850760351 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Memory.ReadOnlySpan.IndexOfString(input: "ABCDE", value: "c", comparisonType: InvariantCultureIgnoreCase)

```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 26.42832663780327 < 27.006086564239755.
IsChangePoint: Marked as a change because one of 9/29/2022 6:03:53 PM, 10/25/2022 5:34:05 PM, 12/30/2022 6:06:02 AM, 1/5/2023 2:25:12 AM falls between 12/27/2022 1:08:06 PM and 1/5/2023 2:25:12 AM.
IsImprovementStdDev: Marked as improvement because 107.48567099128442 (T) = (0 -26.461943325237204) / Math.Sqrt((0.044857853071577636 / (299)) + (0.0017582272583124413 / (15))) is greater than 1.9675964973877862 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (15) - 2, .975) and 0.06226726564832272 = (28.219067497448798 - 26.461943325237204) / 28.219067497448798 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

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions