-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Closed
Labels
arch-arm64area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMICLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIos-linuxLinux OS (any supported distro)Linux OS (any supported distro)runtime-coreclrspecific to the CoreCLR runtimespecific to the CoreCLR runtime
Milestone
Description
Run Information
Architecture | arm64 |
---|---|
OS | ubuntu 20.04 |
Baseline | d6b89c66d492c1e0b0a88d797264039c50c4f4b7 |
Compare | ccefbf9eb36cb3d8adb36f4b141914c2c6cc489b |
Diff | Diff |
Regressions in System.Collections.Concurrent.IsEmpty<String>
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
---|---|---|---|---|---|---|---|---|---|---|
Queue - Duration of single invocation | 14.12 ns | 19.31 ns | 1.37 | 0.29 | False | |||||
Queue - Duration of single invocation | 12.16 ns | 15.42 ns | 1.27 | 0.35 | False |
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Payloads
git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Concurrent.IsEmpty<String>*'
Payloads
Histogram
System.Collections.Concurrent.IsEmpty<String>.Queue(Size: 0)
Description of detection logic
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsRegressionBase: Marked as regression because the compare was 5% greater than the baseline, and the value was not too small.
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsRegressionWindowed: Marked as regression because 19.310314843380713 > 14.59450193659904.
IsChangePoint: Marked as a change because one of 1/11/2023 12:41:22 AM, 1/20/2023 5:04:01 PM, 3/14/2023 8:42:09 PM, 3/16/2023 2:30:29 AM falls between 3/7/2023 7:00:18 AM and 3/16/2023 2:30:29 AM.
IsRegressionStdDev: Marked as regression because -15.859279938690104 (T) = (0 -18.92723506451199) / Math.Sqrt((0.3516334249084847 / (39)) + (0.23546899700603524 / (3))) is less than -2.0210753903043583 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (39) + (3) - 2, .025) and -0.32954831899192993 = (14.235838437870925 - 18.92723506451199) / 14.235838437870925 is less than -0.05.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```#### System.Collections.Concurrent.IsEmpty<String>.Queue(Size: 512)
```log
Description of detection logic
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsRegressionBase: Marked as regression because the compare was 5% greater than the baseline, and the value was not too small.
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsRegressionWindowed: Marked as regression because 15.423064699797807 > 12.6330201870568.
IsChangePoint: Marked as a change because one of 1/11/2023 5:39:19 AM, 1/18/2023 11:00:36 AM, 1/19/2023 1:09:52 AM, 3/14/2023 8:42:09 PM, 3/16/2023 2:30:29 AM falls between 3/7/2023 7:00:18 AM and 3/16/2023 2:30:29 AM.
IsRegressionStdDev: Marked as regression because -15.177505635449018 (T) = (0 -15.125308923266997) / Math.Sqrt((0.3772102502099966 / (38)) + (0.1051353404662959 / (3))) is less than -2.0226909200346674 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (38) + (3) - 2, .025) and -0.27032059609440134 = (11.90668636702399 - 15.125308923266997) / 11.90668636702399 is less than -0.05.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
Architecture | arm64 |
---|---|
OS | ubuntu 20.04 |
Baseline | d6b89c66d492c1e0b0a88d797264039c50c4f4b7 |
Compare | ccefbf9eb36cb3d8adb36f4b141914c2c6cc489b |
Diff | Diff |
Regressions in System.Memory.Constructors<String>
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
---|---|---|---|---|---|---|---|---|---|---|
ReadOnlyMemoryFromArrayStartLength - Duration of single invocation | 1.31 ns | 2.31 ns | 1.77 | 0.50 | False |
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Payloads
git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Memory.Constructors<String>*'
Payloads
Histogram
System.Memory.Constructors<String>.ReadOnlyMemoryFromArrayStartLength
Description of detection logic
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsRegressionBase: Marked as regression because the compare was 5% greater than the baseline, and the value was not too small.
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsRegressionWindowed: Marked as regression because 2.3133186295766923 > 1.279597812182607.
IsChangePoint: Marked as a change because one of 1/11/2023 5:39:19 AM, 3/14/2023 8:42:09 PM, 3/16/2023 2:30:29 AM falls between 3/7/2023 7:00:18 AM and 3/16/2023 2:30:29 AM.
IsRegressionStdDev: Marked as regression because -24.024558230521407 (T) = (0 -2.329308844493261) / Math.Sqrt((0.02316065275154756 / (38)) + (0.004412919966280108 / (3))) is less than -2.0226909200346674 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (38) + (3) - 2, .025) and -0.8883764306317256 = (1.233498155722071 - 2.329308844493261) / 1.233498155722071 is less than -0.05.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Metadata
Metadata
Assignees
Labels
arch-arm64area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMICLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIos-linuxLinux OS (any supported distro)Linux OS (any supported distro)runtime-coreclrspecific to the CoreCLR runtimespecific to the CoreCLR runtime