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] Windows/arm64: 109 Improvements on 2/8/2023 4:45:44 PM #13061

Closed
performanceautofiler bot opened this issue Feb 16, 2023 · 5 comments
Closed

[Perf] Windows/arm64: 109 Improvements on 2/8/2023 4:45:44 PM #13061

performanceautofiler bot opened this issue Feb 16, 2023 · 5 comments

Comments

@performanceautofiler
Copy link

performanceautofiler bot commented Feb 16, 2023

Run Information

Architecture arm64
OS Windows 10.0.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
DeserializeFromUtf8Bytes - Duration of single invocation 23.94 μs 22.03 μs 0.92 0.14 False
DeserializeFromStream - Duration of single invocation 27.25 μs 24.17 μs 0.89 0.12 False
DeserializeFromReader - Duration of single invocation 33.13 μs 28.26 μs 0.85 0.06 False
DeserializeFromReader - Duration of single invocation 32.37 μs 28.26 μs 0.87 0.02 False

graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.ReadJson<Dictionary<String, String>>.DeserializeFromUtf8Bytes(Mode: Reflection)


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.03469680851064 < 22.645177404192864.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 15.697911845680563 (T) = (0 -22421.478670788438) / Math.Sqrt((328802.8404813961 / (254)) + (317671.6131281216 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.07408373091771066 = (24215.449516845852 - 22421.478670788438) / 24215.449516845852 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;Dictionary&lt;String, String&gt;&gt;.DeserializeFromStream(Mode: Reflection)

```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.174234930448222 < 24.566554033879473.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 30.083766090128915 (T) = (0 -24222.036160498057) / Math.Sqrt((450350.0727800887 / (255)) + (101203.83726382107 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.08444143344179514 = (26456.020450504067 - 24222.036160498057) / 26456.020450504067 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;Dictionary&lt;String, String&gt;&gt;.DeserializeFromReader(Mode: Reflection)

```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 28.257519984528106 < 31.110331380928148.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 70.4341578327399 (T) = (0 -28479.549240663513) / Math.Sqrt((399699.1572745696 / (255)) + (87026.17391124369 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.14615853838919554 = (33354.61033589978 - 28479.549240663513) / 33354.61033589978 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;Dictionary&lt;String, String&gt;&gt;.DeserializeFromReader(Mode: SourceGen)

```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 28.258410660660665 < 31.068791120719776.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 61.11913244516793 (T) = (0 -28518.63656416319) / Math.Sqrt((276792.5483976142 / (255)) + (134200.6630681941 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.1429382052343784 = (33274.88955678173 - 28518.63656416319) / 33274.88955678173 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

Run Information

Architecture arm64
OS Windows 10.0.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
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
ReadSpanEmptyLoop - Duration of single invocation 10.28 μs 9.57 μs 0.93 0.00 False
ReadSingleSpanSequenceEmptyLoop - Duration of single invocation 109.66 μs 95.29 μs 0.87 0.00 False
ReadMultiSpanSequenceEmptyLoop - Duration of single invocation 10.60 μs 9.81 μs 0.93 0.00 False
ReadSpanEmptyLoop - Duration of single invocation 2.84 μs 2.18 μs 0.77 0.00 False
ReadSingleSpanSequenceEmptyLoop - Duration of single invocation 2.83 μs 2.19 μs 0.77 0.00 False
ReadSingleSpanSequenceEmptyLoop - Duration of single invocation 4.00 μs 3.55 μs 0.89 0.01 False
ReadSpanEmptyLoop - Duration of single invocation 15.43 μs 14.24 μs 0.92 0.00 False
ReadMultiSpanSequenceEmptyLoop - Duration of single invocation 75.87 μs 65.60 μs 0.86 0.00 False
ReadMultiSpanSequenceEmptyLoop - Duration of single invocation 1.63 μs 1.47 μs 0.90 0.02 False
ReadSpanEmptyLoop - Duration of single invocation 109.54 μs 95.16 μs 0.87 0.00 False
ReadSpanEmptyLoop - Duration of single invocation 1.17 μs 1.10 μs 0.94 0.01 False
ReadReturnBytes - Duration of single invocation 3.12 μs 2.74 μs 0.88 0.01 False
ReadReturnBytes - Duration of single invocation 4.47 μs 4.05 μs 0.91 0.01 False
ReadSpanEmptyLoop - Duration of single invocation 3.93 μs 3.57 μs 0.91 0.00 False
ReadSingleSpanSequenceEmptyLoop - Duration of single invocation 74.64 μs 64.34 μs 0.86 0.00 False
ReadMultiSpanSequenceEmptyLoop - Duration of single invocation 2.84 μs 2.27 μs 0.80 0.00 False
ReadSingleSpanSequenceEmptyLoop - Duration of single invocation 10.25 μs 9.54 μs 0.93 0.00 False
ReadSingleSpanSequenceEmptyLoop - Duration of single invocation 1.66 μs 1.43 μs 0.86 0.00 False
ReadMultiSpanSequenceEmptyLoop - Duration of single invocation 111.29 μs 97.28 μs 0.87 0.00 False
ReadSpanEmptyLoop - Duration of single invocation 1.64 μs 1.41 μs 0.86 0.02 False
ReadMultiSpanSequenceEmptyLoop - Duration of single invocation 4.37 μs 3.99 μs 0.91 0.00 False
ReadSpanEmptyLoop - Duration of single invocation 9.21 μs 8.50 μs 0.92 0.00 False
ReadReturnBytes - Duration of single invocation 121.90 μs 108.57 μs 0.89 0.00 False
ReadReturnBytes - Duration of single invocation 17.22 μs 16.08 μs 0.93 0.00 False
ReadSingleSpanSequenceEmptyLoop - Duration of single invocation 15.90 μs 14.29 μs 0.90 0.00 False
ReadMultiSpanSequenceEmptyLoop - Duration of single invocation 16.07 μs 14.70 μs 0.91 0.00 False
ReadReturnBytes - Duration of single invocation 87.43 μs 77.53 μs 0.89 0.00 False
ReadSingleSpanSequenceEmptyLoop - Duration of single invocation 9.35 μs 8.47 μs 0.91 0.00 False
ReadReturnBytes - Duration of single invocation 11.39 μs 10.38 μs 0.91 0.00 False
ReadMultiSpanSequenceEmptyLoop - Duration of single invocation 9.64 μs 9.10 μs 0.94 0.00 False
ReadSpanEmptyLoop - Duration of single invocation 74.59 μs 64.54 μs 0.87 0.00 False

graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: False, TestCase: Json4KB)


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.56721282754418 < 9.75529815961541.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 108.37312562368311 (T) = (0 -9553.822809118981) / Math.Sqrt((4114.958082253897 / (299)) + (705.0966659238591 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.06684371050856572 = (10238.180802838257 - 9553.822809118981) / 10238.180802838257 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: Json40KB)

```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.28730790043292 < 103.93676099941725.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 263.2219876412879 (T) = (0 -95002.30539628648) / Math.Sqrt((297575.642314564 / (299)) + (53931.374637655914 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.1316218803101658 = (109402.0027015642 - 95002.30539628648) / 109402.0027015642 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: False, 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 9.809755241090146 < 9.97782564076428.
IsChangePoint: Marked as a change because one of 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 90.93178430388201 (T) = (0 -9828.388809176038) / Math.Sqrt((35521.264199367615 / (299)) + (501.7426986281164 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.09783338350254041 = (10894.2058256749 - 9828.388809176038) / 10894.2058256749 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: False, TestCase: LotsOfStrings)

```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.182916496419432 < 2.7038313920805934.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 585.2930172247079 (T) = (0 -2182.1875370514326) / Math.Sqrt((267.88798332450375 / (299)) + (8.719781381234064 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.2284656074499827 = (2828.3736384570375 - 2182.1875370514326) / 2828.3736384570375 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: LotsOfStrings)

```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.1884809540494543 < 2.6855072815425216.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 491.37282128115703 (T) = (0 -2192.2494216231516) / Math.Sqrt((159.76408829732645 / (299)) + (32.02821877121903 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.22720592688281316 = (2836.7834302615283 - 2192.2494216231516) / 2836.7834302615283 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: LotsOfNumbers)

```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 3.553322088068182 < 3.8092773799476785.
IsChangePoint: Marked as a change because one of 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 83.35887513305676 (T) = (0 -3569.0712485507015) / Math.Sqrt((2526.580041732491 / (299)) + (226.5105880745433 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.08746039202817656 = (3911.141190334945 - 3569.0712485507015) / 3911.141190334945 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: 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 14.236300608828003 < 14.737650500223616.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 97.5132382583237 (T) = (0 -14200.473040565705) / Math.Sqrt((38294.70350883211 / (299)) + (1568.5000356578853 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.08566785358081289 = (15530.978645100944 - 14200.473040565705) / 15530.978645100944 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json40KB)

```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 65.60037858893558 < 72.0902988356437.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 250.9439347406226 (T) = (0 -65735.33284228678) / Math.Sqrt((272079.0210183804 / (299)) + (20393.003281507008 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.1347853490966578 = (75975.75095804801 - 65735.33284228678) / 75975.75095804801 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: LotsOfStrings)

```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.4707490252491902 < 1.5629571100593005.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 134.7032125838728 (T) = (0 -1471.9639409995673) / Math.Sqrt((400.90098063567046 / (299)) + (13.785238111587878 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.11072904172890692 = (1655.247961612664 - 1471.9639409995673) / 1655.247961612664 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: False, TestCase: Json40KB)

```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.16211890243903 < 104.42778829225351.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 235.06834723202186 (T) = (0 -95132.18366012986) / Math.Sqrt((222753.17011087513 / (299)) + (78799.93034696738 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13010192901671 = (109360.15015253122 - 95132.18366012986) / 109360.15015253122 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: 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 1.10038814895352 < 1.1125503134206147.
IsChangePoint: Marked as a change because one of 11/21/2022 10:59:14 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 69.13751754692318 (T) = (0 -1104.0425561071452) / Math.Sqrt((91.07853855040693 / (299)) + (19.636044480457937 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.059807744679357885 = (1174.2731870628138 - 1104.0425561071452) / 1174.2731870628138 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: LotsOfStrings)

```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.7424662628671856 < 2.9641524462649915.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 163.6642577231725 (T) = (0 -2742.697867809876) / Math.Sqrt((1498.255023853169 / (299)) + (9.599037346317576 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.12144671137281923 = (3121.8343876392405 - 2742.697867809876) / 3121.8343876392405 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: LotsOfNumbers)

```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.048555066519956 < 4.250826041933943.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 108.07826560884696 (T) = (0 -4034.1361887865805) / Math.Sqrt((1084.9420106451466 / (299)) + (277.8827946573575 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.09087400678667182 = (4437.378557979436 - 4034.1361887865805) / 4437.378557979436 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: False, TestCase: LotsOfNumbers)

```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 3.5712967478603193 < 3.7443973742071655.
IsChangePoint: Marked as a change because one of 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 70.44562880043408 (T) = (0 -3575.0724096589693) / Math.Sqrt((1848.7295062809462 / (299)) + (375.5962356264918 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.08116006995164508 = (3890.854427137083 - 3575.0724096589693) / 3890.854427137083 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: Json40KB)

```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 64.34387676366843 < 70.80696128908293.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 234.99991027870956 (T) = (0 -64323.9071472962) / Math.Sqrt((282761.7192081888 / (299)) + (23736.48781848973 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13499669282457208 = (74362.61412379886 - 64323.9071472962) / 74362.61412379886 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: LotsOfStrings)

```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.265616716025349 < 2.6971049818848676.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 320.1700872770886 (T) = (0 -2247.5182281776365) / Math.Sqrt((1040.6848812527655 / (299)) + (24.52128483655614 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.22984128760303704 = (2918.2533314239754 - 2247.5182281776365) / 2918.2533314239754 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, 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 9.544681282988227 < 9.772489036695928.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 132.8984069197791 (T) = (0 -9555.488608030984) / Math.Sqrt((2980.355067797001 / (299)) + (486.3806434209654 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.068528993966531 = (10258.492799171081 - 9555.488608030984) / 10258.492799171081 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: LotsOfStrings)

```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.4261843998355714 < 1.5717867411710706.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 127.93436725621348 (T) = (0 -1427.8654825227786) / Math.Sqrt((807.4056728045956 / (299)) + (5.054540873818367 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13213490540155426 = (1645.2620244894636 - 1427.8654825227786) / 1645.2620244894636 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: Json40KB)

```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 97.28201086956521 < 106.39076341426859.
IsChangePoint: Marked as a change because one of 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 146.93194366492563 (T) = (0 -97229.19896021727) / Math.Sqrt((3808993.4175588815 / (299)) + (54850.25808429856 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.15516400645792894 = (115086.47797139038 - 97229.19896021727) / 115086.47797139038 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: LotsOfStrings)

```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.4089448879678215 < 1.5521104079145116.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 129.54178370296603 (T) = (0 -1412.3538235313874) / Math.Sqrt((690.8951361305358 / (299)) + (14.764440494112737 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.1342336746414894 = (1631.3337469513347 - 1412.3538235313874) / 1631.3337469513347 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: LotsOfNumbers)

```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 3.9944354890194083 < 4.153655170558248.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 179.1085160020846 (T) = (0 -3993.59481854263) / Math.Sqrt((1517.0106252504165 / (299)) + (45.60482172900393 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.10444851377458203 = (4459.369315967399 - 3993.59481854263) / 4459.369315967399 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, 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 8.50428072538211 < 8.814107061852736.
IsChangePoint: Marked as a change because one of 11/23/2022 4:07:45 PM, 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 82.61798430577002 (T) = (0 -8475.247319259463) / Math.Sqrt((12332.421574874097 / (299)) + (226.71837314614126 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.06426881445787655 = (9057.352635254172 - 8475.247319259463) / 9057.352635254172 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: Json40KB)

```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.5681144593254 < 116.01702037779756.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 163.4606734787596 (T) = (0 -108834.08941400421) / Math.Sqrt((628468.0076028239 / (299)) + (132853.06074481615 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.11179075616126732 = (122532.03867101908 - 108834.08941400421) / 122532.03867101908 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: 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 16.078858943268667 < 16.33081396097584.
IsChangePoint: Marked as a change because one of 1/12/2023 6:14:36 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 91.90808022314235 (T) = (0 -15997.243209707343) / Math.Sqrt((46258.66634705445 / (299)) + (2817.5820013545913 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.08464537991287117 = (17476.55264817982 - 15997.243209707343) / 17476.55264817982 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: 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 14.285532694567772 < 15.038402481498395.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 80.07153218131941 (T) = (0 -14256.86924791157) / Math.Sqrt((31873.47381202927 / (299)) + (3422.042359126052 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.07901398801814133 = (15480.006278523586 - 14256.86924791157) / 15480.006278523586 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: 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 14.700860099448997 < 15.27614366142795.
IsChangePoint: Marked as a change because one of 1/21/2023 8:03:21 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 104.8142315583862 (T) = (0 -14725.465663877178) / Math.Sqrt((74034.87614647376 / (299)) + (453.5763824397501 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.10373481834495513 = (16429.808906204642 - 14725.465663877178) / 16429.808906204642 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: Json40KB)

```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.53435357958872 < 83.51208473364768.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 157.80829671065055 (T) = (0 -77592.63144021227) / Math.Sqrt((582082.7563920697 / (299)) + (74694.59943882561 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.12251974898431514 = (88426.64134081498 - 77592.63144021227) / 88426.64134081498 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: 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 8.473828841982314 < 8.890011813998754.
IsChangePoint: Marked as a change because one of 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 70.77719578087506 (T) = (0 -8516.721897617792) / Math.Sqrt((12814.507133976424 / (299)) + (1013.27030271665 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.06934288594999156 = (9151.29940881766 - 8516.721897617792) / 9151.29940881766 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, 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 10.38021466905188 < 10.812230398797158.
IsChangePoint: Marked as a change because one of 1/13/2023 4:18:46 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 95.73813466110407 (T) = (0 -10315.868744099645) / Math.Sqrt((22603.500398815715 / (299)) + (2033.4193705975829 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.10234061892805707 = (11491.963390145733 - 10315.868744099645) / 11491.963390145733 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, 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 9.098134951782912 < 9.119032257917826.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 108.70260976395056 (T) = (0 -9083.695039495067) / Math.Sqrt((2427.6609221474228 / (299)) + (350.0229226035119 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.05208513336536472 = (9582.817359690478 - 9083.695039495067) / 9582.817359690478 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: Json40KB)

```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 64.538826303155 < 71.02494318181817.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 225.9516458345858 (T) = (0 -64339.06155703793) / Math.Sqrt((366051.9552572155 / (299)) + (18609.964087837358 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13316572363988774 = (74223.02429848691 - 64339.06155703793) / 74223.02429848691 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 Feb 16, 2023

Run Information

Architecture arm64
OS Windows 10.0.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

Improvements in MicroBenchmarks.Serializers.Json_FromStream<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SystemTextJson_Reflection_ - Duration of single invocation 37.75 μs 33.34 μs 0.88 0.20 False
SystemTextJson_SourceGen_ - Duration of single invocation 40.73 μs 35.46 μs 0.87 0.11 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

MicroBenchmarks.Serializers.Json_FromStream<IndexViewModel>.SystemTextJson_Reflection_


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 33.34305274607839 < 36.761475778578216.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 26.623905250541775 (T) = (0 -34541.32833017592) / Math.Sqrt((1077801.9556756476 / (255)) + (743806.321182218 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.1207991772588829 = (39287.18836099941 - 34541.32833017592) / 39287.18836099941 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### MicroBenchmarks.Serializers.Json_FromStream&lt;IndexViewModel&gt;.SystemTextJson_SourceGen_

```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 35.459805764070694 < 38.45333203207565.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 30.18784094300314 (T) = (0 -34344.48055158198) / Math.Sqrt((883546.8496454002 / (254)) + (760918.4283558986 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.1352469351358275 = (39715.93966767438 - 34344.48055158198) / 39715.93966767438 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
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 2.34 ms 2.15 ms 0.92 0.14 False
ParseThenWrite - Duration of single invocation 1.86 ms 1.71 ms 0.92 0.06 False
ParseThenWrite - Duration of single invocation 6.27 μs 5.61 μs 0.89 0.00 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

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


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.15124615942029 < 2.2169102065380835.
IsChangePoint: Marked as a change because one of 10/30/2022 12:44:54 AM, 11/1/2022 1:15:18 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 40.460259540906534 (T) = (0 -2153362.1090489607) / Math.Sqrt((7108841870.848791 / (299)) + (74366514.76461884 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.08823867616564839 = (2361760.751150465 - 2153362.1090489607) / 2361760.751150465 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: 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.7080908222811668 < 1.782077570270215.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 9.120133373480071 (T) = (0 -1735556.2049024468) / Math.Sqrt((1489749588.9625607 / (299)) + (7538699972.484617 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.08137790456258853 = (1889303.788274376 - 1735556.2049024468) / 1889303.788274376 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: LotsOfStrings)

```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.60837380958878 < 5.956705678763498.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 75.11401373510199 (T) = (0 -5589.958720261946) / Math.Sqrt((2407.0901148406206 / (299)) + (1766.879174723353 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.10329459004910492 = (6233.8853521225665 - 5589.958720261946) / 6233.8853521225665 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

Improvements in MicroBenchmarks.Serializers.Json_FromString<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SystemTextJson_SourceGen_ - Duration of single invocation 36.98 μs 32.79 μs 0.89 0.08 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

MicroBenchmarks.Serializers.Json_FromString<IndexViewModel>.SystemTextJson_SourceGen_


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 32.786769781972296 < 35.28610819063495.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 42.57989552030664 (T) = (0 -33018.00145198062) / Math.Sqrt((715858.02630376 / (255)) + (208287.62595280312 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.11682655975865708 = (37385.63678155659 - 33018.00145198062) / 37385.63678155659 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

Improvements in System.Text.Json.Node.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 11.01 μs 9.74 μs 0.89 0.10 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Node.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: True, TestCase: LotsOfStrings)


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.743768487912371 < 10.000235784783811.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 17.150403448481015 (T) = (0 -9822.27252518921) / Math.Sqrt((50390.459531049455 / (299)) + (51986.78841779313 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.07398840389603441 = (10607.072920592713 - 9822.27252518921) / 10607.072920592713 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 Feb 16, 2023

Run Information

Architecture arm64
OS Windows 10.0.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
DeserializeFromUtf8Bytes - Duration of single invocation 27.67 μs 24.29 μs 0.88 0.22 False
DeserializeFromUtf8Bytes - Duration of single invocation 27.74 μs 24.18 μs 0.87 0.19 False
DeserializeFromReader - Duration of single invocation 31.73 μs 27.84 μs 0.88 0.23 False
DeserializeFromString - Duration of single invocation 27.73 μs 24.46 μs 0.88 0.21 False
DeserializeFromStream - Duration of single invocation 28.45 μs 26.19 μs 0.92 0.21 False
DeserializeFromStream - Duration of single invocation 28.06 μs 24.82 μs 0.88 0.18 False
DeserializeFromString - Duration of single invocation 28.26 μs 24.70 μs 0.87 0.19 False
DeserializeFromReader - Duration of single invocation 33.86 μs 27.78 μs 0.82 0.21 False

graph
graph
graph
graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.ReadJson<ArrayList>.DeserializeFromUtf8Bytes(Mode: Reflection)


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.285855769230775 < 26.310098018841263.
IsChangePoint: Marked as a change because one of 1/10/2023 12:53:48 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 56.081357780673365 (T) = (0 -24365.67369867489) / Math.Sqrt((1417854.4437849298 / (255)) + (13994.301633144232 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.15214587821908354 = (28738.049474236 - 24365.67369867489) / 28738.049474236 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;ArrayList&gt;.DeserializeFromUtf8Bytes(Mode: SourceGen)

```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.18156104199067 < 26.421569271117477.
IsChangePoint: Marked as a change because one of 1/10/2023 5:57:38 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 43.15172388468565 (T) = (0 -24477.790311805307) / Math.Sqrt((1335080.267486206 / (255)) + (136727.27030464367 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.1517591604494036 = (28857.123084021518 - 24477.790311805307) / 28857.123084021518 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;ArrayList&gt;.DeserializeFromReader(Mode: SourceGen)

```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 27.836119260204082 < 30.482091107161203.
IsChangePoint: Marked as a change because one of 1/5/2023 10:03:03 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 33.55407491658459 (T) = (0 -28350.38574829001) / Math.Sqrt((1200064.259728617 / (255)) + (393480.2559803356 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.14114172692625296 = (33009.38773847692 - 28350.38574829001) / 33009.38773847692 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;ArrayList&gt;.DeserializeFromString(Mode: Reflection)

```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.457452299265682 < 26.66840295597728.
IsChangePoint: Marked as a change because one of 1/9/2023 11:38:05 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 29.562904359752938 (T) = (0 -24957.289214909306) / Math.Sqrt((1347531.508368926 / (254)) + (388288.88662212086 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.142514387515862 = (29105.198794657295 - 24957.289214909306) / 29105.198794657295 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;ArrayList&gt;.DeserializeFromStream(Mode: Reflection)

```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 26.186825546288826 < 27.033767556697295.
IsChangePoint: Marked as a change because one of 1/11/2023 12:41:22 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 37.4969323865832 (T) = (0 -25112.726632830123) / Math.Sqrt((1405337.46118295 / (255)) + (218475.10693197668 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.1483178842125939 = (29486.03260221408 - 25112.726632830123) / 29486.03260221408 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;ArrayList&gt;.DeserializeFromStream(Mode: SourceGen)

```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.816739480164994 < 27.05537264322937.
IsChangePoint: Marked as a change because one of 1/10/2023 5:57:38 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 34.303975444043395 (T) = (0 -25100.00640102704) / Math.Sqrt((1033508.4448351125 / (255)) + (305473.6607610955 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.1448746252842533 = (29352.42847795338 - 25100.00640102704) / 29352.42847795338 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;ArrayList&gt;.DeserializeFromString(Mode: SourceGen)

```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.696941641825273 < 26.890389120788207.
IsChangePoint: Marked as a change because one of 1/9/2023 11:38:05 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 21.530358997596743 (T) = (0 -25226.71149538874) / Math.Sqrt((898653.5511189281 / (255)) + (778550.1218007535 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.13309502657348277 = (29099.74249620229 - 25226.71149538874) / 29099.74249620229 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;ArrayList&gt;.DeserializeFromReader(Mode: Reflection)

```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 27.778238602723505 < 30.623364249862323.
IsChangePoint: Marked as a change because one of 1/10/2023 3:04:25 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 44.3288489009155 (T) = (0 -28157.919842615982) / Math.Sqrt((1406823.5789420034 / (255)) + (181376.18625710785 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.14830759753985145 = (33061.137754993084 - 28157.919842615982) / 33061.137754993084 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

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

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.05 ms 909.15 μs 0.86 0.00 False
Parse - Duration of single invocation 13.58 μs 10.93 μs 0.80 0.00 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Document.Tests.Perf_EnumerateArray.Parse(TestCase: Json400KB)


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 909.1505074786324 < 1.0008138742559523.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 359.0680852319392 (T) = (0 -907833.8441800828) / Math.Sqrt((47390196.97952396 / (299)) + (1069540.0421192735 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.1496918172303296 = (1067652.720009158 - 907833.8441800828) / 1067652.720009158 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_EnumerateArray.Parse(TestCase: ArrayOfStrings)

```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.927091832626552 < 12.906002918702013.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 241.51408467900777 (T) = (0 -10921.78794752238) / Math.Sqrt((30171.14151601933 / (299)) + (376.72769807991097 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.19158693719487896 = (13510.157678086933 - 10921.78794752238) / 13510.157678086933 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
DeserializeFromString - Duration of single invocation 45.13 μs 40.71 μs 0.90 0.18 False
DeserializeFromReader - Duration of single invocation 52.48 μs 48.30 μs 0.92 0.13 False
DeserializeFromString - Duration of single invocation 46.88 μs 42.15 μs 0.90 0.12 False
DeserializeFromReader - Duration of single invocation 55.42 μs 46.35 μs 0.84 0.12 False
DeserializeFromStream - Duration of single invocation 45.63 μs 41.17 μs 0.90 0.11 False

graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.ReadJson<Hashtable>.DeserializeFromString(Mode: SourceGen)


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 40.71232471955129 < 42.99872183553737.
IsChangePoint: Marked as a change because one of 1/11/2023 1:25:06 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 23.922323711119855 (T) = (0 -41425.41841952689) / Math.Sqrt((1751201.2490801555 / (254)) + (800534.8168648356 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.09941848017716522 = (45998.52151938031 - 41425.41841952689) / 45998.52151938031 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;Hashtable&gt;.DeserializeFromReader(Mode: SourceGen)

```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 48.30133067397 < 50.33272220141623.
IsChangePoint: Marked as a change because one of 12/7/2022 11:17:41 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 45.95352191975491 (T) = (0 -46683.99622459038) / Math.Sqrt((2811783.373089912 / (255)) + (466917.1727469111 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.14211086016918117 = (54417.28313963359 - 46683.99622459038) / 54417.28313963359 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;Hashtable&gt;.DeserializeFromString(Mode: Reflection)

```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.15168656947891 < 42.757692686376785.
IsChangePoint: Marked as a change because one of 12/5/2022 9:44:53 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 36.52163899771236 (T) = (0 -41006.88023206243) / Math.Sqrt((2518637.7554317703 / (254)) + (272067.1277218373 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.11184472681223996 = (46170.84587572267 - 41006.88023206243) / 46170.84587572267 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;Hashtable&gt;.DeserializeFromReader(Mode: Reflection)

```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 46.353132948283175 < 50.830320160264854.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 33.82852332677547 (T) = (0 -47086.07413276001) / Math.Sqrt((1470946.1231139125 / (254)) + (1044912.1832652522 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.1315982598886084 = (54221.533603468124 - 47086.07413276001) / 54221.533603468124 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;Hashtable&gt;.DeserializeFromStream(Mode: SourceGen)

```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 41.171186698137454 < 43.469404658382636.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 32.61904088196133 (T) = (0 -41724.714416362156) / Math.Sqrt((1207239.62648785 / (255)) + (463465.90175375284 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.10369385940368302 = (46551.856030577335 - 41724.714416362156) / 46551.856030577335 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
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.39 ms 1.22 ms 0.88 0.00 False
Parse - Duration of single invocation 1.06 ms 910.87 μs 0.86 0.00 False
Parse - Duration of single invocation 374.31 ns 344.97 ns 0.92 0.11 False
Parse - Duration of single invocation 1.70 μs 1.61 μs 0.95 0.00 False

graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

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


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.2188051372273045 < 1.3230113047529874.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 250.4638446934325 (T) = (0 -1217214.6006099111) / Math.Sqrt((39988144.883069254 / (299)) + (11237697.562469188 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13239240966101046 = (1402955.2232643839 - 1217214.6006099111) / 1402955.2232643839 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 910.866496350365 < 1.0052996226085507.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 301.6247765422977 (T) = (0 -908609.874609971) / Math.Sqrt((48767368.75341035 / (299)) + (3328824.8950822325 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.15085254551392066 = (1070026.0241136558 - 908609.874609971) / 1070026.0241136558 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: True, TestRandomAccess: True, TestCase: HelloWorld)

```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 344.96754440892164 < 355.1951805089126.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 27.079316171676567 (T) = (0 -345.7110685214443) / Math.Sqrt((85.84544898515642 / (299)) + (15.144614710734698 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.06727896092655816 = (370.64787223505874 - 345.7110685214443) / 370.64787223505874 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: True, 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 1.6119206306523841 < 1.613877712822515.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 77.67292998958932 (T) = (0 -1600.3697445644195) / Math.Sqrt((208.89601018004893 / (299)) + (32.51828409526761 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.0627518775109354 = (1707.5198191000825 - 1600.3697445644195) / 1707.5198191000825 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

Improvements in System.Text.Json.Serialization.Tests.ReadJson<HashSet<String>>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
DeserializeFromReader - Duration of single invocation 18.90 μs 17.72 μs 0.94 0.00 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.ReadJson<HashSet<String>>.DeserializeFromReader(Mode: Reflection)


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.71688108766234 < 18.02314861161207.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 53.57012233232941 (T) = (0 -17706.012065197996) / Math.Sqrt((35673.32309850712 / (255)) + (12765.522301890516 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.06967214647100846 = (19032.01328223613 - 17706.012065197996) / 19032.01328223613 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 Feb 16, 2023

Run Information

Architecture arm64
OS Windows 10.0.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
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
DeserializeFromString - Duration of single invocation 427.30 μs 398.48 μs 0.93 0.33 False
DeserializeFromReader - Duration of single invocation 572.28 μs 496.97 μs 0.87 0.32 False
DeserializeFromStream - Duration of single invocation 440.94 μs 412.00 μs 0.93 0.19 False
DeserializeFromUtf8Bytes - Duration of single invocation 420.50 μs 352.73 μs 0.84 0.29 False
DeserializeFromReader - Duration of single invocation 537.66 μs 467.45 μs 0.87 0.14 False
DeserializeFromStream - Duration of single invocation 466.73 μs 412.07 μs 0.88 0.23 False

graph
graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromString(Mode: Reflection)


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 398.4759812870835 < 400.1887719029093.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 12.470928222224657 (T) = (0 -383485.2036844875) / Math.Sqrt((209876367.7204411 / (254)) + (245609960.35938337 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.09292135114722447 = (422769.5185742703 - 383485.2036844875) / 422769.5185742703 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;MyEventsListerViewModel&gt;.DeserializeFromReader(Mode: Reflection)

```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 496.96844712182053 < 539.2478637496312.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 21.365499168181824 (T) = (0 -495780.4111134357) / Math.Sqrt((487373156.51111764 / (255)) + (263632255.44795153 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.12835162012943366 = (568784.8707836245 - 495780.4111134357) / 568784.8707836245 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;MyEventsListerViewModel&gt;.DeserializeFromStream(Mode: SourceGen)

```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 412.0008866995074 < 419.8366916305178.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 21.549514301795956 (T) = (0 -405731.59927479574) / Math.Sqrt((176952919.0283422 / (255)) + (132384316.97080234 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.11162804392920397 = (456713.65074300277 - 405731.59927479574) / 456713.65074300277 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;MyEventsListerViewModel&gt;.DeserializeFromUtf8Bytes(Mode: SourceGen)

```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 352.72509625126645 < 384.23093493746296.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 20.241323637532165 (T) = (0 -362201.5364587975) / Math.Sqrt((164000770.53821945 / (255)) + (102135786.21121873 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.10520042682399372 = (404785.10195662867 - 362201.5364587975) / 404785.10195662867 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;MyEventsListerViewModel&gt;.DeserializeFromReader(Mode: SourceGen)

```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 467.4517795637199 < 525.396704447757.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 28.89009071549738 (T) = (0 -486180.66797068005) / Math.Sqrt((188925035.99914402 / (255)) + (157996280.1389105 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.13237646881060397 = (560359.0157406073 - 486180.66797068005) / 560359.0157406073 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;MyEventsListerViewModel&gt;.DeserializeFromStream(Mode: Reflection)

```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 412.068894389439 < 443.3314802661283.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 22.13621224703625 (T) = (0 -404043.41291100986) / Math.Sqrt((267327511.78326428 / (254)) + (144868990.8231552 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.12187905776520472 = (460122.7387684545 - 404043.41291100986) / 460122.7387684545 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

Improvements in System.Text.Json.Tests.Perf_Segment

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
ReadMultiSegmentSequence - Duration of single invocation 112.45 μs 97.38 μs 0.87 0.00 False
ReadMultiSegmentSequence - Duration of single invocation 111.53 μs 97.44 μs 0.87 0.00 False
ReadSingleSegmentSequenceByN - Duration of single invocation 1.13 ms 963.02 μs 0.85 0.00 False
ReadMultiSegmentSequence - Duration of single invocation 1.13 ms 988.03 μs 0.87 0.00 False
ReadSingleSegmentSequence - Duration of single invocation 1.11 ms 954.97 μs 0.86 0.00 False
ReadMultiSegmentSequenceUsingSpan - Duration of single invocation 1.13 ms 973.44 μs 0.86 0.00 False
ReadSingleSegmentSequence - Duration of single invocation 10.34 μs 9.56 μs 0.92 0.00 False
ReadMultiSegmentSequence - Duration of single invocation 1.14 ms 991.49 μs 0.87 0.00 False
ReadSingleSegmentSequenceByN - Duration of single invocation 1.12 ms 962.98 μs 0.86 0.00 False
ReadSingleSegmentSequence - Duration of single invocation 110.48 μs 95.32 μs 0.86 0.00 False
ReadMultiSegmentSequence - Duration of single invocation 10.29 μs 9.59 μs 0.93 0.00 False
ReadSingleSegmentSequenceByN - Duration of single invocation 111.21 μs 95.94 μs 0.86 0.00 False
ReadMultiSegmentSequenceUsingSpan - Duration of single invocation 111.61 μs 96.49 μs 0.86 0.00 False
ReadMultiSegmentSequence - Duration of single invocation 10.45 μs 9.83 μs 0.94 0.00 False
ReadSingleSegmentSequenceByN - Duration of single invocation 10.38 μs 9.61 μs 0.93 0.00 False
ReadSingleSegmentSequenceByN - Duration of single invocation 10.43 μs 9.58 μs 0.92 0.00 False
ReadMultiSegmentSequenceUsingSpan - Duration of single invocation 1.13 ms 972.58 μs 0.86 0.00 False
ReadSingleSegmentSequenceByN - Duration of single invocation 110.58 μs 95.58 μs 0.86 0.00 False
ReadMultiSegmentSequenceUsingSpan - Duration of single invocation 110.51 μs 96.42 μs 0.87 0.00 False
ReadMultiSegmentSequenceUsingSpan - Duration of single invocation 10.36 μs 9.74 μs 0.94 0.00 False
ReadMultiSegmentSequenceUsingSpan - Duration of single invocation 10.49 μs 9.74 μs 0.93 0.00 False

graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequence(segmentSize: 4096, TestCase: Json40KB)


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 97.37976153039831 < 106.81802788263894.
IsChangePoint: Marked as a change because one of 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 157.55999045738412 (T) = (0 -97479.18401643028) / Math.Sqrt((3136483.9530179077 / (299)) + (72918.76797428554 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.15657211650162522 = (115575.00756568018 - 97479.18401643028) / 115575.00756568018 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequence(segmentSize: 8192, TestCase: Json40KB)

```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 97.43854166666667 < 106.56626664821987.
IsChangePoint: Marked as a change because one of 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 141.81139723323236 (T) = (0 -97714.01172288883) / Math.Sqrt((3388368.2298284927 / (299)) + (112075.74067980067 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.15296356236209183 = (115359.86810128196 - 97714.01172288883) / 115359.86810128196 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 4096, 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 963.0213760504201 < 1.0692022395833332.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 172.99094449049878 (T) = (0 -963914.8771969168) / Math.Sqrt((25160498.2230432 / (299)) + (19474243.04917531 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13872010666199777 = (1119165.6564292235 - 963914.8771969168) / 1119165.6564292235 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequence(segmentSize: 8192, 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 988.0259920634921 < 1.0762440040584413.
IsChangePoint: Marked as a change because one of 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 159.89092153412926 (T) = (0 -990829.3677507053) / Math.Sqrt((296209403.46598494 / (299)) + (6849025.411082638 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.152548624749628 = (1169187.2792795617 - 990829.3677507053) / 1169187.2792795617 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequence(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 954.9717524509805 < 1.0563121434090463.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 313.36130802780724 (T) = (0 -957712.9424782735) / Math.Sqrt((23569531.226143938 / (299)) + (4017892.3250258 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13503103042632653 = (1107222.3122065428 - 957712.9424782735) / 1107222.3122065428 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 4096, 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 973.4402853437095 < 1.0728931949529898.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 182.56674410765916 (T) = (0 -976674.6761022583) / Math.Sqrt((38661106.22597801 / (299)) + (14665547.30650735 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13291388711919258 = (1126387.1737691124 - 976674.6761022583) / 1126387.1737691124 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequence(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 9.562884955848926 < 9.812284616792677.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 106.8836826984168 (T) = (0 -9541.359009370044) / Math.Sqrt((5808.237139291488 / (299)) + (737.6380800662743 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.07114111724014063 = (10272.129799760767 - 9541.359009370044) / 10272.129799760767 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequence(segmentSize: 4096, 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 991.4949404761904 < 1.0889836059062274.
IsChangePoint: Marked as a change because one of 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 165.6621086840989 (T) = (0 -993493.2778866654) / Math.Sqrt((300199193.4558833 / (299)) + (4529259.1961073065 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.15290148282192426 = (1172819.0496617465 - 993493.2778866654) / 1172819.0496617465 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 8192, 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 962.982694327731 < 1.0635780821354983.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 208.93627826461235 (T) = (0 -961009.6106936365) / Math.Sqrt((23287623.955567915 / (299)) + (12283960.60285298 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13696663386450608 = (1113525.4422396927 - 961009.6106936365) / 1113525.4422396927 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequence(TestCase: Json40KB)

```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.31824284709195 < 104.63980224052648.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 294.7509241005865 (T) = (0 -95013.2320987762) / Math.Sqrt((283145.8277960305 / (299)) + (40097.08818976716 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13268835500492454 = (109549.12533120166 - 95013.2320987762) / 109549.12533120166 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequence(segmentSize: 8192, 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 9.589381613756613 < 9.79233205533407.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 118.60012603259624 (T) = (0 -9577.52113260495) / Math.Sqrt((3596.7773602159564 / (299)) + (595.014050155371 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.06740491211870223 = (10269.752926067302 - 9577.52113260495) / 10269.752926067302 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 4096, TestCase: Json40KB)

```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.94217791411042 < 105.20703646807536.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 222.0367640830581 (T) = (0 -95440.77801954713) / Math.Sqrt((278415.65622043615 / (299)) + (92586.44844389305 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.13316357539284926 = (110102.40837860589 - 95440.77801954713) / 110102.40837860589 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 8192, TestCase: Json40KB)

```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 96.48890266754849 < 106.32752566346647.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 224.20626826957928 (T) = (0 -96603.2984320497) / Math.Sqrt((279549.37804761436 / (299)) + (83241.2648419462 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.1282482108315359 = (110815.14214521598 - 96603.2984320497) / 110815.14214521598 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequence(segmentSize: 4096, 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 9.830842721946825 < 10.065393963872644.
IsChangePoint: Marked as a change because one of 1/21/2023 1:51:00 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 96.08520444803938 (T) = (0 -9842.964309128076) / Math.Sqrt((26322.390043645937 / (299)) + (464.1474956079598 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.09102159869697246 = (10828.600872163861 - 9842.964309128076) / 10828.600872163861 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 4096, 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 9.612343080220452 < 9.845721789490572.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 99.02706136306116 (T) = (0 -9586.605208478511) / Math.Sqrt((5764.163981091195 / (299)) + (667.1972750039723 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.06411840954586473 = (10243.395431922776 - 9586.605208478511) / 10243.395431922776 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 8192, 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 9.582769721832223 < 9.889003989337532.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 88.5672465705728 (T) = (0 -9582.684031661032) / Math.Sqrt((7378.712051074494 / (299)) + (830.1441092655119 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.06437772651966356 = (10242.043507595512 - 9582.684031661032) / 10242.043507595512 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 8192, 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 972.5774935400518 < 1.0675182362637363.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 184.32135303189838 (T) = (0 -971841.3151670848) / Math.Sqrt((25885623.199611768 / (299)) + (15726548.544187732 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.1342992861114429 = (1122606.5770487413 - 971841.3151670848) / 1122606.5770487413 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 8192, TestCase: Json40KB)

```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.58023989898987 < 104.61604890158256.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 238.83828230356838 (T) = (0 -95238.36267156458) / Math.Sqrt((211153.26919375386 / (299)) + (79112.2511003662 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.1313593319521037 = (109640.69053501096 - 95238.36267156458) / 109640.69053501096 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 4096, TestCase: Json40KB)

```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 96.41644547325103 < 105.7026401391162.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 175.1335133908644 (T) = (0 -96999.30256123866) / Math.Sqrt((342586.8882819594 / (299)) + (141460.99934794664 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.12608228850172373 = (110993.63393715814 - 96999.30256123866) / 110993.63393715814 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 8192, 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 9.74322528949545 < 9.856795688077387.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 82.84703583243919 (T) = (0 -9723.768383002809) / Math.Sqrt((3351.1591434592456 / (299)) + (1430.0284986676916 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.06389121787894765 = (10387.43420499754 - 9723.768383002809) / 10387.43420499754 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 4096, 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 9.73930416143873 < 9.957505427808249.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 68.92309517694417 (T) = (0 -9733.326406720265) / Math.Sqrt((4885.8446659530755 / (299)) + (1902.0624261723694 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.06188532668363533 = (10375.412178888126 - 9733.326406720265) / 10375.412178888126 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 Feb 16, 2023

Run Information

Architecture arm64
OS Windows 10.0.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
Parse - Duration of single invocation 29.11 μs 25.02 μs 0.86 0.00 False
Parse - Duration of single invocation 988.77 μs 827.74 μs 0.84 0.00 False
Parse - Duration of single invocation 24.49 μs 19.35 μs 0.79 0.00 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Document.Tests.Perf_EnumerateObject.Parse(TestCase: NumericProperties)


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 25.01854 < 27.746175701333037.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 210.32727100149987 (T) = (0 -25007.147679002985) / Math.Sqrt((82069.61807903272 / (299)) + (1546.6229214477373 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.132844124328468 = (28838.122857251314 - 25007.147679002985) / 28838.122857251314 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_EnumerateObject.Parse(TestCase: ObjectProperties)

```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 827.7420582706767 < 938.009657877604.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 314.0170534092738 (T) = (0 -833930.5779338838) / Math.Sqrt((35194002.69008429 / (299)) + (4329392.750894733 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.16566413248860523 = (999514.2368999191 - 833930.5779338838) / 999514.2368999191 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Document.Tests.Perf_EnumerateObject.Parse(TestCase: StringProperties)

```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.35366001443894 < 23.602568066415753.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 376.276071963117 (T) = (0 -19382.223922934467) / Math.Sqrt((51998.655470598125 / (299)) + (1123.1952546782554 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.2217859913320402 = (24906.033182453633 - 19382.223922934467) / 24906.033182453633 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

Improvements in MicroBenchmarks.Serializers.Json_FromStream<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SystemTextJson_SourceGen_ - Duration of single invocation 418.79 μs 383.20 μs 0.92 0.02 False

graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

MicroBenchmarks.Serializers.Json_FromStream<CollectionsOfPrimitives>.SystemTextJson_SourceGen_


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 383.1959774170784 < 395.91193690170934.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 25.31339397039561 (T) = (0 -385695.1793354731) / Math.Sqrt((59071647.39886933 / (254)) + (40385603.835220926 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.07942858352602625 = (418973.66400184925 - 385695.1793354731) / 418973.66400184925 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

Improvements in System.Text.Json.Tests.Perf_Depth

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
ReadSpanEmptyLoop - Duration of single invocation 3.30 μs 3.10 μs 0.94 0.03 False
ReadSpanEmptyLoop - Duration of single invocation 28.91 μs 26.86 μs 0.93 0.03 False
ReadSpanEmptyLoop - Duration of single invocation 3.37 μs 3.16 μs 0.94 0.01 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Tests.Perf_Depth.ReadSpanEmptyLoop(Depth: 64)


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.098574825020628 < 3.15393131402702.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 69.63096165955105 (T) = (0 -3096.279829025807) / Math.Sqrt((3356.6133811496884 / (299)) + (20.230594383052168 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.07220379601954059 = (3337.241320606889 - 3096.279829025807) / 3337.241320606889 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Depth.ReadSpanEmptyLoop(Depth: 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 26.85559380378658 < 27.122511531380347.
IsChangePoint: Marked as a change because one of 12/21/2022 10:31:08 AM, 1/13/2023 9:23:19 AM, 1/27/2023 7:12:54 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 59.8974041833451 (T) = (0 -26920.92511739818) / Math.Sqrt((484156.3111512949 / (299)) + (2237.021682672603 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.08407573986641519 = (29392.0865394174 - 26920.92511739818) / 29392.0865394174 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Tests.Perf_Depth.ReadSpanEmptyLoop(Depth: 65)

```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 3.157351103312462 < 3.18698456475041.
IsChangePoint: Marked as a change because one of 11/23/2022 11:56:05 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 75.28742112287142 (T) = (0 -3155.4476568310038) / Math.Sqrt((2095.000756549359 / (299)) + (92.98457818473659 / (27))) is greater than 1.9673127716992511 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (299) + (27) - 2, .975) and 0.07160817856649732 = (3398.831812153159 - 3155.4476568310038) / 3398.831812153159 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
DeserializeFromReader - Duration of single invocation 50.64 μs 43.50 μs 0.86 0.15 False
DeserializeFromStream - Duration of single invocation 37.77 μs 33.74 μs 0.89 0.14 False
DeserializeFromReader - Duration of single invocation 51.13 μs 44.74 μs 0.88 0.24 False
DeserializeFromUtf8Bytes - Duration of single invocation 38.49 μs 32.53 μs 0.85 0.22 False
DeserializeFromUtf8Bytes - Duration of single invocation 35.96 μs 31.31 μs 0.87 0.09 False
DeserializeFromString - Duration of single invocation 37.34 μs 33.43 μs 0.90 0.09 False
DeserializeFromStream - Duration of single invocation 39.78 μs 34.14 μs 0.86 0.16 False

graph
graph
graph
graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromReader(Mode: SourceGen)


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 43.49734259259259 < 48.344957168253856.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 37.41605407830254 (T) = (0 -44072.9483365925) / Math.Sqrt((1762182.1255011223 / (254)) + (803814.1545450243 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.1399003157596604 = (51241.67482460916 - 44072.9483365925) / 51241.67482460916 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;IndexViewModel&gt;.DeserializeFromStream(Mode: SourceGen)

```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 33.73946766702394 < 37.382001612846445.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 31.588101066812147 (T) = (0 -34369.45376652824) / Math.Sqrt((990599.7667449636 / (255)) + (712082.8123004395 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.13783579311225574 = (39864.16217694273 - 34369.45376652824) / 39864.16217694273 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;IndexViewModel&gt;.DeserializeFromReader(Mode: Reflection)

```log

Description of detection logic

IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small.
IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small.
IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline.
IsImprovementWindowed:Marked as improvement because 44.743774913474155 < 48.087167118548095.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 12.542516946640957 (T) = (0 -45573.52215336262) / Math.Sqrt((2338503.9977613357 / (254)) + (5539742.69813612 / (27))) is greater than 1.9685031265482282 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (254) + (27) - 2, .975) and 0.11302580641798655 = (51380.888511891855 - 45573.52215336262) / 51380.888511891855 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;IndexViewModel&gt;.DeserializeFromUtf8Bytes(Mode: Reflection)

```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 32.52940494757819 < 36.038606165870924.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 25.021851716440082 (T) = (0 -32280.51134546839) / Math.Sqrt((1614617.298696569 / (255)) + (628027.0532352385 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.11765378774249022 = (36584.85852495214 - 32280.51134546839) / 36584.85852495214 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;IndexViewModel&gt;.DeserializeFromUtf8Bytes(Mode: SourceGen)

```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 31.308216534128565 < 34.01050505042313.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 40.508140192588044 (T) = (0 -31861.457802788613) / Math.Sqrt((731765.2043481716 / (255)) + (248537.44274355963 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.12258093877803515 = (36312.70302974244 - 31861.457802788613) / 36312.70302974244 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;IndexViewModel&gt;.DeserializeFromString(Mode: SourceGen)

```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 33.43287252023842 < 35.385804804857926.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 40.28173034290144 (T) = (0 -33441.17994540368) / Math.Sqrt((796511.6447583694 / (255)) + (236078.27247639233 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.11599886723309329 = (37829.340603595636 - 33441.17994540368) / 37829.340603595636 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;IndexViewModel&gt;.DeserializeFromStream(Mode: Reflection)

```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.135873022516115 < 37.75100377953214.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 31.40129042921942 (T) = (0 -34753.55064587448) / Math.Sqrt((1291862.242331795 / (255)) + (616565.0729217399 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.1311346461554551 = (39998.775980763174 - 34753.55064587448) / 39998.775980763174 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
DeserializeFromUtf8Bytes - Duration of single invocation 171.03 ns 148.07 ns 0.87 0.15 False
DeserializeFromString - Duration of single invocation 227.80 ns 209.15 ns 0.92 0.04 False
DeserializeFromString - Duration of single invocation 227.65 ns 208.86 ns 0.92 0.05 False
DeserializeFromUtf8Bytes - Duration of single invocation 167.55 ns 147.96 ns 0.88 0.16 False

graph
graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Serialization.Tests.ReadJson<Nullable<DateTimeOffset>>.DeserializeFromUtf8Bytes(Mode: Reflection)


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 148.0699327126629 < 157.93320896599607.
IsChangePoint: Marked as a change because one of 1/9/2023 11:38:05 PM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 40.83006422304934 (T) = (0 -148.79577157884444) / Math.Sqrt((42.82863564817257 / (255)) + (4.907263346786025 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.13961547578366498 = (172.94101345485294 - 148.79577157884444) / 172.94101345485294 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;Nullable&lt;DateTimeOffset&gt;&gt;.DeserializeFromString(Mode: SourceGen)

```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 209.14537881278224 < 216.48671185515585.
IsChangePoint: Marked as a change because one of 1/23/2023 10:26:24 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 60.34948275980032 (T) = (0 -209.84912785541252) / Math.Sqrt((17.695120701657864 / (255)) + (3.020491005787417 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.10908316550213282 = (235.54289214176353 - 209.84912785541252) / 235.54289214176353 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;Nullable&lt;DateTimeOffset&gt;&gt;.DeserializeFromString(Mode: Reflection)

```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 208.86262916292446 < 219.64781893087337.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 57.27196035964003 (T) = (0 -209.90758061043277) / Math.Sqrt((23.99194037270818 / (255)) + (2.86904805871356 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.10883387759394315 = (235.5425945094321 - 209.90758061043277) / 235.5425945094321 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### System.Text.Json.Serialization.Tests.ReadJson&lt;Nullable&lt;DateTimeOffset&gt;&gt;.DeserializeFromUtf8Bytes(Mode: SourceGen)

```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 147.95614418027495 < 157.9696117209005.
IsChangePoint: Marked as a change because one of 1/11/2023 12:41:22 AM, 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 37.84216749475186 (T) = (0 -149.47875088293222) / Math.Sqrt((44.904182650522664 / (255)) + (5.739836101592674 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.13631639002366266 = (173.0711908346015 - 149.47875088293222) / 173.0711908346015 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.19041
Baseline 1b788f4dc3e3a8829488e52c032ad6a70671e070
Compare 765e3dbb2d3aa2b114d8c07e44ae2ca926df16b4
Diff Diff

Improvements in MicroBenchmarks.Serializers.Json_FromStream<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
SystemTextJson_SourceGen_ - Duration of single invocation 457.45 μs 411.92 μs 0.90 0.22 False
SystemTextJson_Reflection_ - Duration of single invocation 460.48 μs 384.86 μs 0.84 0.30 False

graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

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

Payloads

Baseline
Compare

Histogram

MicroBenchmarks.Serializers.Json_FromStream<MyEventsListerViewModel>.SystemTextJson_SourceGen_


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 411.92012714558166 < 432.4897682317682.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 22.50825353106078 (T) = (0 -397349.8983740731) / Math.Sqrt((204446896.46590677 / (255)) + (141666414.8854314 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.12227968560432226 = (452706.7356845373 - 397349.8983740731) / 452706.7356845373 is greater than 0.05.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

```#### MicroBenchmarks.Serializers.Json_FromStream&lt;MyEventsListerViewModel&gt;.SystemTextJson_Reflection_

```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 384.86017960534093 < 438.35987913846026.
IsChangePoint: Marked as a change because one of 2/8/2023 10:48:55 AM, 2/16/2023 5:39:51 AM falls between 2/7/2023 3:56:56 PM and 2/16/2023 5:39:51 AM.
IsImprovementStdDev: Marked as improvement because 21.72567191082382 (T) = (0 -403574.0577511561) / Math.Sqrt((209840935.57618457 / (255)) + (156070052.9509803 / (27))) is greater than 1.9684724997369398 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (255) + (27) - 2, .975) and 0.12152341246735612 = (459402.1781327888 - 403574.0577511561) / 459402.1781327888 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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants