Closed
Description
Run Information
Name | Value |
---|---|
Architecture | x64 |
OS | Windows 10.0.19042 |
Queue | OwlWindows |
Baseline | 4415472b81adecf3a12b24f8c808da3f33de966b |
Compare | f465d33afd016e7f57b4b37e1efb10ebb074086d |
Diff | Diff |
Configs | CompilationMode:tiered, RunKind:micro |
Improvements in System.Tests.Perf_Enum
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
14.03 ns | 9.78 ns | 0.70 | 0.15 | False | ||||
11.16 ns | 9.77 ns | 0.88 | 0.17 | False | ||||
12.21 ns | 10.07 ns | 0.82 | 0.31 | False | ||||
11.54 ns | 9.78 ns | 0.85 | 0.28 | False | ||||
19.13 ns | 17.56 ns | 0.92 | 0.18 | False | ||||
11.12 ns | 9.89 ns | 0.89 | 0.30 | False | ||||
11.12 ns | 9.81 ns | 0.88 | 0.30 | False |
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Enum*'
Payloads
System.Tests.Perf_Enum.ToString_NonFlags_Small(value: TopDirectoryOnly)
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 5/19/2023 10:30:38 AM, 6/5/2023 10:43:22 AM, 6/8/2023 1:48:44 PM, 6/22/2023 7:55:14 AM, 7/25/2023 12:56:24 AM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 11.176719418566778 (T) = (0 -9.926866318004539) / Math.Sqrt((0.48331444527669004 / (299)) + (0.03301273024604195 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.09261915321327935 = (10.940132088040253 - 9.926866318004539) / 10.940132088040253 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
System.Tests.Perf_Enum.ToString_NonFlags_Small(value: AllDirectories)
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 5/19/2023 10:30:38 AM, 6/5/2023 10:43:22 AM, 6/9/2023 2:21:24 AM, 6/22/2023 7:55:14 AM, 7/23/2023 3:42:40 AM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 24.280436856442925 (T) = (0 -9.844324164208913) / Math.Sqrt((0.44667722761191825 / (299)) + (0.0019242573498576315 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.09658164593087085 = (10.896750237438313 - 9.844324164208913) / 10.896750237438313 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
System.Tests.Perf_Enum.ToString_NonFlags_Large(value: Control)
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 5/19/2023 10:30:38 AM, 6/5/2023 10:43:22 AM, 6/9/2023 2:21:24 AM, 6/22/2023 1:44:15 PM, 7/23/2023 9:45:14 PM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 7.60813437886186 (T) = (0 -10.051249517798658) / Math.Sqrt((0.5941379887697102 / (299)) + (0.09309561805306545 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.09800765606335762 = (11.143386732010528 - 10.051249517798658) / 11.143386732010528 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
System.Tests.Perf_Enum.ToString_NonFlags_Large(value: UppercaseLetter)
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 5/19/2023 10:30:38 AM, 6/5/2023 10:43:22 AM, 6/9/2023 2:21:24 AM, 6/22/2023 7:55:14 AM, 7/23/2023 4:13:29 AM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 26.415822103817295 (T) = (0 -9.856716725401935) / Math.Sqrt((0.6124270355496472 / (299)) + (0.0021547872926601934 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.11773065588566614 = (11.172004095072124 - 9.856716725401935) / 11.172004095072124 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
System.Tests.Perf_Enum.ToString_Format_NonFlags(value: Thursday, format: "f")
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 6/5/2023 10:43:22 AM, 6/9/2023 2:21:24 AM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 9.05862216393716 (T) = (0 -16.912456478867636) / Math.Sqrt((1.0654911049804068 / (299)) + (0.2765494129318853 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.1150141634836814 = (19.110426157148765 - 16.912456478867636) / 19.110426157148765 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
System.Tests.Perf_Enum.ToString_NonFlags_Large(value: Format)
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 5/19/2023 10:30:38 AM, 6/5/2023 10:43:22 AM, 6/9/2023 2:21:24 AM, 6/22/2023 7:55:14 AM, 7/23/2023 4:13:29 AM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 28.47275585620712 (T) = (0 -9.882938365381127) / Math.Sqrt((0.5990771697855342 / (299)) + (0.0005519338334837177 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.11696899696769547 = (11.192062715174648 - 9.882938365381127) / 11.192062715174648 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
System.Tests.Perf_Enum.ToString_NonFlags_Large(value: OtherNotAssigned)
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 5/19/2023 3:32:16 PM, 6/5/2023 10:43:22 AM, 6/9/2023 2:21:24 AM, 6/22/2023 7:55:14 AM, 7/23/2023 6:20:38 PM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 15.685393220234161 (T) = (0 -9.920265150710978) / Math.Sqrt((0.7021552798580761 / (299)) + (0.021365509861314767 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.11399475966727822 = (11.196621305519162 - 9.920265150710978) / 11.196621305519162 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
Name | Value |
---|---|
Architecture | x64 |
OS | Windows 10.0.19042 |
Queue | OwlWindows |
Baseline | 4415472b81adecf3a12b24f8c808da3f33de966b |
Compare | f465d33afd016e7f57b4b37e1efb10ebb074086d |
Diff | Diff |
Configs | CompilationMode:tiered, RunKind:micro |
Improvements in System.Tests.Perf_UInt32
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
17.27 ns | 14.13 ns | 0.82 | 0.05 | False |
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_UInt32*'
Payloads
System.Tests.Perf_UInt32.ParseSpan(value: "4294967295")
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 5/13/2023 1:49:08 AM, 5/19/2023 10:30:38 AM, 6/5/2023 10:43:22 AM, 6/9/2023 2:21:24 AM, 7/12/2023 2:12:47 AM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 51.05647804627756 (T) = (0 -14.135265895331198) / Math.Sqrt((1.6909550720688082 / (299)) + (0.0007362071910747857 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.21577426107624442 = (18.024486055163084 - 14.135265895331198) / 18.024486055163084 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
Name | Value |
---|---|
Architecture | x64 |
OS | Windows 10.0.19042 |
Queue | OwlWindows |
Baseline | 4415472b81adecf3a12b24f8c808da3f33de966b |
Compare | f465d33afd016e7f57b4b37e1efb10ebb074086d |
Diff | Diff |
Configs | CompilationMode:tiered, RunKind:micro |
Improvements in System.Tests.Perf_String
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio |
---|---|---|---|---|---|---|---|---|
16.40 ns | 14.19 ns | 0.87 | 0.11 | False | ||||
12.66 ns | 11.49 ns | 0.91 | 0.06 | False | ||||
15.54 ns | 14.04 ns | 0.90 | 0.07 | False |
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_String*'
Payloads
System.Tests.Perf_String.Insert(s1: "dzsdzsDDZSDZSDZSddsz", i: 7, s2: "Test")
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 6/5/2023 10:43:22 AM, 6/8/2023 8:02:22 AM, 7/23/2023 4:13:29 AM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 17.019399872012748 (T) = (0 -14.042335298358363) / Math.Sqrt((1.1377310743198736 / (299)) + (0.014455053531429514 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.09022953502447222 = (15.435030965460165 - 14.042335298358363) / 15.435030965460165 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
System.Tests.Perf_String.Remove_IntInt(s: "dzsdzsDDZSDZSDZSddsz", i1: 10, i2: 1)
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 5/26/2023 9:55:14 AM, 6/2/2023 6:53:36 PM, 6/5/2023 10:43:22 AM, 6/8/2023 8:02:22 AM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 17.235819805819556 (T) = (0 -11.167394569003505) / Math.Sqrt((1.08972124333885 / (299)) + (0.04286466770435404 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.1457349313479467 = (13.07251692571787 - 11.167394569003505) / 13.07251692571787 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
System.Tests.Perf_String.Insert(s1: "Test", i: 2, s2: " Test")
ETL Files
Histogram
Description of detection logic
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.
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 we could not find enough baseline builds for window checking.
IsChangePoint: Marked as a change because one of 6/5/2023 10:43:22 AM, 6/8/2023 8:02:22 AM, 7/14/2023 2:26:40 PM, 8/8/2023 9:37:01 AM, 8/14/2023 10:44:26 PM falls between 8/5/2023 9:09:13 PM and 8/14/2023 10:44:26 PM.
IsImprovementStdDev: Marked as improvement because 5.459545924141745 (T) = (0 -13.405606379185247) / Math.Sqrt((1.1437532984397607 / (299)) + (0.18315789903590826 / (5))) is greater than 1.9678502273660254 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (5) - 2, .975) and 0.07571339288262785 = (14.503733231615367 - 13.405606379185247) / 14.503733231615367 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
JIT Disasms
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository