Skip to content

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

@performanceautofiler

Description

@performanceautofiler

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;*'
Details

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions