Skip to content

[Perf] Regressions in System.Text.Json.Tests.Perf_Get.GetDateTime #69447

@performanceautofiler

Description

@performanceautofiler

Run Information

Architecture x64
OS Windows 10.0.19042
Baseline 951df04d97405ff6dd13e708873549fb9acf9a6c
Compare 52a0d959c0c1c248fd5d76ec747e1490f3ca7a35
Diff Diff

Regressions in System.Text.Json.Tests.Perf_Get

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio Baseline ETL Compare ETL
GetDateTime - Duration of single invocation 3.91 μs 4.88 μs 1.25 0.01 False
GetDateTimeOffset - Duration of single invocation 5.52 μs 6.23 μs 1.13 0.26 False
GetBoolean - Duration of single invocation 104.52 ns 136.31 ns 1.30 0.11 False

graph
graph
graph
Test Report

Repro

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

Payloads

Baseline
Compare

Histogram

System.Text.Json.Tests.Perf_Get.GetDateTime


Description of detection logic

IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsRegressionBase: Marked as regression because the compare was 5% greater than the baseline, and the value was not too small.
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsRegressionWindowed: Marked as regression because 4.875268583724568 > 4.101334905479582.
IsChangePoint: Marked as a change because one of 3/11/2022 8:42:43 PM, 5/13/2022 2:49:07 PM, 5/17/2022 3:30:02 AM falls between 5/8/2022 12:35:08 PM and 5/17/2022 3:30:02 AM.
IsRegressionStdDev: Marked as regression because -116.6962067904816 (T) = (0 -4892.144867248383) / Math.Sqrt((3272.478840762965 / (51)) + (226.69568038918996 / (17))) is less than -1.9965644189515832 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (51) + (17) - 2, .025) and -0.26581705655537713 = (3864.8119346418057 - 4892.144867248383) / 3864.8119346418057 is less than -0.05.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

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

```log

Description of detection logic

IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsRegressionBase: Marked as regression because the compare was 5% greater than the baseline, and the value was not too small.
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsRegressionWindowed: Marked as regression because 6.227565836107001 > 5.79401804608676.
IsChangePoint: Marked as a change because one of 3/17/2022 6:54:53 PM, 3/23/2022 10:40:09 PM, 4/25/2022 9:17:08 AM, 5/12/2022 12:55:03 PM, 5/12/2022 8:19:09 PM, 5/17/2022 3:30:02 AM falls between 5/8/2022 12:35:08 PM and 5/17/2022 3:30:02 AM.
IsRegressionStdDev: Marked as regression because -2.5200576087352444 (T) = (0 -6215.811607268174) / Math.Sqrt((1028059.6226255816 / (45)) + (88165.87994538841 / (23))) is less than -1.9965644189515832 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (45) + (23) - 2, .025) and -0.07091759707892689 = (5804.19224058195 - 6215.811607268174) / 5804.19224058195 is less than -0.05.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.

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

```log

Description of detection logic

IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsRegressionBase: Marked as regression because the compare was 5% greater than the baseline, and the value was not too small.
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsRegressionWindowed: Marked as regression because 136.30882247045378 > 108.90090302360503.
IsChangePoint: Marked as a change because one of 3/11/2022 8:42:43 PM, 3/23/2022 6:35:24 PM, 3/29/2022 11:07:04 AM, 5/11/2022 7:02:26 PM, 5/17/2022 3:30:02 AM falls between 5/8/2022 12:35:08 PM and 5/17/2022 3:30:02 AM.
IsRegressionStdDev: Marked as regression because -55.830302578929235 (T) = (0 -139.0812628311733) / Math.Sqrt((6.665891488651209 / (37)) + (4.902545509508723 / (31))) is less than -1.9965644189515832 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (37) + (31) - 2, .025) and -0.3046032856950949 = (106.6080887241293 - 139.0812628311733) / 106.6080887241293 is less than -0.05.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
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

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions