dotnet / perf-autofiling-issues

A landing place for auto-filed performance issues before they receive triage
MIT License
9 stars 4 forks source link

[Perf] Alpine/x64: 33 Regressions on 6/8/2023 9:27:53 AM #18730

Open performanceautofiler[bot] opened 1 year ago

performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions 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](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.html>) 13.82 ns 15.05 ns 1.09 0.28 False
[IndexOfString - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22Hello%20WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello%20WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello%20Worldbbbbbbbbbbbbbbbbbb.html>) 7.45 ns 10.49 ns 1.41 0.15 False
[IndexOfString - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%22%2c%20value%3a%20%22x%22%2c%20comparisonType%3a%20OrdinalIgnoreCase).html>) 8.53 ns 10.06 ns 1.18 0.18 False
[IndexOfString - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0.html>) 13.81 ns 17.04 ns 1.23 0.17 False
[IndexOfString - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22More%20Test%27s%22%2c%20value%3a%20%22Tests%22%2c%20comparisonType%3a%20OrdinalIgnoreCase).html>) 13.75 ns 15.36 ns 1.12 0.01 False
[IndexOfString - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22Hello%20Worldbbbbbbbbbbbbbbcbbbbbbbbbbbbbbbbbbba!%22%2c%20value%3a%20%22y%22%2c%20comparisonType%3a%20Ordinal).html>) 5.69 ns 7.42 ns 1.30 0.10 False
[IndexOfString - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22StrIng%22%2c%20value%3a%20%22string%22%2c%20comparisonType%3a%20OrdinalIgnoreCase).html>) 9.31 ns 10.76 ns 1.16 0.05 False
[IndexOfString - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22Hello%20WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello%20WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello%20Worldbbbbbbbbbbbbbbbbbbb.html>) 7.40 ns 8.96 ns 1.21 0.08 False
[IndexOfString - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%99%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%22%2c%20value%3a%20%22%e3%81%99%22%2c%20comparisonType%3a%20Ordinal).html>) 6.19 ns 7.95 ns 1.29 0.13 False

graph graph graph graph graph graph graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Memory.ReadOnlySpan*'
### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.ReadOnlySpan.IndexOfString(input: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", value: "X", comparisonType: Ordinal) ```log ``` ### 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 15.048743013198676 > 14.483521837393651. IsChangePoint: Marked as a change because one of 2/17/2023 12:28:21 PM, 3/10/2023 8:23:08 AM, 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -6.7898564372351045 (T) = (0 -15.572239931130563) / Math.Sqrt((0.001524173036023313 / (23)) + (1.1672020737509026 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.12905762324176853 = (13.792245506849593 - 15.572239931130563) / 13.792245506849593 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.ReadOnlySpan.IndexOfString(input: "Hello WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello Worldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylong!xyz", value: "~", comparisonType: Ordinal) ```log ``` ### 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 10.491292705291292 > 7.836754678938116. IsChangePoint: Marked as a change because one of 6/1/2023 1:33:18 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -13.64819377313913 (T) = (0 -9.163125186445722) / Math.Sqrt((0.04525287067296521 / (23)) + (0.21609473857470135 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.2201957169590776 = (7.5095536388881055 - 9.163125186445722) / 7.5095536388881055 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.ReadOnlySpan.IndexOfString(input: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", value: "x", comparisonType: OrdinalIgnoreCase) ```log ``` ### 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 10.05994650908245 > 8.964245953195876. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/9/2023 2:21:24 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -8.591601245124085 (T) = (0 -10.336912008506323) / Math.Sqrt((0.017095903198282445 / (28)) + (0.49492440964628065 / (12))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (28) + (12) - 2, .025) and -0.20487852348592128 = (8.579215088505233 - 10.336912008506323) / 8.579215088505233 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.ReadOnlySpan.IndexOfString(input: "だだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだxだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだ", value: "x", comparisonType: Ordinal) ```log ``` ### 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 17.04104319318589 > 14.494028321064581. IsChangePoint: Marked as a change because one of 2/17/2023 5:12:50 PM, 3/8/2023 10:34:21 AM, 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -7.7813930997367855 (T) = (0 -15.375700800352273) / Math.Sqrt((0.21229220540907087 / (23)) + (0.46175894744910284 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.10686142437904313 = (13.89126087665233 - 15.375700800352273) / 13.89126087665233 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.ReadOnlySpan.IndexOfString(input: "More Test's", value: "Tests", comparisonType: OrdinalIgnoreCase) ```log ``` ### 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 15.359879101575604 > 14.422054390344284. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/9/2023 2:21:24 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -22.684417108097744 (T) = (0 -15.189420298430525) / Math.Sqrt((0.13772707090649625 / (28)) + (0.027921966688106606 / (12))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (28) + (12) - 2, .025) and -0.14563720868425886 = (13.258490718781093 - 15.189420298430525) / 13.258490718781093 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.ReadOnlySpan.IndexOfString(input: "Hello Worldbbbbbbbbbbbbbbcbbbbbbbbbbbbbbbbbbba!", value: "y", comparisonType: Ordinal) ```log ``` ### 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 7.423824961200188 > 5.968104382838675. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -32.281291376422 (T) = (0 -7.289472024541094) / Math.Sqrt((6.654123998939318E-05 / (23)) + (0.0419359546560398 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.2821807695200791 = (5.6852139712480225 - 7.289472024541094) / 5.6852139712480225 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.ReadOnlySpan.IndexOfString(input: "StrIng", value: "string", comparisonType: OrdinalIgnoreCase) ```log ``` ### 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 10.762902670843639 > 9.807877005916945. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/9/2023 2:21:24 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -26.571747591228945 (T) = (0 -10.806898748652499) / Math.Sqrt((0.12568998217743343 / (28)) + (0.009370223792406705 / (12))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (28) + (12) - 2, .025) and -0.21727147943556216 = (8.877969237941532 - 10.806898748652499) / 8.877969237941532 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.ReadOnlySpan.IndexOfString(input: "Hello WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello Worldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylong!xyz", value: "w", comparisonType: OrdinalIgnoreCase) ```log ``` ### 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 8.960414182954008 > 7.775267514082302. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/9/2023 2:21:24 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -124.82076129986308 (T) = (0 -8.947280397245256) / Math.Sqrt((0.003252831189565835 / (28)) + (0.00047444941779781457 / (12))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (28) + (12) - 2, .025) and -0.2107740423559497 = (7.389719373100739 - 8.947280397245256) / 7.389719373100739 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.ReadOnlySpan.IndexOfString(input: "だだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだすだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだ", value: "す", comparisonType: Ordinal) ```log ``` ### 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 7.951630957862533 > 6.497192269976557. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -17.118938626991124 (T) = (0 -7.891794454426213) / Math.Sqrt((0.3156320341935547 / (22)) + (0.016443148726539365 / (17))) is less than -2.026192463026769 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (22) + (17) - 2, .025) and -0.36694228679964574 = (5.773319422945705 - 7.891794454426213) / 5.773319422945705 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in System.Text.Json.Tests.Perf_Depth

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[ReadSpanEmptyLoop - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Text.Json.Tests.Perf_Depth.ReadSpanEmptyLoop(Depth%3a%20512).html>) 11.54 μs 13.38 μs 1.16 0.04 False

graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_Depth*'
### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Depth.ReadSpanEmptyLoop(Depth: 512) ```log ``` ### 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 13.381581506769763 > 11.967582940259518. IsChangePoint: Marked as a change because one of 2/8/2023 6:12:15 AM, 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -19.916172284308267 (T) = (0 -13463.275552249772) / Math.Sqrt((187751.5325801116 / (23)) + (37199.097667392525 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.1771706853518376 = (11436.978273227907 - 13463.275552249772) / 11436.978273227907 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in System.Collections.Tests.DictionarySequentialKeys

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[TryGetValue_3k_Int_32ByteRefsValue - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_32ByteRefsValue.html>) 1.92 ns 3.19 ns 1.66 0.06 False
[TryGetValue_3k_Int_32ByteValue - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_32ByteValue.html>) 1.93 ns 3.21 ns 1.67 0.05 False
[TryGetValue_17_Int_Int - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Collections.Tests.DictionarySequentialKeys.TryGetValue_17_Int_Int.html>) 2.11 ns 3.17 ns 1.51 0.13 False
[TryGetValue_3k_Int_Int - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_Int.html>) 1.87 ns 3.14 ns 1.68 0.09 False

graph graph graph graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Tests.DictionarySequentialKeys*'
### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_32ByteRefsValue ```log ``` ### 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 3.194295945244417 > 2.025092706739088. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -392.87466373485734 (T) = (0 -3.190938900944305) / Math.Sqrt((0.00010962022192871142 / (23)) + (9.467085986995361E-05 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.6551169726378896 = (1.9279234964636098 - 3.190938900944305) / 1.9279234964636098 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.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_32ByteValue ```log ``` ### 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 3.212047436339049 > 2.022060186122284. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -145.5257283840329 (T) = (0 -3.1914403636275446) / Math.Sqrt((0.001584063981951688 / (23)) + (0.00010155213901968923 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.6515037421073259 = (1.9324451300093652 - 3.1914403636275446) / 1.9324451300093652 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.Collections.Tests.DictionarySequentialKeys.TryGetValue_17_Int_Int ```log ``` ### 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 3.1707275580927172 > 2.043780945399414. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/9/2023 2:21:24 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -88.97583461302688 (T) = (0 -3.140296219969544) / Math.Sqrt((0.0019057315317679581 / (28)) + (0.0012888224433818497 / (12))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (28) + (12) - 2, .025) and -0.6008050059041202 = (1.96169815086 - 3.140296219969544) / 1.96169815086 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.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_Int ```log ``` ### 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 3.1366238644191853 > 1.9649934359208114. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -637.330438014606 (T) = (0 -3.13857229916918) / Math.Sqrt((2.2073768145196604E-06 / (23)) + (6.557478946717187E-05 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.6771504505359617 = (1.8713719441008982 - 3.13857229916918) / 1.8713719441008982 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in PerfLabTests.GetMember

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[GetMethod5 - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/PerfLabTests.GetMember.GetMethod5.html>) 270.94 μs 298.58 μs 1.10 0.05 False
[GetMethod15 - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/PerfLabTests.GetMember.GetMethod15.html>) 822.40 μs 905.10 μs 1.10 0.04 False
[GetMethod3 - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/PerfLabTests.GetMember.GetMethod3.html>) 162.53 μs 178.61 μs 1.10 0.09 False
[GetMethod1 - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/PerfLabTests.GetMember.GetMethod1.html>) 54.52 μs 57.86 μs 1.06 0.21 False
[GetMethod4 - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/PerfLabTests.GetMember.GetMethod4.html>) 218.71 μs 243.47 μs 1.11 0.07 False
[GetMethod12 - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/PerfLabTests.GetMember.GetMethod12.html>) 664.81 μs 705.61 μs 1.06 0.05 False
[GetMethod10 - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/PerfLabTests.GetMember.GetMethod10.html>) 544.92 μs 598.16 μs 1.10 0.06 False
[GetMethod2 - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/PerfLabTests.GetMember.GetMethod2.html>) 109.98 μs 117.06 μs 1.06 0.15 False
[GetMethod20 - Duration of single invocation](<https://pvscmdupload.blob.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/PerfLabTests.GetMember.GetMethod20.html>) 1.10 ms 1.18 ms 1.08 0.03 False

graph graph graph graph graph graph graph graph graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'PerfLabTests.GetMember*'
### Payloads [Baseline]() [Compare]() ### Histogram #### PerfLabTests.GetMember.GetMethod5 ```log ``` ### 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 298.5839522156085 > 287.1716373801894. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 4/12/2023 4:44:56 PM, 6/5/2023 4:27:01 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -6.23798700813431 (T) = (0 -290876.5713671792) / Math.Sqrt((322875657.59688073 / (23)) + (103720169.9862147 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.10648894957703085 = (262882.4910347007 - 290876.5713671792) / 262882.4910347007 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 #### PerfLabTests.GetMember.GetMethod15 ```log ``` ### 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 905.0959513221154 > 863.1218113733555. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 4/12/2023 4:44:56 PM, 6/5/2023 4:27:01 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -6.694144311583595 (T) = (0 -882874.8835981269) / Math.Sqrt((2925572299.7499394 / (23)) + (888355293.223757 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.11305515295676413 = (793199.5833744832 - 882874.8835981269) / 793199.5833744832 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 #### PerfLabTests.GetMember.GetMethod3 ```log ``` ### 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 178.61438587164747 > 172.33282035156248. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 4/12/2023 4:44:56 PM, 6/5/2023 4:27:01 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -5.5331612309988145 (T) = (0 -175594.5943522491) / Math.Sqrt((149960934.59967995 / (23)) + (51591094.71914128 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.10791441055912156 = (158491.11869899166 - 175594.5943522491) / 158491.11869899166 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 #### PerfLabTests.GetMember.GetMethod1 ```log ``` ### 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 57.85729952050266 > 57.414758567474045. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 6/1/2023 1:33:18 PM, 6/5/2023 4:27:01 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -4.987828510580056 (T) = (0 -57818.1661464879) / Math.Sqrt((18359925.64619333 / (23)) + (7128024.161268752 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.10520436542204675 = (52314.45690536044 - 57818.1661464879) / 52314.45690536044 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 #### PerfLabTests.GetMember.GetMethod4 ```log ``` ### 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 243.4694103233831 > 231.30438657552082. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 4/12/2023 4:44:56 PM, 6/5/2023 4:27:01 PM, 6/8/2023 9:27:53 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -6.905716288444169 (T) = (0 -236228.3942984896) / Math.Sqrt((222586216.2518296 / (24)) + (74339579.27790684 / (16))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (24) + (16) - 2, .025) and -0.12242297507591676 = (210462.89994421395 - 236228.3942984896) / 210462.89994421395 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 #### PerfLabTests.GetMember.GetMethod12 ```log ``` ### 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 705.6103274456519 > 696.7970358593751. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 4/12/2023 4:44:56 PM, 6/5/2023 4:27:01 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -6.630681829777419 (T) = (0 -703170.7388003449) / Math.Sqrt((1791365018.9440606 / (23)) + (443813943.8294503 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.10639137842643646 = (635553.3426159091 - 703170.7388003449) / 635553.3426159091 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 #### PerfLabTests.GetMember.GetMethod10 ```log ``` ### 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 598.1638491809117 > 574.8510503771553. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 4/12/2023 4:44:56 PM, 6/5/2023 4:27:01 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -5.948351677717831 (T) = (0 -583211.0843046801) / Math.Sqrt((1494619793.3937922 / (23)) + (437856946.8994514 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.10761107526924876 = (526548.6210156463 - 583211.0843046801) / 526548.6210156463 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 #### PerfLabTests.GetMember.GetMethod2 ```log ``` ### 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 117.05537572115387 > 115.05152612586483. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 4/12/2023 4:44:56 PM, 6/5/2023 4:27:01 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -5.356332899999295 (T) = (0 -116300.54206554352) / Math.Sqrt((54117528.13342217 / (22)) + (22356984.78418637 / (17))) is less than -2.026192463026769 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (22) + (17) - 2, .025) and -0.09827813099817774 = (105893.52440245984 - 116300.54206554352) / 105893.52440245984 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 #### PerfLabTests.GetMember.GetMethod20 ```log ``` ### 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 1.1800521201923075 > 1.1531067765176282. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 4/12/2023 4:44:56 PM, 6/5/2023 4:27:01 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -6.070382747887606 (T) = (0 -1174662.454207155) / Math.Sqrt((5731374729.182035 / (23)) + (2029173109.8926742 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.11013601236744991 = (1058124.8073396857 - 1174662.454207155) / 1058124.8073396857 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in System.Memory.Span<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[IndexOfAnyFiveValues - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.Span(Int32).IndexOfAnyFiveValues(Size%3a%2033).html>) 37.80 ns 43.80 ns 1.16 0.08 False
[IndexOfAnyFiveValues - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.Span(Int32).IndexOfAnyFiveValues(Size%3a%20512).html>) 516.26 ns 673.51 ns 1.30 0.05 False
[IndexOfAnyFourValues - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Memory.Span(Int32).IndexOfAnyFourValues(Size%3a%20512).html>) 566.49 ns 619.51 ns 1.09 0.04 False

graph graph graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Memory.Span&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### Histogram #### System.Memory.Span<Int32>.IndexOfAnyFiveValues(Size: 33) ```log ``` ### 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 43.79748909110571 > 39.71663857723076. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 4/9/2023 11:04:55 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -4.797789704517152 (T) = (0 -42.95283366557188) / Math.Sqrt((12.374693419839055 / (23)) + (2.163365183363127 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.10024006445910451 = (39.039510605976865 - 42.95283366557188) / 39.039510605976865 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<Int32>.IndexOfAnyFiveValues(Size: 512) ```log ``` ### 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 673.507547462589 > 542.6853025136786. IsChangePoint: Marked as a change because one of 3/14/2023 8:42:09 PM, 3/20/2023 8:31:51 AM, 3/25/2023 12:18:49 AM, 4/9/2023 11:04:55 PM, 6/9/2023 2:21:24 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -9.702018013104176 (T) = (0 -673.8837971394274) / Math.Sqrt((4278.580008614657 / (28)) + (0.09165593457641961 / (12))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (28) + (12) - 2, .025) and -0.21650784855276026 = (553.9494035662203 - 673.8837971394274) / 553.9494035662203 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<Int32>.IndexOfAnyFourValues(Size: 512) ```log ``` ### 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 619.5078386492427 > 594.8718720010396. IsChangePoint: Marked as a change because one of 3/3/2023 4:59:02 PM, 3/6/2023 11:14:52 AM, 3/14/2023 8:42:09 PM, 3/20/2023 8:31:51 AM, 3/25/2023 12:18:49 AM, 4/9/2023 11:04:55 PM, 6/9/2023 2:21:24 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -25.979381690008847 (T) = (0 -619.9889631757313) / Math.Sqrt((108.78963631790666 / (28)) + (0.10306495188767952 / (12))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (28) + (12) - 2, .025) and -0.09014086106666414 = (568.7237175653559 - 619.9889631757313) / 568.7237175653559 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in System.Text.Json.Tests.Perf_Booleans

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[WriteBooleans - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Text.Json.Tests.Perf_Booleans.WriteBooleans(Formatted%3a%20True%2c%20SkipValidation%3a%20True).html>) 1.06 ms 1.22 ms 1.15 0.01 False

graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_Booleans*'
### Payloads [Baseline]() [Compare]() ### Histogram #### System.Text.Json.Tests.Perf_Booleans.WriteBooleans(Formatted: True, SkipValidation: True) ```log ``` ### 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 1.21748754635989 > 1.1160533190625002. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -32.44276213231848 (T) = (0 -1231692.0724828504) / Math.Sqrt((178662186.08579636 / (23)) + (268715572.0672778 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.14664525741477163 = (1074170.1188908464 - 1231692.0724828504) / 1074170.1188908464 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in System.IO.Tests.Perf_Path

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[ChangeExtension - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.IO.Tests.Perf_Path.ChangeExtension.html>) 13.60 ns 15.69 ns 1.15 0.05 False
[GetFileName - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.IO.Tests.Perf_Path.GetFileName.html>) 12.22 ns 14.06 ns 1.15 0.10 False

graph graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.IO.Tests.Perf_Path*'
### Payloads [Baseline]() [Compare]() ### Histogram #### System.IO.Tests.Perf_Path.ChangeExtension ```log ``` ### 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 15.691605190291085 > 14.160760656469476. IsChangePoint: Marked as a change because one of 4/12/2023 9:47:42 AM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -12.642010117450054 (T) = (0 -15.565627458334992) / Math.Sqrt((0.2831205134499131 / (23)) + (0.10164725234948443 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.1233878116617573 = (13.855969680950814 - 15.565627458334992) / 13.855969680950814 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.IO.Tests.Perf_Path.GetFileName ```log ``` ### 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 14.063576705791686 > 12.663212091785843. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/9/2023 2:21:24 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -11.07489236240127 (T) = (0 -14.01780948079295) / Math.Sqrt((0.18845874387150793 / (28)) + (0.2370860592311061 / (12))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (28) + (12) - 2, .025) and -0.14755586580298863 = (12.215361272180116 - 14.01780948079295) / 12.215361272180116 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in System.Linq.Tests.Perf_Enumerable

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[Except - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Linq.Tests.Perf_Enumerable.Except(input%3a%20IEnumerable).html>) 1.66 μs 1.85 μs 1.11 0.02 False

graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Linq.Tests.Perf_Enumerable*'
### Payloads [Baseline]() [Compare]() ### Histogram #### System.Linq.Tests.Perf_Enumerable.Except(input: IEnumerable) ```log ``` ### 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 1.8471004712418908 > 1.7365022632777374. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -12.83373731305551 (T) = (0 -1876.5382459106522) / Math.Sqrt((54.017598570240914 / (23)) + (4942.653545449728 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.13261086602193842 = (1656.825218798761 - 1876.5382459106522) / 1656.825218798761 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in System.Numerics.Tests.Perf_BigInteger

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[Parse - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Numerics.Tests.Perf_BigInteger.Parse(numberString%3a%201234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012.html>) 1.04 μs 1.24 μs 1.19 0.01 False

graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tests.Perf_BigInteger*'
### Payloads [Baseline]() [Compare]() ### Histogram #### System.Numerics.Tests.Perf_BigInteger.Parse(numberString: 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890) ```log ``` ### 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 1.2366097445544555 > 1.0968011719163957. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -54.23190867903364 (T) = (0 -1232.322964603512) / Math.Sqrt((172.831669120204 / (23)) + (43.33577835734191 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.1622593495250675 = (1060.2822555112803 - 1232.322964603512) / 1060.2822555112803 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in BenchmarksGame.KNucleotide_1

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[RunBench - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/BenchmarksGame.KNucleotide_1.RunBench.html>) 187.59 ms 233.28 ms 1.24 0.02 False

graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'BenchmarksGame.KNucleotide_1*'
### Payloads [Baseline]() [Compare]() ### Histogram #### BenchmarksGame.KNucleotide_1.RunBench ```log ``` ### 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 233.27846540000002 > 197.57499339375. IsChangePoint: Marked as a change because one of 2/24/2023 8:06:06 PM, 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -97.5802853057736 (T) = (0 -231272640.56414568) / Math.Sqrt((2691465326598.2407 / (23)) + (1446369786917.1863 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.23408056802366647 = (187404815.01505214 - 231272640.56414568) / 187404815.01505214 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS alpine 3.15
Queue TigerAlpine
Baseline 79effd2c09a7a3049d0b29c998e444ba51864131
Compare 9b53f4b5238e4994cc65ecee7e3d9023c7197770
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Regressions in System.Collections.Tests.Perf_PriorityQueue<Int32, Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
[HeapSort - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_alpine 3.15/System.Collections.Tests.Perf_PriorityQueue(Int32%2c%20Int32).HeapSort(Size%3a%201000).html>) 45.30 μs 50.71 μs 1.12 0.02 False

graph Test Report

Repro

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

Payloads

Baseline Compare

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Tests.Perf_PriorityQueue&lt;Int32, Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### Histogram #### System.Collections.Tests.Perf_PriorityQueue<Int32, Int32>.HeapSort(Size: 1000) ```log ``` ### 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 50.71004344371243 > 47.7153670842114. IsChangePoint: Marked as a change because one of 4/12/2023 4:44:56 PM, 6/8/2023 8:02:22 AM, 6/12/2023 11:18:39 PM falls between 6/4/2023 12:53:30 AM and 6/12/2023 11:18:39 PM. IsRegressionStdDev: Marked as regression because -21.07759692071865 (T) = (0 -50504.81362304137) / Math.Sqrt((425104.5652499965 / (23)) + (734829.5184368426 / (17))) is less than -2.0243941639098457 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (23) + (17) - 2, .025) and -0.11566237370196561 = (45268.904655677725 - 50504.81362304137) / 45268.904655677725 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](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)