Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Perf] Changes at 6/7/2022 2:18:03 AM #5954

Closed
performanceautofiler bot opened this issue Jun 9, 2022 · 1 comment
Closed

[Perf] Changes at 6/7/2022 2:18:03 AM #5954

performanceautofiler bot opened this issue Jun 9, 2022 · 1 comment

Comments

@performanceautofiler
Copy link

performanceautofiler bot commented Jun 9, 2022

Run Information

Architecture arm64
OS Windows 10.0.19041
Baseline 213b4d436ed58b9fb1bbf5e0667ea44df1f8c914
Compare bab1a1f239325746873d2ae795ea343e7901dbce
Diff Diff

Improvements in System.Memory.Span<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
LastIndexOfValue - Duration of single invocation 18.21 ns 16.23 ns 0.89 0.23 False
IndexOfAnyTwoValues - Duration of single invocation 21.02 ns 19.49 ns 0.93 0.16 False
IndexOfValue - Duration of single invocation 16.21 ns 14.18 ns 0.88 0.15 False
LastIndexOfAnyValues - Duration of single invocation 25.53 ns 20.69 ns 0.81 0.20 False

graph
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.Memory.Span&lt;Byte&gt;*'

Payloads

Baseline
Compare

Histogram

System.Memory.Span<Byte>.LastIndexOfValue(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.230413520222314 < 17.48683623121895.
IsChangePoint: Marked as a change because one of 2/23/2022 2:01:04 AM, 5/31/2022 5:02:26 PM, 6/6/2022 8:15:49 PM, 6/9/2022 4:58:43 AM falls between 5/31/2022 10:47:41 AM and 6/9/2022 4:58:43 AM.
IsImprovementStdDev: Marked as improvement because 17.278373030444353 (T) = (0 -16.16858763694509) / Math.Sqrt((5.659774178998181 / (299)) + (0.007999713717183386 / (8))) is greater than 1.967772354556772 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (8) - 2, .975) and 0.1310843539234007 = (18.607775921576337 - 16.16858763694509) / 18.607775921576337 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Memory.Span&lt;Byte&gt;.IndexOfAnyTwoValues(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 19.485205352996903 < 19.96322624350127.
IsChangePoint: Marked as a change because one of 2/19/2022 11:51:48 PM, 5/31/2022 5:02:26 PM, 6/6/2022 8:15:49 PM, 6/9/2022 4:58:43 AM falls between 5/31/2022 10:47:41 AM and 6/9/2022 4:58:43 AM.
IsImprovementStdDev: Marked as improvement because 13.845465466430808 (T) = (0 -19.424211451977428) / Math.Sqrt((13.262829446811757 / (299)) + (0.008688505241975782 / (8))) is greater than 1.967772354556772 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (8) - 2, .975) and 0.13190640812095283 = (22.375711137243176 - 19.424211451977428) / 22.375711137243176 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Memory.Span&lt;Byte&gt;.IndexOfValue(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 14.18159830072307 < 15.39497672303815.
IsChangePoint: Marked as a change because one of 5/31/2022 5:02:26 PM, 6/6/2022 8:15:49 PM, 6/9/2022 4:58:43 AM falls between 5/31/2022 10:47:41 AM and 6/9/2022 4:58:43 AM.
IsImprovementStdDev: Marked as improvement because 19.255589845783952 (T) = (0 -14.339441247660341) / Math.Sqrt((4.920919594373062 / (299)) + (0.009669919933169567 / (8))) is greater than 1.967772354556772 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (8) - 2, .975) and 0.1514529726209496 = (16.898817372504727 - 14.339441247660341) / 16.898817372504727 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Memory.Span&lt;Byte&gt;.LastIndexOfAnyValues(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 20.694444444444446 < 24.55930634066642.
IsChangePoint: Marked as a change because one of 2/23/2022 2:01:04 AM, 5/31/2022 5:02:26 PM, 6/6/2022 8:15:49 PM, 6/9/2022 4:58:43 AM falls between 5/31/2022 10:47:41 AM and 6/9/2022 4:58:43 AM.
IsImprovementStdDev: Marked as improvement because 22.697715497190217 (T) = (0 -20.83043211025003) / Math.Sqrt((12.691118434181824 / (299)) + (0.015232061433063904 / (8))) is greater than 1.967772354556772 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (8) - 2, .975) and 0.18664172882260222 = (25.610401773005147 - 20.83043211025003) / 25.610401773005147 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 Windows 10.0.19041
Baseline 213b4d436ed58b9fb1bbf5e0667ea44df1f8c914
Compare bab1a1f239325746873d2ae795ea343e7901dbce
Diff Diff

Improvements in System.Tests.Perf_Array

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
IndexOfChar - Duration of single invocation 14.86 ns 12.74 ns 0.86 0.24 False
IndexOfShort - Duration of single invocation 17.43 ns 15.84 ns 0.91 0.12 False

graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Tests.Perf_Array*'

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_Array.IndexOfChar


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 12.743128820842204 < 14.18936505992504.
IsChangePoint: Marked as a change because one of 4/13/2022 4:27:35 PM, 5/31/2022 5:02:26 PM, 6/6/2022 8:15:49 PM, 6/9/2022 4:58:43 AM falls between 5/31/2022 10:47:41 AM and 6/9/2022 4:58:43 AM.
IsImprovementStdDev: Marked as improvement because 7.207945225767158 (T) = (0 -12.947312943434659) / Math.Sqrt((2.1580386664800657 / (299)) + (0.2900655462196101 / (8))) is greater than 1.967772354556772 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (8) - 2, .975) and 0.10400640789418102 = (14.450229396178036 - 12.947312943434659) / 14.450229396178036 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_Array.IndexOfShort

```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 15.841910274948077 < 16.71170332982949.
IsChangePoint: Marked as a change because one of 4/14/2022 10:59:17 PM, 5/31/2022 5:02:26 PM, 6/6/2022 8:15:49 PM, 6/9/2022 4:58:43 AM falls between 5/31/2022 10:47:41 AM and 6/9/2022 4:58:43 AM.
IsImprovementStdDev: Marked as improvement because 12.760340815775047 (T) = (0 -15.51951413062588) / Math.Sqrt((1.7817145110539594 / (299)) + (0.06527054525028433 / (8))) is greater than 1.967772354556772 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (8) - 2, .975) and 0.08899905776585387 = (17.03567297369166 - 15.51951413062588) / 17.03567297369166 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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant