Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

[Perf] Changes at 7/6/2022 11:58:32 AM #6755

Closed
performanceautofiler bot opened this issue Jul 14, 2022 · 6 comments
Closed

[Perf] Changes at 7/6/2022 11:58:32 AM #6755

performanceautofiler bot opened this issue Jul 14, 2022 · 6 comments
Assignees
Labels
ampere arch-arm64 branch-refs/heads/main kind-micro os-windows perf-improvement PGO Applied if there were any profile guided optimization updates in the observed interval. runtime-coreclr

Comments

@performanceautofiler
Copy link

performanceautofiler bot commented Jul 14, 2022

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Buffers.Tests.ReadOnlySequenceTests<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
FirstSpanTenSegments - Duration of single invocation 25.40 ns 8.21 ns 0.32 0.65 False
FirstSpanMemory - Duration of single invocation 37.35 ns 9.63 ns 0.26 0.63 False
FirstSpanArray - Duration of single invocation 36.65 ns 9.11 ns 0.25 0.68 False

graph
graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Buffers.Tests.ReadOnlySequenceTests&lt;Byte&gt;*'

Payloads

Baseline
Compare

Histogram

System.Buffers.Tests.ReadOnlySequenceTests<Byte>.FirstSpanTenSegments


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 8.210302739188657 < 28.41527109870688.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.5536792097615937 (T) = (0 -8.785163940206205) / Math.Sqrt((25.089989770466495 / (232)) + (0.29369530801643406 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.09036049126838003 = (9.657852210548805 - 8.785163940206205) / 9.657852210548805 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Buffers.Tests.ReadOnlySequenceTests&lt;Byte&gt;.FirstSpanMemory

```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 9.627411955735788 < 36.86496689055905.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.023311155343212 (T) = (0 -10.153898054101452) / Math.Sqrt((38.924565384082605 / (232)) + (0.356209795137592 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.14331535846684965 = (11.852550590763142 - 10.153898054101452) / 11.852550590763142 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Buffers.Tests.ReadOnlySequenceTests&lt;Byte&gt;.FirstSpanArray

```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 9.112256840876297 < 35.129381207417204.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 5.219318563255485 (T) = (0 -7.91341492056391) / Math.Sqrt((42.40880395249981 / (232)) + (0.4573185173420816 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.22611442045582264 = (10.225561930259707 - 7.91341492056391) / 10.225561930259707 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

### Run Information
Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Globalization.Tests.StringSearch

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
LastIndexOf_Word_NotFound - Duration of single invocation 3.32 μs 860.13 ns 0.26 0.59 False
IsPrefix_FirstHalf - Duration of single invocation 2.77 μs 377.90 ns 0.14 0.68 False
LastIndexOf_Word_NotFound - Duration of single invocation 2.77 μs 738.05 ns 0.27 0.62 False
IsSuffix_DifferentLastChar - Duration of single invocation 66.17 ns 12.84 ns 0.19 0.80 False
IsSuffix_DifferentLastChar - Duration of single invocation 70.16 ns 10.86 ns 0.15 0.78 False
IsPrefix_DifferentFirstChar - Duration of single invocation 48.86 ns 11.87 ns 0.24 0.75 False

graph
graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (en-US, IgnoreNonSpace, False))


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 860.1264502454262 < 2.9743826585323743.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.272895524649325 (T) = (0 -810.8022617563169) / Math.Sqrt((267109.6442868903 / (232)) + (1562.248061295447 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.08842134262278518 = (889.4484915752078 - 810.8022617563169) / 889.4484915752078 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (, IgnoreCase, False))

```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 377.9037383280723 < 2.5908634097131356.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.562920294742749 (T) = (0 -373.9181349055627) / Math.Sqrt((301953.0670137091 / (232)) + (1459.6663462489787 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.25892084733972387 = (504.5589712830222 - 373.9181349055627) / 504.5589712830222 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (, None, False))

```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 738.0496885848479 < 2.903660276654915.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.9890974818749463 (T) = (0 -756.5227184405676) / Math.Sqrt((279560.3799553666 / (232)) + (2701.928726336367 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.15894260085996045 = (899.4899982023741 - 756.5227184405676) / 899.4899982023741 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (en-US, IgnoreCase, False))

```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 12.844149999204072 < 65.84224404737985.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.7110793545034415 (T) = (0 -12.926419092588862) / Math.Sqrt((184.92794210664576 / (232)) + (2.401190626755872 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.21100305716726442 = (16.38335764163945 - 12.926419092588862) / 16.38335764163945 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (en-US, None, False))

```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 10.862777922270137 < 62.33205022607326.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.3413392643723707 (T) = (0 -12.118857885125582) / Math.Sqrt((154.08658911509656 / (232)) + (3.621315768751336 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.19487567762085153 = (15.052157223761748 - 12.118857885125582) / 15.052157223761748 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (en-US, Ordinal, False))

```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 11.872564230646756 < 50.695152141981545.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.311317808682184 (T) = (0 -13.017216740733824) / Math.Sqrt((86.90351257080783 / (232)) + (3.1141137557062906 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.1081237141782479 = (14.595316578846013 - 13.017216740733824) / 14.595316578846013 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.RegularExpressions.Tests.Perf_Regex_Industry_BoostDocs_Simple

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
IsMatch - Duration of single invocation 228.13 ns 170.89 ns 0.75 0.66 False
IsMatch - Duration of single invocation 265.39 ns 95.08 ns 0.36 0.72 False
IsMatch - Duration of single invocation 235.26 ns 157.13 ns 0.67 0.70 False
IsMatch - Duration of single invocation 123.11 ns 103.90 ns 0.84 0.69 False
IsMatch - Duration of single invocation 198.94 ns 95.46 ns 0.48 0.70 False

graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.RegularExpressions.Tests.Perf_Regex_Industry_BoostDocs_Simple.IsMatch(Id: 1, Options: Compiled)


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 170.88691766090415 < 217.17781425677043.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.493538527492501 (T) = (0 -155.14780115205744) / Math.Sqrt((381.6582855473181 / (232)) + (235.67350451864309 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.06186488513418129 = (165.37895095659883 - 155.14780115205744) / 165.37895095659883 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Industry_BoostDocs_Simple.IsMatch(Id: 10, Options: Compiled)

```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 95.07969616987623 < 251.31410936566684.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.144214399671018 (T) = (0 -93.7531913917702) / Math.Sqrt((1682.3881615716023 / (181)) + (60.3572480969175 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.1282160196544361 = (107.54176895359748 - 93.7531913917702) / 107.54176895359748 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Industry_BoostDocs_Simple.IsMatch(Id: 0, Options: None)

```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 157.12779476216744 < 225.99373897430635.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.3270877947143758 (T) = (0 -147.2814750678166) / Math.Sqrt((548.0465633103295 / (181)) + (250.57238305868634 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.06789659354698571 = (158.0098023976493 - 147.2814750678166) / 158.0098023976493 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Industry_BoostDocs_Simple.IsMatch(Id: 0, Options: Compiled)

```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 103.90486271910613 < 133.47098451289392.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 5:19:04 PM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.02840243494818 (T) = (0 -95.78839563397376) / Math.Sqrt((162.7557991506122 / (183)) + (70.58935165831949 / (32))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (183) + (32) - 2, .975) and 0.0526917822404581 = (101.1163989060718 - 95.78839563397376) / 101.1163989060718 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Industry_BoostDocs_Simple.IsMatch(Id: 11, Options: Compiled)

```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 95.46195621627697 < 177.18397061397465.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.152907060993362 (T) = (0 -86.6945055561075) / Math.Sqrt((520.4776145532239 / (232)) + (84.51194807861548 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.09434362884125783 = (95.72560666159308 - 86.6945055561075) / 95.72560666159308 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements 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 6.92 ms 2.30 ms 0.33 0.58 False
WriteBooleans - Duration of single invocation 6.72 ms 2.79 ms 0.41 0.53 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Tests.Perf_Booleans.WriteBooleans(Formatted: False, SkipValidation: True)


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 2.295143557894736 < 6.425479455.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 5.426573579419396 (T) = (0 -2367901.185733631) / Math.Sqrt((1157207211887.933 / (181)) + (18755080339.789772 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.16035883958346875 = (2820134.7163101872 - 2367901.185733631) / 2820134.7163101872 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Booleans.WriteBooleans(Formatted: False, SkipValidation: False)

```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 2.7891322 < 6.41657320882353.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 5.037882131642799 (T) = (0 -2643764.628770061) / Math.Sqrt((1070951474390.3142 / (181)) + (30824652509.45211 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.13600069733944548 = (3059915.2344556176 - 2643764.628770061) / 3059915.2344556176 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.RegularExpressions.Tests.Perf_Regex_Industry_Leipzig

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Count - Duration of single invocation 5.75 secs 857.95 ms 0.15 0.59 False
Count - Duration of single invocation 5.80 secs 888.49 ms 0.15 0.53 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.RegularExpressions.Tests.Perf_Regex_Industry_Leipzig.Count(Pattern: ".{0,2}(Tom|Sawyer|Huckleberry|Finn)", Options: Compiled)


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 857.954642 < 5.48668732015.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.65322910503122 (T) = (0 -819544900.7058823) / Math.Sqrt((1.5180250643463022E+18 / (181)) + (2223653128674570.8 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.2906886206352037 = (1155409210.3242478 - 819544900.7058823) / 1155409210.3242478 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Industry_Leipzig.Count(Pattern: ".{2,4}(Tom|Sawyer|Huckleberry|Finn)", Options: Compiled)

```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 888.486912 < 5.49642592785.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.397470049461846 (T) = (0 -852973258.5139319) / Math.Sqrt((1.10473185444791E+18 / (232)) + (2111626451839822.2 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.2166952197816265 = (1088941724.9261978 - 852973258.5139319) / 1088941724.9261978 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Numerics.Tests.Constructor

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
ConstructorBenchmark_Byte - Duration of single invocation 25.27 ns 0.47 ns 0.02 0.91 False
SpanCastBenchmark_Int64 - Duration of single invocation 27.29 ns 1.26 ns 0.05 0.83 False
SpanCastBenchmark_Double - Duration of single invocation 23.13 ns 1.34 ns 0.06 0.86 False
SpanCastBenchmark_Single - Duration of single invocation 28.60 ns 0.89 ns 0.03 0.88 False
ConstructorBenchmark_SByte - Duration of single invocation 28.70 ns 0.80 ns 0.03 0.91 False

graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Numerics.Tests.Constructor.ConstructorBenchmark_Byte


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 0.47422638051207655 < 28.332629207286413.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.682385527367355 (T) = (0 -0.54389508618911) / Math.Sqrt((41.87749273017324 / (232)) + (0.05284827455605494 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.7428534037178173 = (2.115116801282723 - 0.54389508618911) / 2.115116801282723 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Numerics.Tests.Constructor.SpanCastBenchmark_Int64

```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 1.2577759559103916 < 26.329076565597152.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.5382407227006802 (T) = (0 -1.2009441905192815) / Math.Sqrt((42.92088391965108 / (181)) + (0.09839920797891143 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.5907381412641325 = (2.9344151302756893 - 1.2009441905192815) / 2.9344151302756893 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Numerics.Tests.Constructor.SpanCastBenchmark_Double

```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 1.3424845341399112 < 23.640409167280158.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.8428121487772167 (T) = (0 -1.0943015686801358) / Math.Sqrt((30.66655027986778 / (232)) + (0.12210727447711585 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.5640730965445107 = (2.5102868393895084 - 1.0943015686801358) / 2.5102868393895084 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Numerics.Tests.Constructor.SpanCastBenchmark_Single

```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 0.886391800404931 < 26.776253911288208.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.5513911934913827 (T) = (0 -1.0155404680431868) / Math.Sqrt((41.350905594006534 / (181)) + (0.07956114075711539 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.6268700283056844 = (2.7216802323110136 - 1.0155404680431868) / 2.7216802323110136 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Numerics.Tests.Constructor.ConstructorBenchmark_SByte

```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 0.7958798053449186 < 26.825345382174117.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.6898295933827 (T) = (0 -0.6757744129686881) / Math.Sqrt((41.64062990281736 / (232)) + (0.0592054202730995 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.6991962228854893 = (2.246562258795816 - 0.6757744129686881) / 2.246562258795816 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

@performanceautofiler
Copy link
Author

performanceautofiler bot commented Jul 14, 2022

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Tests.Perf_Double

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
ToStringWithFormat - Duration of single invocation 253.68 ns 233.95 ns 0.92 0.64 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_Double.ToStringWithFormat(value: 1.7976931348623157E+308, format: "E")


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 233.95241471692776 < 270.4916865577703.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.855443278202392 (T) = (0 -213.77142461900021) / Math.Sqrt((520.1579061955997 / (181)) + (238.89785133609817 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.05370016148340934 = (225.90242111221954 - 213.77142461900021) / 225.90242111221954 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

### Run Information
Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.RegularExpressions.Tests.Perf_Regex_Common

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Uri_IsNotMatch - Duration of single invocation 559.86 ns 199.07 ns 0.36 0.66 False
Backtracking - Duration of single invocation 398.13 ns 283.59 ns 0.71 0.59 False
Uri_IsNotMatch - Duration of single invocation 740.47 ns 562.59 ns 0.76 0.69 False
Uri_IsNotMatch - Duration of single invocation 473.36 ns 169.18 ns 0.36 0.68 False
MatchesSet - Duration of single invocation 349.25 μs 99.89 μs 0.29 0.62 False

graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.RegularExpressions.Tests.Perf_Regex_Common.Uri_IsNotMatch(Options: Compiled)


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 199.07455380008668 < 508.4348630584364.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.4925042377466746 (T) = (0 -186.84623688406415) / Math.Sqrt((7452.583864513895 / (181)) + (227.42241435565123 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.11450873099494047 = (211.0085592306349 - 186.84623688406415) / 211.0085592306349 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Common.Backtracking(Options: Compiled)

```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 283.5929723231101 < 373.46638558509096.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.484683210815634 (T) = (0 -272.2710491599632) / Math.Sqrt((952.522320665015 / (232)) + (386.29211999205995 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.06083828913069368 = (289.90859189515277 - 272.2710491599632) / 289.90859189515277 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Common.Uri_IsNotMatch(Options: None)

```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 562.5860467182687 < 726.6158851967391.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.0932747885048415 (T) = (0 -538.2229199854198) / Math.Sqrt((4488.674462360117 / (181)) + (3139.3184793429473 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.058558228916062785 = (571.7007004753275 - 538.2229199854198) / 571.7007004753275 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Common.Uri_IsNotMatch(Options: IgnoreCase, Compiled)

```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 169.17614907271954 < 484.47188588009635.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.5360835797154087 (T) = (0 -187.70687678071732) / Math.Sqrt((4832.971864840459 / (232)) + (293.4873264233302 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.09276927036359912 = (206.90092459273984 - 187.70687678071732) / 206.90092459273984 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Common.MatchesSet(Options: Compiled)

```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 99.88786201298701 < 319.57463980297155.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.187064288118088 (T) = (0 -93210.65506858598) / Math.Sqrt((2950283220.5354896 / (232)) + (44231644.598113105 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.14396970081820357 = (108887.09798902889 - 93210.65506858598) / 108887.09798902889 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Tests.Perf_Int64

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
ParseSpan - Duration of single invocation 90.65 ns 51.83 ns 0.57 0.71 False
TryParseSpan - Duration of single invocation 63.64 ns 45.31 ns 0.71 0.68 False
ParseSpan - Duration of single invocation 35.45 ns 24.62 ns 0.69 0.75 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_Int64.ParseSpan(value: "-9223372036854775808")


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 51.82901580453688 < 82.78306496560369.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.6103279634974808 (T) = (0 -52.05285309836695) / Math.Sqrt((80.95337470092123 / (181)) + (23.681422518384586 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.05090153737197694 = (54.84452366958248 - 52.05285309836695) / 54.84452366958248 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_Int64.TryParseSpan(value: "-9223372036854775808")

```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 45.31034151216168 < 71.80654680151262.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.0697265236638906 (T) = (0 -49.32094954403881) / Math.Sqrt((54.757513320152654 / (232)) + (22.31501239905323 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.055529492296011736 = (52.220740766102104 - 49.32094954403881) / 52.220740766102104 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_Int64.ParseSpan(value: "12345")

```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 24.616873964201993 < 47.51849098356826.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.497797654449966 (T) = (0 -22.9245865813694) / Math.Sqrt((51.253630653997305 / (181)) + (3.9778401808158406 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.06448042834507502 = (24.504657386072672 - 22.9245865813694) / 24.504657386072672 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Tests.Perf_SByte

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
TryParse - Duration of single invocation 38.71 ns 16.62 ns 0.43 0.73 False
Parse - Duration of single invocation 44.69 ns 13.90 ns 0.31 0.74 False
TryParse - Duration of single invocation 46.66 ns 15.72 ns 0.34 0.75 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_SByte.TryParse(value: "-128")


Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 16.624778038626268 < 44.52275015137824.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.4730437156843617 (T) = (0 -16.719551189517873) / Math.Sqrt((53.32584847515651 / (181)) + (3.199490582565918 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.11466060026436595 = (18.884905827652535 - 16.719551189517873) / 18.884905827652535 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_SByte.Parse(value: "127")

```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 13.904344108627637 < 41.90773037446253.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.5634093316675863 (T) = (0 -16.502225561621497) / Math.Sqrt((46.90058661505325 / (181)) + (7.054359672307094 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.09592912592013321 = (18.25324322987057 - 16.502225561621497) / 18.25324322987057 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_SByte.TryParse(value: "127")

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 15.721174255336939 < 39.16809091622258.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.8430998304376143 (T) = (0 -16.243117309594115) / Math.Sqrt((35.62951888485315 / (232)) + (5.471118164062554 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.08938440473685648 = (17.837512770578336 - 16.243117309594115) / 17.837512770578336 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Tests.Perf_Int32

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
TryParse - Duration of single invocation 28.20 ns 11.59 ns 0.41 0.79 False
ParseHex - Duration of single invocation 176.99 ns 29.60 ns 0.17 0.73 False
ParseHex - Duration of single invocation 124.38 ns 21.27 ns 0.17 0.76 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_Int32.TryParse(value: "4")


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 11.588434447803895 < 33.112336378475206.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.475927471447141 (T) = (0 -12.749982391083034) / Math.Sqrt((31.344980274876548 / (232)) + (7.0976664125731554 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.10223158768262876 = (14.201861210701376 - 12.749982391083034) / 14.201861210701376 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_Int32.ParseHex(value: "7FFFFFFF")

```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 29.60334715227583 < 201.32699194560894.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.3617988150275915 (T) = (0 -28.97928408391927) / Math.Sqrt((2111.432500186559 / (181)) + (7.259344121944025 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.2856258932094014 = (40.56597769775248 - 28.97928408391927) / 40.56597769775248 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_Int32.ParseHex(value: "3039")

```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 21.27308930350481 < 120.21159872923661.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.154065340233208 (T) = (0 -20.091327110706434) / Math.Sqrt((659.9848939156084 / (181)) + (7.8967367699666955 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.236157768178249 = (26.302980214630125 - 20.091327110706434) / 26.302980214630125 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
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
TryParseUInt32Hex - Duration of single invocation 31.37 ns 4.15 ns 0.13 0.84 False
TryParseInt16 - Duration of single invocation 21.25 ns 7.33 ns 0.35 0.85 False
TryParseUInt32Hex - Duration of single invocation 25.97 ns 2.52 ns 0.10 0.92 False
TryParseUInt32Hex - Duration of single invocation 34.95 ns 10.30 ns 0.29 0.81 False

graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt32Hex(value: 3039)


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 4.149612289567287 < 27.464566652238194.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.658830072362716 (T) = (0 -4.9272691206563275) / Math.Sqrt((28.088731304467718 / (232)) + (1.0106188333147683 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.22381788525732357 = (6.348083815729043 - 4.9272691206563275) / 6.348083815729043 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Buffers.Text.Tests.Utf8ParserTests.TryParseInt16(value: -32768)

```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 7.33075458156536 < 21.261034550174713.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.482872433469573 (T) = (0 -7.535311204107241) / Math.Sqrt((14.382179670319177 / (232)) + (1.5217811480007355 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.09719258495633828 = (8.346532248788428 - 7.535311204107241) / 8.346532248788428 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt32Hex(value: 0)

```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 2.515285554059106 < 26.111501929231398.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.1956554472406213 (T) = (0 -2.2169140181163094) / Math.Sqrt((30.112375582363192 / (232)) + (0.7020983587860627 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.3586096270776012 = (3.456419228769016 - 2.2169140181163094) / 3.456419228769016 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt32Hex(value: FFFFFFFFFFFFFFFF)

```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 10.301693990248245 < 32.76383587641756.
IsChangePoint: Marked as a change because one of 5/9/2022 6:32:22 AM, 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.879141487212206 (T) = (0 -9.109933502085886) / Math.Sqrt((32.76529434098974 / (231)) + (0.9400327712831882 / (34))) is greater than 1.9690249739031698 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (231) + (34) - 2, .975) and 0.14915615870785762 = (10.706939464063106 - 9.109933502085886) / 10.706939464063106 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Globalization.Tests.Perf_DateTimeCultureInfo

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Parse - Duration of single invocation 884.85 ns 565.01 ns 0.64 0.61 False
ToString - Duration of single invocation 415.65 ns 298.69 ns 0.72 0.61 False
ToString - Duration of single invocation 448.00 ns 296.58 ns 0.66 0.63 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Globalization.Tests.Perf_DateTimeCultureInfo.Parse(culturestring: da)


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 565.0090546655995 < 0.9501224022424465.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.1129224625868765 (T) = (0 -639.2712631648677) / Math.Sqrt((9379.538766146517 / (232)) + (2827.6571861314865 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.05135559716053072 = (673.878706553699 - 639.2712631648677) / 673.878706553699 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Globalization.Tests.Perf_DateTimeCultureInfo.ToString(culturestring: )

```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 298.69418691641897 < 402.6206483372829.
IsChangePoint: Marked as a change because one of 6/1/2022 7:59:43 PM, 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 11.14865030925082 (T) = (0 -304.29810347829016) / Math.Sqrt((2368.2974739963097 / (232)) + (387.9830372179524 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.14555565810002116 = (356.13566449704604 - 304.29810347829016) / 356.13566449704604 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Globalization.Tests.Perf_DateTimeCultureInfo.ToString(culturestring: ja)

```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 296.5752887719416 < 411.17891033998114.
IsChangePoint: Marked as a change because one of 6/1/2022 7:59:43 PM, 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 12.170854690834798 (T) = (0 -295.30629503948506) / Math.Sqrt((2223.642802743902 / (232)) + (302.12957076032194 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.1504760016243494 = (347.6138350466042 - 295.30629503948506) / 347.6138350466042 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Collections.Tests.Perf_BitArray

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
BitArraySetAll - Duration of single invocation 22.53 ns 11.74 ns 0.52 0.77 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Collections.Tests.Perf_BitArray.BitArraySetAll(Size: 4)


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 11.737524585078672 < 27.399445047513236.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.373585939095111 (T) = (0 -11.85259738559771) / Math.Sqrt((17.249463776125637 / (232)) + (3.1536718003621687 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.10422533278644444 = (13.231672896563408 - 11.85259738559771) / 13.231672896563408 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

@performanceautofiler
Copy link
Author

performanceautofiler bot commented Jul 14, 2022

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Tests.Perf_Get

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
GetUInt64 - Duration of single invocation 1.65 μs 1.15 μs 0.70 0.60 False
GetUInt32 - Duration of single invocation 1.41 μs 957.90 ns 0.68 0.58 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Tests.Perf_Get.GetUInt64


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.1548640099240195 < 1.522758291188376.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.925963611098517 (T) = (0 -1075.6675503363492) / Math.Sqrt((22630.611587740193 / (232)) + (7933.421244886747 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.062257025681439905 = (1147.0814282751799 - 1075.6675503363492) / 1147.0814282751799 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Get.GetUInt32

```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 957.8973869346735 < 1.5093012876489764.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.2780303820604666 (T) = (0 -1011.335153849851) / Math.Sqrt((22508.557601897443 / (232)) + (5763.9015218346785 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.050258497690531964 = (1064.853069377938 - 1011.335153849851) / 1064.853069377938 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

### Run Information
Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements 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 151.25 ns 54.42 ns 0.36 0.65 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Memory.ReadOnlySpan.IndexOfString(input: "AAAAA5AAAA", value: "5", comparisonType: InvariantCulture)


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.422157266695216 < 143.36359547165597.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.882926387494975 (T) = (0 -49.45278495077681) / Math.Sqrt((469.01254009272907 / (232)) + (10.274588976657144 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.08161447006915613 = (53.847521916531825 - 49.45278495077681) / 53.847521916531825 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Tests.Perf_Version

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
TryParse2 - Duration of single invocation 155.63 ns 59.86 ns 0.38 0.61 False
TryParse3 - Duration of single invocation 166.78 ns 77.37 ns 0.46 0.59 False
ToString3 - Duration of single invocation 132.92 ns 58.12 ns 0.44 0.67 False
TryParse4 - Duration of single invocation 268.62 ns 90.39 ns 0.34 0.66 False

graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_Version.TryParse2


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 59.85949361094517 < 142.51715766420426.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.293158576733596 (T) = (0 -59.50923541973768) / Math.Sqrt((450.9901661559666 / (181)) + (26.348221373293132 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.11534878402405337 = (67.26858488979425 - 59.50923541973768) / 67.26858488979425 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_Version.TryParse3

```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 77.36929140904654 < 181.41932546685186.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.6431889013008263 (T) = (0 -82.05109797948641) / Math.Sqrt((763.730571715895 / (181)) + (43.43430004068784 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.09428667870713822 = (90.59279139492224 - 82.05109797948641) / 90.59279139492224 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_Version.ToString3

```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 58.120752855811304 < 127.67766982299788.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.784838220267424 (T) = (0 -54.01135923379894) / Math.Sqrt((335.1101792796505 / (232)) + (23.42594664326405 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.09284990522238536 = (59.53960600868336 - 54.01135923379894) / 59.53960600868336 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_Version.TryParse4

```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 90.39367342220852 < 238.62191846669.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.6423064507327774 (T) = (0 -105.07382699952531) / Math.Sqrt((1044.7763129394102 / (232)) + (74.68629964765323 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.08233831920311106 = (114.50170492929395 - 105.07382699952531) / 114.50170492929395 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in Microsoft.Extensions.Primitives.StringSegmentBenchmark

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
LastIndexOf - Duration of single invocation 24.20 ns 7.05 ns 0.29 0.82 False
TrimEnd - Duration of single invocation 141.37 ns 12.27 ns 0.09 0.68 False
TrimStart - Duration of single invocation 109.32 ns 20.47 ns 0.19 0.66 False
Trim - Duration of single invocation 257.84 ns 36.57 ns 0.14 0.61 False

graph
graph
graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'Microsoft.Extensions.Primitives.StringSegmentBenchmark*'

Payloads

Baseline
Compare

Histogram

Microsoft.Extensions.Primitives.StringSegmentBenchmark.LastIndexOf


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 7.048719127817786 < 25.851299056494426.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.59614095388331 (T) = (0 -5.731285042861174) / Math.Sqrt((23.065214351719735 / (232)) + (2.0075158158327926 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.24198308138897381 = (7.560893302174649 - 5.731285042861174) / 7.560893302174649 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### Microsoft.Extensions.Primitives.StringSegmentBenchmark.TrimEnd

```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 12.270735297942945 < 132.28438968324596.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.416212048487808 (T) = (0 -17.384586457681444) / Math.Sqrt((714.0873566429103 / (232)) + (3.81029118153983 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.2597945901731518 = (23.486165092670852 - 17.384586457681444) / 23.486165092670852 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### Microsoft.Extensions.Primitives.StringSegmentBenchmark.TrimStart

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 20.471637493057987 < 103.73687254069375.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.091820332822934 (T) = (0 -19.005840240352025) / Math.Sqrt((447.96222544953645 / (231)) + (2.4840963483141225 / (34))) is greater than 1.9690249739031698 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (231) + (34) - 2, .975) and 0.1874981689418529 = (23.39175065685712 - 19.005840240352025) / 23.39175065685712 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### Microsoft.Extensions.Primitives.StringSegmentBenchmark.Trim

```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 36.57056283928999 < 241.4088831099819.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.46361289670994 (T) = (0 -39.683805631335964) / Math.Sqrt((1951.1719798733363 / (232)) + (10.908792095116345 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.20502366467204317 = (49.91822255308385 - 39.683805631335964) / 49.91822255308385 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.RegularExpressions.Tests.Perf_Regex_Industry_RustLang_Sherlock

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Count - Duration of single invocation 26.37 ms 6.10 ms 0.23 0.63 False
Count - Duration of single invocation 9.11 ms 4.46 ms 0.49 0.59 False
Count - Duration of single invocation 25.42 ms 6.10 ms 0.24 0.59 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.RegularExpressions.Tests.Perf_Regex_Industry_RustLang_Sherlock.Count(Pattern: "\w+\s+Holmes", Options: Compiled)


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 6.103037230769231 < 24.84295879722222.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.479486020998857 (T) = (0 -5995387.39407895) / Math.Sqrt((25446111893286.777 / (181)) + (124773383871.90479 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.18061468345172185 = (7316932.916658755 - 5995387.39407895) / 7316932.916658755 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Industry_RustLang_Sherlock.Count(Pattern: "Sherlock|Holmes|Watson|Irene|Adler|John|Baker", Options: Compiled)

```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 4.460256226415094 < 8.479991287321937.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.4821366002804033 (T) = (0 -4287551.476918848) / Math.Sqrt((1299907149259.3213 / (181)) + (84186871771.57965 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.07391435312012085 = (4629756.968336837 - 4287551.476918848) / 4629756.968336837 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.RegularExpressions.Tests.Perf_Regex_Industry_RustLang_Sherlock.Count(Pattern: "\w+\s+Holmes\s+\w+", Options: Compiled)

```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 6.099814684210527 < 23.333056762727274.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.768923302954875 (T) = (0 -6058714.37750109) / Math.Sqrt((18389448693124.594 / (232)) + (193219487120.24792 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.15347949097304395 = (7157197.3896596525 - 6058714.37750109) / 7157197.3896596525 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Encodings.Web.Tests.Perf_Encoders

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
EncodeUtf8 - Duration of single invocation 204.26 ns 70.71 ns 0.35 0.68 False
EncodeUtf8 - Duration of single invocation 308.71 ns 108.89 ns 0.35 0.63 False
EncodeUtf8 - Duration of single invocation 268.80 ns 146.81 ns 0.55 0.61 False
EncodeUtf8 - Duration of single invocation 143.80 ns 112.93 ns 0.79 0.64 False

graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf8(arguments: Url,©2020,16)


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 70.71088950954375 < 221.2825200159616.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.851471977115469 (T) = (0 -73.89096020187674) / Math.Sqrt((1433.5478453021863 / (181)) + (33.07514647036333 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.163737394341105 = (88.3585606983559 - 73.89096020187674) / 88.3585606983559 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf8(arguments: Url,&lorem ipsum=dolor sit amet,16)

```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 108.88524054528007 < 327.1457678497711.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.8429906206610274 (T) = (0 -109.66975326207543) / Math.Sqrt((3465.8245376298746 / (181)) + (110.27517416164743 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.14223128137122848 = (127.85468959207725 - 109.66975326207543) / 127.85468959207725 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf8(arguments: JavaScript,&Hello+&lt;World&gt;!,512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 146.80877989381457 < 303.82238326568563.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.056406678841974 (T) = (0 -155.33100025057098) / Math.Sqrt((1310.528309665529 / (232)) + (167.84424982727384 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.07831085447508543 = (168.5286205275943 - 155.33100025057098) / 168.5286205275943 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf8(arguments: UnsafeRelaxed,no &lt;escaping /&gt; required,512)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 112.92793992330635 < 138.23158336607744.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.3740958333804105 (T) = (0 -103.31620289863517) / Math.Sqrt((161.20040146559344 / (232)) + (84.58806653001585 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.07022571501843758 = (111.11966051059795 - 103.31620289863517) / 111.11966051059795 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Buffers.Text.Tests.Utf8FormatterTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
FormatterInt32 - Duration of single invocation 27.24 ns 4.60 ns 0.17 0.82 False
FormatterUInt64 - Duration of single invocation 50.11 ns 11.52 ns 0.23 0.83 False
FormatterInt32 - Duration of single invocation 47.33 ns 13.80 ns 0.29 0.80 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Buffers.Text.Tests.Utf8FormatterTests.FormatterInt32(value: 4)


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 4.602202443489864 < 26.710831183515655.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.4606427392730974 (T) = (0 -6.069249975652686) / Math.Sqrt((30.245683509070872 / (232)) + (1.4329839666367563 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.14412475530620047 = (7.091278797091554 - 6.069249975652686) / 7.091278797091554 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Buffers.Text.Tests.Utf8FormatterTests.FormatterUInt64(value: 12345)

```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 11.524776163966392 < 48.7744365523953.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.8928071844291146 (T) = (0 -8.955447168306119) / Math.Sqrt((81.97294265770861 / (232)) + (2.587652118206586 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.22170307057281843 = (11.50646601535128 - 8.955447168306119) / 11.50646601535128 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Buffers.Text.Tests.Utf8FormatterTests.FormatterInt32(value: 12345)

```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 13.802051602597492 < 46.29089020327916.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.948441685928881 (T) = (0 -12.740232918153536) / Math.Sqrt((65.61260656717519 / (232)) + (4.160232890671083 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.16476886507502622 = (15.2535416669997 - 12.740232918153536) / 15.2535416669997 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in MicroBenchmarks.Serializers.Xml_ToStream<Location>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
XmlSerializer_ - Duration of single invocation 8.41 μs 4.31 μs 0.51 0.56 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;Location&gt;*'

Payloads

Baseline
Compare

Histogram

MicroBenchmarks.Serializers.Xml_ToStream<Location>.XmlSerializer_


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 4.309972933518815 < 7.696702997794643.
IsChangePoint: Marked as a change because one of 6/22/2022 5:33:38 PM, 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 12.17057015200462 (T) = (0 -4328.645601884142) / Math.Sqrt((646439.5761716261 / (232)) + (98834.44147867232 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.17501854779983197 = (5246.961116931715 - 4328.645601884142) / 5246.961116931715 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

@performanceautofiler
Copy link
Author

performanceautofiler bot commented Jul 14, 2022

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive<Location>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Baseline - Duration of single invocation 3.24 μs 2.34 μs 0.72 0.47 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive&lt;Location&gt;*'

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive<Location>.Baseline


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 2.3398234169583243 < 3.15573653728358.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 6.268579340566226 (T) = (0 -2194.640869951476) / Math.Sqrt((84660.25876695533 / (232)) + (16589.91172929384 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.07699244891856818 = (2377.706300864114 - 2194.640869951476) / 2377.706300864114 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

### Run Information
Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Xml.Linq.Perf_XElement

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
CreateElement - Duration of single invocation 97.89 ns 68.03 ns 0.69 0.60 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Xml.Linq.Perf_XElement.CreateElement


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 68.03479560365776 < 94.41210547366906.
IsChangePoint: Marked as a change because one of 6/23/2022 2:53:57 PM, 7/2/2022 10:25:38 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 5.055670249710314 (T) = (0 -73.75497976687342) / Math.Sqrt((59.00313160820205 / (232)) + (40.784460022698845 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.07634157164536363 = (79.85092486868466 - 73.75497976687342) / 79.85092486868466 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Memory.Span<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
BinarySearch - Duration of single invocation 42.04 ns 13.51 ns 0.32 0.72 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Memory.Span&lt;Byte&gt;*'

Payloads

Baseline
Compare

Histogram

System.Memory.Span<Byte>.BinarySearch(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 13.509271573817447 < 45.88063892226032.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.3019396940713674 (T) = (0 -15.71020829504852) / Math.Sqrt((57.638091092644764 / (232)) + (3.6783220552995815 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.08046154887469478 = (17.084884569887002 - 15.71020829504852) / 17.084884569887002 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Tests.Perf_DateTimeOffset

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
TryParse - Duration of single invocation 1.18 μs 817.43 ns 0.69 0.63 False
Parse - Duration of single invocation 1.24 μs 847.64 ns 0.68 0.63 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_DateTimeOffset.TryParse(value: "12/30/2017 3:45:22 AM -08:00")


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 817.4281257567771 < 1.2451979176905628.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.0259616792179274 (T) = (0 -805.7178990951936) / Math.Sqrt((17297.851259878564 / (181)) + (3452.708207624967 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.050087317113346276 = (848.202064895826 - 805.7178990951936) / 848.202064895826 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_DateTimeOffset.Parse(value: "12/30/2017 3:45:22 AM -08:00")

```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 847.6401036248011 < 1.2219661378937983.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.235409374169592 (T) = (0 -796.595675840746) / Math.Sqrt((15701.339067701307 / (181)) + (4816.774697413406 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.05783403124288436 = (845.49400239068 - 796.595675840746) / 845.49400239068 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.RegularExpressions.Tests.Perf_Regex_Industry_Mariomkas

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Count - Duration of single invocation 22.37 ms 10.85 ms 0.48 0.54 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.RegularExpressions.Tests.Perf_Regex_Industry_Mariomkas.Count(Pattern: "(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9])", Options: Compiled)


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.849128952380953 < 21.450136527727274.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.910311712021961 (T) = (0 -11084408.675501332) / Math.Sqrt((8483554821717.553 / (181)) + (301493159023.0258 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.05836910501277601 = (11771500.632051505 - 11084408.675501332) / 11771500.632051505 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Memory.Constructors_ValueTypesOnly<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SpanFromPointerLength - Duration of single invocation 4.63 ns 0.31 ns 0.07 0.95 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Memory.Constructors_ValueTypesOnly&lt;Byte&gt;*'

Payloads

Baseline
Compare

Histogram

System.Memory.Constructors_ValueTypesOnly<Byte>.SpanFromPointerLength


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 0.3124441730039914 < 3.8300520099865074.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.3087721692590777 (T) = (0 -0.1727528497663514) / Math.Sqrt((0.7344789234390859 / (232)) + (0.010535348106593047 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.5303361360260099 = (0.3678223151013348 - 0.1727528497663514) / 0.3678223151013348 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.IO.Tests.Perf_Directory

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
EnumerateFiles - Duration of single invocation 6.24 ms 3.94 ms 0.63 0.53 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.IO.Tests.Perf_Directory.EnumerateFiles


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.9419234375 < 5.466979546875.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 6.106422978475181 (T) = (0 -3998721.1813854487) / Math.Sqrt((225230537000.72977 / (232)) + (36888285726.45255 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.06475572523818995 = (4275590.120456873 - 3998721.1813854487) / 4275590.120456873 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Globalization.Tests.StringEquality

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Compare_DifferentFirstChar - Duration of single invocation 37.87 ns 13.12 ns 0.35 0.81 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Globalization.Tests.StringEquality.Compare_DifferentFirstChar(Count: 1024, Options: (en-US, OrdinalIgnoreCase))


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 13.123866242408875 < 39.077224524129576.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.0421036893360647 (T) = (0 -12.037272520034497) / Math.Sqrt((49.23052752295205 / (232)) + (2.1825690976747048 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.11728215610981625 = (13.636602684936793 - 12.037272520034497) / 13.636602684936793 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
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
Concat_Once - Duration of single invocation 4.01 μs 2.80 μs 0.70 0.66 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Linq.Tests.Perf_Enumerable.Concat_Once(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 2.7950142772159428 < 3.5235042477556062.
IsChangePoint: Marked as a change because one of 7/3/2022 4:26:07 AM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.1525171367790255 (T) = (0 -3214.961645839361) / Math.Sqrt((305852.96014895715 / (232)) + (78472.0055546083 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.05575697693069885 = (3404.8031780939136 - 3214.961645839361) / 3404.8031780939136 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

@performanceautofiler
Copy link
Author

performanceautofiler bot commented Jul 14, 2022

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Document.Tests.Perf_DocumentParse

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Parse - Duration of single invocation 1.46 μs 593.90 ns 0.41 0.59 False
Parse - Duration of single invocation 8.00 μs 2.38 μs 0.30 0.46 False
Parse - Duration of single invocation 15.89 μs 4.28 μs 0.27 0.54 False
Parse - Duration of single invocation 5.65 μs 2.12 μs 0.38 0.58 False
Parse - Duration of single invocation 4.44 ms 1.63 ms 0.37 0.62 False

graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: False, TestRandomAccess: True, TestCase: HelloWorld)


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 593.9003779297991 < 1.3203893970518779.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.510004326315352 (T) = (0 -638.3601801968282) / Math.Sqrt((25035.355673265974 / (232)) + (1749.550826730942 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.08188586488388928 = (695.2950137469531 - 638.3601801968282) / 695.2950137469531 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: False, TestRandomAccess: True, TestCase: BasicJson)

```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 2.3805630328559393 < 8.229802637578224.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 5.743285019476767 (T) = (0 -2648.70802047754) / Math.Sqrt((1493172.0713506797 / (232)) + (23838.57098054369 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.15482391751107286 = (3133.912654836918 - 2648.70802047754) / 3133.912654836918 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: False, TestRandomAccess: True, TestCase: Json400B)

```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 4.28150959606202 < 15.43952866457011.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.581573384602683 (T) = (0 -4194.649569815019) / Math.Sqrt((7196197.928067162 / (232)) + (56942.35884595833 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.16492007646785697 = (5023.051628487106 - 4194.649569815019) / 5023.051628487106 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: False, TestRandomAccess: False, TestCase: Json400B)

```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 2.1202638223618195 < 5.358674911049663.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.8629637674287656 (T) = (0 -1973.9078060172478) / Math.Sqrt((774614.6479839204 / (181)) + (20587.894105897692 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.12032494601409383 = (2243.905629781418 - 1973.9078060172478) / 2243.905629781418 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: False, TestRandomAccess: False, TestCase: Json400KB)

```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 1.6278043945578233 < 4.528002469444444.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.6296870455787955 (T) = (0 -1614824.7698045706) / Math.Sqrt((649033123742.2444 / (181)) + (44599848684.9784 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.10230527896245525 = (1798857.3754095107 - 1614824.7698045706) / 1798857.3754095107 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

### Run Information
Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Memory.MemoryMarshal<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Read - Duration of single invocation 9.32 ns 3.60 ns 0.39 0.65 False
CastToInt - Duration of single invocation 17.92 ns 0.31 ns 0.02 0.92 False

graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Memory.MemoryMarshal&lt;Int32&gt;*'

Payloads

Baseline
Compare

Histogram

System.Memory.MemoryMarshal<Int32>.Read


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.5961549860128414 < 9.430863246941867.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.816204422725473 (T) = (0 -4.077529620630925) / Math.Sqrt((1.8052360857100738 / (232)) + (0.08143493277160177 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.06513461228678592 = (4.3616221909819775 - 4.077529620630925) / 4.3616221909819775 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Memory.MemoryMarshal&lt;Int32&gt;.CastToInt

```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 0.3063878927689858 < 19.256618337176572.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.547323865968777 (T) = (0 -0.4178269352434305) / Math.Sqrt((19.170483220717422 / (232)) + (0.029864556144554674 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.7104325130316015 = (1.4429345629159998 - 0.4178269352434305) / 1.4429345629159998 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Tests.Perf_UInt64

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
TryFormat - Duration of single invocation 30.43 ns 3.18 ns 0.10 0.84 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_UInt64.TryFormat(value: 0)


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.181642064679114 < 26.644851113488272.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.415824157759299 (T) = (0 -3.7991302898053503) / Math.Sqrt((27.144943440897475 / (232)) + (1.0886283808862196 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.3097247337527489 = (5.503790263932957 - 3.7991302898053503) / 5.503790263932957 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Tests.Perf_Strings

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
WriteStringsUtf16 - Duration of single invocation 46.68 ms 23.54 ms 0.50 0.63 False
WriteStringsUtf16 - Duration of single invocation 16.73 ms 11.32 ms 0.68 0.68 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Tests.Perf_Strings.WriteStringsUtf16(Formatted: False, SkipValidation: True, Escaped: OneEscaped)


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 23.536443 < 43.960874275.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.523656223897953 (T) = (0 -22709904.417538583) / Math.Sqrt((37700798982666.336 / (181)) + (4190833973197.163 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.06013871790679717 = (24163038.578374505 - 22709904.417538583) / 24163038.578374505 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Strings.WriteStringsUtf16(Formatted: False, SkipValidation: False, Escaped: NoneEscaped)

```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 11.317217684210528 < 18.45100545.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.6646216706054395 (T) = (0 -10872328.064514257) / Math.Sqrt((4502137736753.572 / (232)) + (530387032028.2468 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.059321900674199936 = (11557968.73798448 - 10872328.064514257) / 11557968.73798448 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in MicroBenchmarks.Serializers.Xml_ToStream<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
XmlSerializer_ - Duration of single invocation 5.79 μs 3.13 μs 0.54 0.56 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;LoginViewModel&gt;*'

Payloads

Baseline
Compare

Histogram

MicroBenchmarks.Serializers.Xml_ToStream<LoginViewModel>.XmlSerializer_


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.129276837205852 < 5.436913097284278.
IsChangePoint: Marked as a change because one of 6/22/2022 5:33:38 PM, 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 12.921697202140173 (T) = (0 -3252.4716067656154) / Math.Sqrt((332408.9248131046 / (232)) + (57978.29599348909 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.18204020513150446 = (3976.3220969662934 - 3252.4716067656154) / 3976.3220969662934 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Tests.Perf_String

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Replace_String - Duration of single invocation 228.42 ns 127.83 ns 0.56 0.62 False
Replace_String - Duration of single invocation 194.25 ns 92.34 ns 0.48 0.61 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_String.Replace_String(text: "This is a very nice sentence. This is another very nice sentence.", oldValue: "a", newValue: "")


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 127.82824240755644 < 227.08349142177195.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 7.354734423328983 (T) = (0 -113.54964619543824) / Math.Sqrt((736.5200798965767 / (232)) + (72.09032151634707 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.12971079234202243 = (130.47346238040802 - 113.54964619543824) / 130.47346238040802 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_String.Replace_String(text: "This is a very nice sentence", oldValue: "nice", newValue: "bad")

```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 92.33522805507747 < 177.76965036330955.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 5.819963945114719 (T) = (0 -98.6010486437312) / Math.Sqrt((385.4711660550711 / (232)) + (58.86792119562161 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.09806234753985826 = (109.32135760690905 - 98.6010486437312) / 109.32135760690905 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Document.Tests.Perf_ParseThenWrite

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
ParseThenWrite - Duration of single invocation 1.61 μs 632.85 ns 0.39 0.62 False
ParseThenWrite - Duration of single invocation 98.79 μs 20.05 μs 0.20 0.54 False
ParseThenWrite - Duration of single invocation 66.30 μs 34.98 μs 0.53 0.65 False
ParseThenWrite - Duration of single invocation 8.48 ms 4.11 ms 0.49 0.76 False
ParseThenWrite - Duration of single invocation 130.26 μs 39.84 μs 0.31 0.59 False

graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Document.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: HelloWorld)


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 632.8483712393232 < 1.4710967932356989.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.951236027933087 (T) = (0 -705.7905768052213) / Math.Sqrt((32452.882540196286 / (232)) + (2428.850398376861 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.07525723346469582 = (763.2290863431979 - 705.7905768052213) / 763.2290863431979 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: DeepTree)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 20.048974260869567 < 97.40049553553547.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.175244884073347 (T) = (0 -20102.43787791985) / Math.Sqrt((320190895.45003355 / (232)) + (2131213.179688348 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.1996681469260701 = (25117.628144762726 - 20102.43787791985) / 25117.628144762726 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: True, TestCase: Json4KB)

```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 34.984896955838224 < 83.94755152453838.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.379867132786087 (T) = (0 -33005.75979971597) / Math.Sqrt((197407528.78508386 / (181)) + (6212711.144701802 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.13024119890500716 = (37948.17569901332 - 33005.75979971597) / 37948.17569901332 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: True, TestCase: Json400KB)

```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 4.113991764705881 < 8.900143180769229.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.5494564656548646 (T) = (0 -3922381.5526589444) / Math.Sqrt((2240428989263.331 / (181)) + (416367514076.4104 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.09255479454961797 = (4322444.516869967 - 3922381.5526589444) / 4322444.516869967 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: BroadTree)

```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 39.84352573691157 < 124.96646101100221.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.8359313623039033 (T) = (0 -37567.65895877555) / Math.Sqrt((426311905.38755447 / (232)) + (6040373.04570712 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.12659904810022898 = (43013.07306462234 - 37567.65895877555) / 43013.07306462234 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Tests.Perf_Reader

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
ReadSingleSpanSequenceEmptyLoop - Duration of single invocation 22.15 μs 13.88 μs 0.63 0.63 False
ReadSingleSpanSequenceEmptyLoop - Duration of single invocation 8.56 μs 5.35 μs 0.62 0.67 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: BroadTree)


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 13.882029715510525 < 20.948914643134465.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.9343141128667254 (T) = (0 -12828.513779497353) / Math.Sqrt((5003512.869245468 / (232)) + (1177622.4819082825 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.05143698481611839 = (13524.155563887876 - 12828.513779497353) / 13524.155563887876 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: DeepTree)

```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 5.3474345981271965 < 9.812983696042936.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 12:55:46 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.935308787794427 (T) = (0 -5608.211297745651) / Math.Sqrt((985873.8894167183 / (231)) + (206624.28009291436 / (35))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (231) + (35) - 2, .975) and 0.050139466112101405 = (5904.247094876694 - 5608.211297745651) / 5904.247094876694 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Serialization.Tests.WriteJson<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SerializeToString - Duration of single invocation 427.64 ns 346.23 ns 0.81 0.67 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;Int32&gt;*'

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.WriteJson<Int32>.SerializeToString


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 346.23225881722146 < 405.8881520237156.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.868500836650091 (T) = (0 -319.334386442745) / Math.Sqrt((1100.5703937265973 / (232)) + (460.2257152726186 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.061194442645787744 = (340.1496549964071 - 319.334386442745) / 340.1496549964071 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

@performanceautofiler performanceautofiler bot added ampere arm64 PGO Applied if there were any profile guided optimization updates in the observed interval. untriaged labels Jul 14, 2022
@performanceautofiler
Copy link
Author

performanceautofiler bot commented Jul 14, 2022

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Memory.Constructors_ValueTypesOnly<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SpanFromPointerLength - Duration of single invocation 3.26 ns 0.11 ns 0.03 0.96 False
ReadOnlyFromPointerLength - Duration of single invocation 3.82 ns 0.13 ns 0.03 0.97 False

graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Memory.Constructors_ValueTypesOnly&lt;Int32&gt;*'

Payloads

Baseline
Compare

Histogram

System.Memory.Constructors_ValueTypesOnly<Int32>.SpanFromPointerLength


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 0.10997978309704703 < 4.419495201440329.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.264873687477917 (T) = (0 -0.16833046797553058) / Math.Sqrt((0.8280880732566646 / (232)) + (0.01605076172213063 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.5521764708103019 = (0.37588571614383787 - 0.16833046797553058) / 0.37588571614383787 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Memory.Constructors_ValueTypesOnly&lt;Int32&gt;.ReadOnlyFromPointerLength

```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 0.12779987337704724 < 3.819181868706476.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.7925300515656204 (T) = (0 -0.1876021034948518) / Math.Sqrt((0.7345020658447717 / (232)) + (0.01644761947252114 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.47348149566287634 = (0.3563067621546162 - 0.1876021034948518) / 0.3563067621546162 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

### Run Information
Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SerializeToString - Duration of single invocation 58.31 μs 39.25 μs 0.67 0.65 False
SerializeToUtf8Bytes - Duration of single invocation 54.10 μs 39.70 μs 0.73 0.63 False
SerializeToStream - Duration of single invocation 56.79 μs 42.19 μs 0.74 0.65 False

graph
graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;ImmutableDictionary&lt;String, String&gt;&gt;*'

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToString


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 39.24621449275363 < 54.773203814542946.
IsChangePoint: Marked as a change because one of 5/8/2022 12:35:08 PM, 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 5.953670464528387 (T) = (0 -41334.879057356) / Math.Sqrt((19460298.57831125 / (232)) + (7135305.054155088 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.0724113970868849 = (44561.65042082534 - 41334.879057356) / 44561.65042082534 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.WriteJson&lt;ImmutableDictionary&lt;String, String&gt;&gt;.SerializeToUtf8Bytes

```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 39.70233648255814 < 53.32860168202528.
IsChangePoint: Marked as a change because one of 7/2/2022 10:25:38 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.085915039611618 (T) = (0 -40048.575074348635) / Math.Sqrt((22999475.821243715 / (232)) + (9923058.606466826 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.05996908361815981 = (42603.46588226564 - 40048.575074348635) / 42603.46588226564 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.WriteJson&lt;ImmutableDictionary&lt;String, String&gt;&gt;.SerializeToStream

```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 42.1909890410959 < 52.17538715621725.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.7257504698343284 (T) = (0 -39057.051821176625) / Math.Sqrt((24034049.36771148 / (232)) + (8050410.416932201 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.05271931812299967 = (41230.7065565684 - 39057.051821176625) / 41230.7065565684 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Serialization.Tests.WriteJson<Nullable<DateTimeOffset>>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SerializeToString - Duration of single invocation 626.68 ns 465.83 ns 0.74 0.68 False
SerializeObjectProperty - Duration of single invocation 845.91 ns 649.73 ns 0.77 0.50 False

graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;Nullable&lt;DateTimeOffset&gt;&gt;*'

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.WriteJson<Nullable<DateTimeOffset>>.SerializeToString


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 465.82662713030356 < 597.92288868721.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.8535871876856738 (T) = (0 -457.8862977285939) / Math.Sqrt((2712.6701410159703 / (181)) + (1308.5428564485953 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.05797490687856169 = (486.06592443452763 - 457.8862977285939) / 486.06592443452763 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.WriteJson&lt;Nullable&lt;DateTimeOffset&gt;&gt;.SerializeObjectProperty

```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 649.7251025362746 < 922.8594623406271.
IsChangePoint: Marked as a change because one of 6/23/2022 3:07:42 AM, 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 4.513998973142433 (T) = (0 -705.1935713563971) / Math.Sqrt((4491.938111835763 / (232)) + (2356.031933388155 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.05684501019048214 = (747.6963796786146 - 705.1935713563971) / 747.6963796786146 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SerializeToStream - Duration of single invocation 32.71 μs 17.24 μs 0.53 0.67 False
SerializeObjectProperty - Duration of single invocation 31.39 μs 19.86 μs 0.63 0.55 False

graph
graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;Dictionary&lt;String, String&gt;&gt;*'

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>.SerializeToStream


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 17.238724826388886 < 33.050006031084.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.434475364858441 (T) = (0 -16694.24099624504) / Math.Sqrt((19677718.026629068 / (181)) + (3479453.5386609705 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.08635137464920739 = (18272.058352668497 - 16694.24099624504) / 18272.058352668497 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.WriteJson&lt;Dictionary&lt;String, String&gt;&gt;.SerializeObjectProperty

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 19.85726679854509 < 33.51909378856317.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 5.708702655871942 (T) = (0 -18567.502015714203) / Math.Sqrt((17197936.099159043 / (181)) + (1824313.323320199 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.10598492593807544 = (20768.66772654452 - 18567.502015714203) / 20768.66772654452 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements 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
Subtract - Duration of single invocation 166.63 ns 84.27 ns 0.51 0.58 False
Subtract - Duration of single invocation 37.93 ns 12.61 ns 0.33 0.75 False
Multiply - Duration of single invocation 40.01 ns 10.01 ns 0.25 0.73 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Numerics.Tests.Perf_BigInteger.Subtract(arguments: 1024,1024 bits)


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 84.27371004390729 < 174.7177991049649.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 5.037963900917224 (T) = (0 -100.48223615555976) / Math.Sqrt((394.5356375849278 / (232)) + (41.645206884476885 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.07898227153301865 = (109.09913354524757 - 100.48223615555976) / 109.09913354524757 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Numerics.Tests.Perf_BigInteger.Subtract(arguments: 16,16 bits)

```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 12.60766937238916 < 35.15585143263832.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.764089552197786 (T) = (0 -11.752155467385249) / Math.Sqrt((39.710598161432344 / (181)) + (0.7034429736405757 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.10333498543262461 = (13.10651723492909 - 11.752155467385249) / 13.10651723492909 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 16,16 bits)

```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 10.013606565697497 < 36.38885981449828.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.396374875557054 (T) = (0 -9.678975648683465) / Math.Sqrt((41.939085292183606 / (232)) + (1.6591882964874194 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.14393091693383495 = (11.306302073211752 - 9.678975648683465) / 11.306302073211752 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Tests.Perf_UInt16

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Parse - Duration of single invocation 42.49 ns 9.28 ns 0.22 0.74 False
Parse - Duration of single invocation 37.77 ns 16.88 ns 0.45 0.76 False
Parse - Duration of single invocation 34.72 ns 22.42 ns 0.65 0.74 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Tests.Perf_UInt16.Parse(value: "0")


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 9.282318966605036 < 39.96743566377148.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.6943188747839386 (T) = (0 -12.915401106729835) / Math.Sqrt((39.17321214412767 / (232)) + (3.2257263163741805 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.1280792082993195 = (14.812585305527994 - 12.915401106729835) / 14.812585305527994 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_UInt16.Parse(value: "12345")

```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 16.87750629130266 < 41.22687810280953.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.7080643741501995 (T) = (0 -20.451846933284386) / Math.Sqrt((28.880718287507012 / (232)) + (4.836458770027577 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.0640085574794489 = (21.85046358779646 - 20.451846933284386) / 21.85046358779646 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Tests.Perf_UInt16.Parse(value: "65535")

```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 22.421535269506254 < 40.5577789843238.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.025734087418161 (T) = (0 -20.30469518038339) / Math.Sqrt((30.40424368652978 / (232)) + (5.707000882324802 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.07533324193263134 = (21.95893277576228 - 20.30469518038339) / 21.95893277576228 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
DeserializeFromStream - Duration of single invocation 902.89 μs 528.64 μs 0.59 0.59 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;MyEventsListerViewModel&gt;*'

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromStream


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 528.635402739726 < 895.2874076953152.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 3.5688634827052 (T) = (0 -646619.0495768823) / Math.Sqrt((7367070184.599239 / (181)) + (2226592477.9174905 / (34))) is greater than 1.971163885465162 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (181) + (34) - 2, .975) and 0.05381454115581968 = (683395.6742125 - 646619.0495768823) / 683395.6742125 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Net.NetworkInformation.Tests.PhysicalAddressTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
PAMedium - Duration of single invocation 84.62 ns 38.28 ns 0.45 0.64 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Net.NetworkInformation.Tests.PhysicalAddressTests.PAMedium


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 38.28393673629715 < 89.6244188897127.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 6.1822548827752355 (T) = (0 -36.11501536607343) / Math.Sqrt((155.27109204649753 / (232)) + (5.900547650015712 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.1358109062796743 = (41.790640067671575 - 36.11501536607343) / 41.790640067671575 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in JetStream.Poker

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Play - Duration of single invocation 22.87 ms 16.05 ms 0.70 0.59 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

JetStream.Poker.Play


Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 16.05329947368421 < 21.52818690625.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 7.121888595219864 (T) = (0 -16473767.914224088) / Math.Sqrt((2442358828349.872 / (232)) + (979965124820.6953 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.07898436323516317 = (17886523.59051135 - 16473767.914224088) / 17886523.59051135 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Run Information

Architecture arm64
OS Windows 10.0.25094
Baseline a33b9d82d45edd2ca47db710ff06a87aa0eb9cbd
Compare 3cf8f49b111ebb809607555bba70465f67157533
Diff Diff

Improvements in System.Memory.Constructors<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SpanFromMemory - Duration of single invocation 15.32 ns 6.16 ns 0.40 0.77 False

graph
Test Report

Repro

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Memory.Constructors&lt;String&gt;*'

Payloads

Baseline
Compare

Histogram

System.Memory.Constructors<String>.SpanFromMemory


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 6.162813677155963 < 14.279771875923867.
IsChangePoint: Marked as a change because one of 7/2/2022 7:35:06 PM, 7/6/2022 3:55:24 AM, 7/14/2022 8:56:55 AM falls between 7/5/2022 7:51:46 PM and 7/14/2022 8:56:55 AM.
IsImprovementStdDev: Marked as improvement because 2.226178495621786 (T) = (0 -6.103319275307063) / Math.Sqrt((5.268180916666722 / (232)) + (0.9925315618079694 / (34))) is greater than 1.9689904969295111 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (232) + (34) - 2, .975) and 0.07672024318541337 = (6.610476651588424 - 6.103319275307063) / 6.610476651588424 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

@EgorBo
Copy link
Member

EgorBo commented Jul 14, 2022

dotnet/runtime#71673

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ampere arch-arm64 branch-refs/heads/main kind-micro os-windows perf-improvement PGO Applied if there were any profile guided optimization updates in the observed interval. runtime-coreclr
Projects
None yet
Development

No branches or pull requests

2 participants