-
Notifications
You must be signed in to change notification settings - Fork 4
Description
Run Information
| Architecture | x64 |
|---|---|
| OS | alpine 3.15 |
| Baseline | 7e3bf878c105ea6114e56d3e6e3014c5480cb060 |
| Compare | 1c8d37af80667daffb3cb80ce0fe915621e8f039 |
| Diff | Diff |
Improvements in System.Tests.Perf_Enum
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| ToString_Format_NonFlags - Duration of single invocation | 21.19 ns | 18.83 ns | 0.89 | 0.11 | 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Enum*'Payloads
Histogram
System.Tests.Perf_Enum.ToString_Format_NonFlags(value: Wednesday, format: "x")
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 18.831215261788667 < 19.467236315316477.
IsChangePoint: Marked as a change because one of 1/18/2023 3:20:52 PM, 2/24/2023 9:01:57 AM, 3/3/2023 4:59:02 PM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 11.155382355890646 (T) = (0 -18.93390078404947) / Math.Sqrt((0.5035079319318728 / (299)) + (0.029877889852892154 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.05977423011972588 = (20.137610976627947 - 18.93390078404947) / 20.137610976627947 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
| Architecture | x64 |
|---|---|
| OS | alpine 3.15 |
| Baseline | 7e3bf878c105ea6114e56d3e6e3014c5480cb060 |
| Compare | 1c8d37af80667daffb3cb80ce0fe915621e8f039 |
| Diff | Diff |
Improvements in PerfLabTests.LowLevelPerf
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| GenericClassWithSTringGenericInstanceMethod - Duration of single invocation | 180.67 μs | 152.34 μs | 0.84 | 0.04 | 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'PerfLabTests.LowLevelPerf*'Payloads
Histogram
PerfLabTests.LowLevelPerf.GenericClassWithSTringGenericInstanceMethod
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 152.3403694088072 < 171.34031919327077.
IsChangePoint: Marked as a change because one of 2/9/2023 4:10:34 PM, 3/3/2023 4:59:02 PM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 29.852162995237467 (T) = (0 -152473.24736454888) / Math.Sqrt((124129321.29627003 / (299)) + (85581.7734174978 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.11536615626187723 = (172357.46568349173 - 152473.24736454888) / 172357.46568349173 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
| Architecture | x64 |
|---|---|
| OS | alpine 3.15 |
| Baseline | 7e3bf878c105ea6114e56d3e6e3014c5480cb060 |
| Compare | 1c8d37af80667daffb3cb80ce0fe915621e8f039 |
| Diff | Diff |
Improvements in System.Tests.Perf_Single
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| Parse - Duration of single invocation | 70.62 ns | 64.35 ns | 0.91 | 0.03 | False | |||||
| TryParse - Duration of single invocation | 72.74 ns | 67.66 ns | 0.93 | 0.03 | False | |||||
| TryParse - Duration of single invocation | 69.91 ns | 63.98 ns | 0.92 | 0.02 | False | |||||
| Parse - Duration of single invocation | 73.32 ns | 67.32 ns | 0.92 | 0.03 | 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Single*'Payloads
Histogram
System.Tests.Perf_Single.Parse(value: "3.4028235E+38")
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 64.35162825994529 < 68.49292357120117.
IsChangePoint: Marked as a change because one of 2/9/2023 4:27:10 AM, 2/13/2023 3:18:56 PM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 92.45862739764928 (T) = (0 -64.35795784425345) / Math.Sqrt((1.2468578843998481 / (299)) + (0.0014350027674307777 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.08921054867553092 = (70.66172950363465 - 64.35795784425345) / 70.66172950363465 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```#### System.Tests.Perf_Single.TryParse(value: "-3.4028235E+38")
```log
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 67.66426144697546 < 70.46482333680902.
IsChangePoint: Marked as a change because one of 2/9/2023 4:27:10 AM, 2/13/2023 6:54:14 PM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 33.24772337549919 (T) = (0 -67.46788836414048) / Math.Sqrt((2.1394483363726264 / (299)) + (0.0821043815647204 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.08388282674100636 = (73.64547934859722 - 67.46788836414048) / 73.64547934859722 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```#### System.Tests.Perf_Single.TryParse(value: "3.4028235E+38")
```log
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 63.98182662295813 < 67.73142277353584.
IsChangePoint: Marked as a change because one of 2/9/2023 10:24:28 PM, 2/13/2023 6:54:14 PM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 85.02779340173855 (T) = (0 -63.99382222872905) / Math.Sqrt((1.675628928596113 / (299)) + (0.0010792222262353923 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.09306034088836332 = (70.56017628715468 - 63.99382222872905) / 70.56017628715468 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```#### System.Tests.Perf_Single.Parse(value: "-3.4028235E+38")
```log
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 67.31568198792027 < 70.89197909193852.
IsChangePoint: Marked as a change because one of 2/9/2023 4:27:10 AM, 2/15/2023 9:41:15 PM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 75.11009206652751 (T) = (0 -67.37654816915268) / Math.Sqrt((1.4969083692339633 / (299)) + (0.0061432360222930076 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.08561327532719666 = (73.68495883758828 - 67.37654816915268) / 73.68495883758828 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
| Architecture | x64 |
|---|---|
| OS | alpine 3.15 |
| Baseline | 7e3bf878c105ea6114e56d3e6e3014c5480cb060 |
| Compare | 1c8d37af80667daffb3cb80ce0fe915621e8f039 |
| Diff | Diff |
Improvements in HardwareIntrinsics.RayTracer.SoA
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| Render - Duration of single invocation | 6.72 ms | 5.54 ms | 0.82 | 0.07 | 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'HardwareIntrinsics.RayTracer.SoA*'Payloads
Histogram
HardwareIntrinsics.RayTracer.SoA.Render
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 5.539789569875776 < 6.395653301666665.
IsChangePoint: Marked as a change because one of 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 13.647847847106151 (T) = (0 -5431551.043973833) / Math.Sqrt((20707315886.723663 / (299)) + (25542911797.042458 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.18883525409319432 = (6695990.020993666 - 5431551.043973833) / 6695990.020993666 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
| Architecture | x64 |
|---|---|
| OS | alpine 3.15 |
| Baseline | 7e3bf878c105ea6114e56d3e6e3014c5480cb060 |
| Compare | 1c8d37af80667daffb3cb80ce0fe915621e8f039 |
| Diff | Diff |
Improvements in System.Collections.IterateFor<Int32>
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| ImmutableList - Duration of single invocation | 11.64 μs | 10.82 μs | 0.93 | 0.03 | 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IterateFor<Int32>*'Payloads
Histogram
System.Collections.IterateFor<Int32>.ImmutableList(Size: 512)
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 10.822007579817889 < 11.043924590448507.
IsChangePoint: Marked as a change because one of 1/12/2023 10:41:19 PM, 1/13/2023 4:37:08 PM, 1/17/2023 8:36:05 PM, 1/18/2023 3:20:52 PM, 2/13/2023 6:54:14 PM, 2/14/2023 11:21:41 AM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 54.97731867541126 (T) = (0 -10811.83625068017) / Math.Sqrt((50281.69452872456 / (299)) + (88.3162733653869 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.06671124552533965 = (11584.663587601088 - 10811.83625068017) / 11584.663587601088 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
| Architecture | x64 |
|---|---|
| OS | alpine 3.15 |
| Baseline | 7e3bf878c105ea6114e56d3e6e3014c5480cb060 |
| Compare | 1c8d37af80667daffb3cb80ce0fe915621e8f039 |
| Diff | Diff |
Improvements in System.Buffers.Text.Tests.Utf8ParserTests
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| TryParseSingle - Duration of single invocation | 49.41 ns | 44.94 ns | 0.91 | 0.02 | False | |||||
| TryParseDouble - Duration of single invocation | 60.59 ns | 55.05 ns | 0.91 | 0.03 | False | |||||
| TryParseSingle - Duration of single invocation | 48.82 ns | 44.02 ns | 0.90 | 0.03 | False | |||||
| TryParseDouble - Duration of single invocation | 60.31 ns | 54.45 ns | 0.90 | 0.02 | 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Buffers.Text.Tests.Utf8ParserTests*'Payloads
Histogram
System.Buffers.Text.Tests.Utf8ParserTests.TryParseSingle(value: -3.4028235E+38)
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 44.940262523292596 < 46.90204735428337.
IsChangePoint: Marked as a change because one of 2/9/2023 4:27:10 AM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 127.38191680686741 (T) = (0 -44.90805536816503) / Math.Sqrt((0.39508559720047526 / (299)) + (0.0008481628950107491 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.10201526349071324 = (50.00982037037174 - 44.90805536816503) / 50.00982037037174 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```#### System.Buffers.Text.Tests.Utf8ParserTests.TryParseDouble(value: -1.7976931348623157e+308)
```log
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 55.053680485505026 < 57.67019326849082.
IsChangePoint: Marked as a change because one of 2/9/2023 4:27:10 AM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 78.99813681255782 (T) = (0 -55.09461703683468) / Math.Sqrt((1.4798340960701684 / (299)) + (0.006863190458850681 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.10871819847152629 = (61.81503643668256 - 55.09461703683468) / 61.81503643668256 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```#### System.Buffers.Text.Tests.Utf8ParserTests.TryParseSingle(value: 3.4028235E+38)
```log
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 44.023284212508344 < 46.40523143913731.
IsChangePoint: Marked as a change because one of 2/9/2023 4:27:10 AM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 107.18437610084727 (T) = (0 -44.00975346969087) / Math.Sqrt((0.6768188021585104 / (299)) + (0.0009545148673710275 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.11012166504003147 = (49.455921939790414 - 44.00975346969087) / 49.455921939790414 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```#### System.Buffers.Text.Tests.Utf8ParserTests.TryParseDouble(value: 1.7976931348623157e+308)
```log
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 54.44936241366382 < 57.54464570779903.
IsChangePoint: Marked as a change because one of 2/9/2023 4:27:10 AM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 46.10947493168273 (T) = (0 -54.55634155784153) / Math.Sqrt((2.0568386470956987 / (299)) + (0.052025463503667414 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.11624440859039853 = (61.73238629339076 - 54.55634155784153) / 61.73238629339076 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
| Architecture | x64 |
|---|---|
| OS | alpine 3.15 |
| Baseline | 7e3bf878c105ea6114e56d3e6e3014c5480cb060 |
| Compare | 1c8d37af80667daffb3cb80ce0fe915621e8f039 |
| Diff | Diff |
Improvements in System.Collections.IterateForEach<Int32>
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| ImmutableQueue - Duration of single invocation | 3.80 μs | 3.01 μs | 0.79 | 0.17 | 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IterateForEach<Int32>*'Payloads
Histogram
System.Collections.IterateForEach<Int32>.ImmutableQueue(Size: 512)
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 3.014036265225289 < 3.190384973869271.
IsChangePoint: Marked as a change because one of 2/9/2023 4:10:34 PM, 2/23/2023 8:54:44 PM, 3/3/2023 4:59:02 PM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 4.416752510514177 (T) = (0 -2954.3786622017396) / Math.Sqrt((85050.22784967853 / (299)) + (12289.557735904727 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.09004165474216025 = (3246.7185751943475 - 2954.3786622017396) / 3246.7185751943475 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
| Architecture | x64 |
|---|---|
| OS | alpine 3.15 |
| Baseline | 7e3bf878c105ea6114e56d3e6e3014c5480cb060 |
| Compare | 1c8d37af80667daffb3cb80ce0fe915621e8f039 |
| Diff | Diff |
Improvements in StoreBlock.LocalAddress
| Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio | Baseline ETL | Compare ETL |
|---|---|---|---|---|---|---|---|---|---|---|
| CopyBlock128 - Duration of single invocation | 9.14 ns | 1.32 ns | 0.14 | 0.03 | 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'StoreBlock.LocalAddress*'Payloads
Histogram
StoreBlock.LocalAddress.CopyBlock128
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 1.3151472056019244 < 8.68397575766237.
IsChangePoint: Marked as a change because one of 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 3.8914092440067267 (T) = (0 -2.9228224012888173) / Math.Sqrt((0.04356034968910105 / (299)) + (7.750382740183886 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.6815306106762528 = (9.177718484954784 - 2.9228224012888173) / 9.177718484954784 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
| Architecture | x64 |
|---|---|
| OS | alpine 3.15 |
| Baseline | 7e3bf878c105ea6114e56d3e6e3014c5480cb060 |
| Compare | 1c8d37af80667daffb3cb80ce0fe915621e8f039 |
| Diff | Diff |
Improvements 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 |
|---|---|---|---|---|---|---|---|---|---|---|
| Contains_ElementNotFound - Duration of single invocation | 346.36 ns | 324.67 ns | 0.94 | 0.03 | 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Linq.Tests.Perf_Enumerable*'Payloads
Histogram
System.Linq.Tests.Perf_Enumerable.Contains_ElementNotFound(input: IEnumerable)
Description of detection logic
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 324.6700840197203 < 328.48115944824275.
IsChangePoint: Marked as a change because one of 2/23/2023 8:54:44 PM, 3/3/2023 4:59:02 PM, 3/13/2023 2:14:21 PM, 3/14/2023 5:57:45 AM falls between 3/5/2023 5:50:49 PM and 3/14/2023 5:57:45 AM.
IsImprovementStdDev: Marked as improvement because 36.01461221646387 (T) = (0 -324.5279438233179) / Math.Sqrt((72.05211954001457 / (299)) + (0.015152876636846637 / (3))) is greater than 1.9679030112610798 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (3) - 2, .975) and 0.052173242817993584 = (342.3916252250309 - 324.5279438233179) / 342.3916252250309 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository







_1.png)




_1.png)

