dotnet / perf-autofiling-issues

A landing place for auto-filed performance issues before they receive triage
MIT License
9 stars 4 forks source link

[Perf] Linux/x64: 402 Regressions on 9/26/2023 5:24:05 PM #22756

Closed performanceautofiler[bot] closed 1 year ago

performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.Perf_Frozen<Int16>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.64 μs 2.35 μs 1.43 0.19 True
7.58 μs 12.20 μs 1.61 0.27 True
59.47 μs 98.13 μs 1.65 0.30 True
59.36 μs 103.10 μs 1.74 0.41 True
7.11 μs 11.60 μs 1.63 0.33 True
1.66 μs 2.34 μs 1.41 0.20 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Perf_Frozen&lt;Int16&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.Perf_Frozen<Int16>.Contains_True(Count: 4) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.3493203425378075 > 1.7007184467355236. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.24486126150867 (T) = (0 -2282.594717444139) / Math.Sqrt((5438.3345746590785 / (18)) + (6798.0651640843535 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.4125582273535473 = (1615.9296468228572 - 2282.594717444139) / 1615.9296468228572 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.TryGetValue_True(Count: 64) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 12.203208461231506 > 7.981245556121381. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -41.498690742786486 (T) = (0 -12087.247350630007) / Math.Sqrt((161566.40551421803 / (18)) + (92140.96162061863 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.5813652700384396 = (7643.551796439915 - 12087.247350630007) / 7643.551796439915 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.Contains_True(Count: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 98.13121154059449 > 61.31786210715122. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -53.95428485794735 (T) = (0 -92364.46035068548) / Math.Sqrt((4865176.130701415 / (17)) + (6025600.372599223 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.643220397659275 = (56209.41687570107 - 92364.46035068548) / 56209.41687570107 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.TryGetValue_True(Count: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 103.09787551742922 > 62.22808219149061. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -46.452728231217364 (T) = (0 -98343.30299788773) / Math.Sqrt((6969214.712478871 / (18)) + (9858691.950885026 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.6294792615166696 = (60352.595654609795 - 98343.30299788773) / 60352.595654609795 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.Contains_True(Count: 64) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 11.601865902916787 > 7.5338447842918885. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -50.881446463301835 (T) = (0 -11491.128697651797) / Math.Sqrt((107088.96937018397 / (18)) + (80206.65331201213 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.6637033876377016 = (6906.957564093255 - 11491.128697651797) / 6906.957564093255 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.TryGetValue_True(Count: 4) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.339822298520978 > 1.7464608232512333. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -46.99020872320251 (T) = (0 -2354.3954176444195) / Math.Sqrt((2019.5414736051666 / (16)) + (3356.107586249457 / (36))) is less than -2.0085591120996775 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (36) - 2, .025) and -0.4197685587235479 = (1658.2952222587278 - 2354.3954176444195) / 1658.2952222587278 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_FromStream<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
222.73 μs 235.62 μs 1.06 0.08 False
98.02 μs 105.17 μs 1.07 0.05 True
107.90 μs 121.72 μs 1.13 0.07 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromStream&lt;IndexViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_FromStream<IndexViewModel>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 235.61958881222947 > 233.52465625000005. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -13.625731121965895 (T) = (0 -243583.39275106913) / Math.Sqrt((45766602.68626377 / (18)) + (19460003.95335277 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1086340302678176 = (219714.87984382513 - 243583.39275106913) / 219714.87984382513 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. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromStream<IndexViewModel>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 105.16501630313199 > 100.11762863944415. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.962368146126412 (T) = (0 -108206.09234742609) / Math.Sqrt((6549939.397459662 / (18)) + (3163185.913749411 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.1579700371134744 = (93444.63922154362 - 108206.09234742609) / 93444.63922154362 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromStream<IndexViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 121.72111681189904 > 113.73166501728471. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -24.50307068033735 (T) = (0 -126243.23093863684) / Math.Sqrt((10055791.16477474 / (18)) + (4893927.710956975 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.19237055583424012 = (105875.83727301197 - 126243.23093863684) / 105875.83727301197 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
112.67 μs 141.78 μs 1.26 0.11 True
104.43 μs 139.41 μs 1.34 0.11 True
131.31 μs 170.78 μs 1.30 0.12 True
126.01 μs 162.93 μs 1.29 0.08 True
126.45 μs 168.07 μs 1.33 0.08 True
122.48 μs 172.91 μs 1.41 0.07 True
108.56 μs 142.67 μs 1.31 0.11 True
102.52 μs 135.45 μs 1.32 0.11 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;ImmutableDictionary&lt;String, String&gt;&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 141.78169655032468 > 117.85333020833335. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -39.25093520721597 (T) = (0 -145016.6965201917) / Math.Sqrt((5427706.631879741 / (17)) + (16491937.57787676 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.3101624876071134 = (110686.03924468243 - 145016.6965201917) / 110686.03924468243 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 139.41167479372936 > 109.57156667994967. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -47.098674516776335 (T) = (0 -139149.926475512) / Math.Sqrt((7443392.263723057 / (17)) + (6232629.127957172 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.3578710849788407 = (102476.53699591102 - 139149.926475512) / 102476.53699591102 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 170.777359927692 > 138.15783860728317. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -35.80441597030934 (T) = (0 -170100.11471640095) / Math.Sqrt((21498216.53506057 / (18)) + (5991974.330448829 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3247431989561038 = (128402.33099550135 - 170100.11471640095) / 128402.33099550135 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 162.92624637276788 > 129.33566213336613. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.70978907221714 (T) = (0 -164396.76575851152) / Math.Sqrt((9923442.184908444 / (18)) + (12651859.425415657 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3459608468320132 = (122140.82314909236 - 164396.76575851152) / 122140.82314909236 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 168.07296099290778 > 138.1145981098112. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -40.027481574430816 (T) = (0 -168848.13641387763) / Math.Sqrt((14799631.564331008 / (18)) + (7615491.084561419 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.316414777696527 = (128263.62881563016 - 168848.13641387763) / 128263.62881563016 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 172.90514588133638 > 129.8643420386905. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -37.229538620794635 (T) = (0 -166600.00636989746) / Math.Sqrt((18482624.42150698 / (18)) + (10477222.417188045 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3436658290121515 = (123989.16663109604 - 166600.00636989746) / 123989.16663109604 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 142.6729816602317 > 115.60767996258802. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -50.82337001309199 (T) = (0 -143774.90188320677) / Math.Sqrt((5479742.051770344 / (18)) + (6097216.6450558165 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.32156147661124734 = (108791.68652212448 - 143774.90188320677) / 108791.68652212448 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 135.44596284937887 > 109.05377961534403. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -40.31641393418634 (T) = (0 -136680.41579112105) / Math.Sqrt((9762726.174932752 / (18)) + (6929938.687925373 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.3384386100212436 = (102119.30137681225 - 136680.41579112105) / 102119.30137681225 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Node.Tests.Perf_ParseThenWrite

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
32.11 μs 35.42 μs 1.10 0.04 True
145.72 μs 156.94 μs 1.08 0.04 True
30.92 μs 34.92 μs 1.13 0.05 True
46.59 μs 49.31 μs 1.06 0.01 True
187.83 μs 199.20 μs 1.06 0.04 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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Node.Tests.Perf_ParseThenWrite*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Node.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: True, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 35.41913821022727 > 33.972425235744126. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.49461164312576 (T) = (0 -36105.29896134024) / Math.Sqrt((541265.6765528983 / (17)) + (214346.93684650803 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.13056768692646223 = (31935.548290341954 - 36105.29896134024) / 31935.548290341954 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Node.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: Json4KB) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 156.93713634293007 > 151.88982080400606. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -16.688402649165436 (T) = (0 -154245.78455410292) / Math.Sqrt((5097749.055885411 / (18)) + (3900426.8815997955 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.07232588345755422 = (143842.26561496445 - 154245.78455410292) / 143842.26561496445 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Node.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 34.92364441279767 > 32.75577964576757. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -20.325357727016737 (T) = (0 -35087.242395587804) / Math.Sqrt((533950.9214945036 / (18)) + (286283.2774674468 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.12700151187925 = (31133.27003180378 - 35087.242395587804) / 31133.27003180378 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Node.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: LotsOfNumbers) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 49.314044395633644 > 48.66003694407973. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -16.041377584366767 (T) = (0 -49719.62034974415) / Math.Sqrt((1110283.6986066632 / (18)) + (472815.4789411596 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.0965390563271252 = (45342.315955695005 - 49719.62034974415) / 45342.315955695005 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Node.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: BroadTree) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 199.20400432900433 > 196.06991481991994. IsChangePoint: Marked as a change because one of 8/24/2023 4:35:49 AM, 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.345160171206409 (T) = (0 -198365.1869396823) / Math.Sqrt((16216188.377454022 / (18)) + (5409519.478473955 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.08008139421079646 = (183657.62802962228 - 198365.1869396823) / 183657.62802962228 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. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.TryGetValueFalse<Int32, Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
171.19 μs 240.12 μs 1.40 0.13 True
465.67 μs 645.70 μs 1.39 0.16 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.TryGetValueFalse&lt;Int32, Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.TryGetValueFalse<Int32, Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 240.1175649358974 > 176.37059169795262. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -54.628193816697014 (T) = (0 -243553.87411483543) / Math.Sqrt((20853352.93885204 / (18)) + (28593448.0209641 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.452872449077161 = (167636.1020332766 - 243553.87411483543) / 167636.1020332766 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.TryGetValueFalse<Int32, Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 645.7030773076923 > 489.714825386865. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -46.07705772164225 (T) = (0 -654946.675671205) / Math.Sqrt((159959514.06456608 / (18)) + (280803224.82076114 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.4032826814986106 = (466724.69083119195 - 654946.675671205) / 466724.69083119195 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Linq.Tests.Perf_Enumerable

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
20.93 μs 29.71 μs 1.42 0.27 True
19.05 μs 29.63 μs 1.56 0.19 True
22.55 μs 31.26 μs 1.39 0.23 True
16.82 μs 21.68 μs 1.29 0.22 True
22.40 μs 31.79 μs 1.42 0.13 True
828.34 ns 994.44 ns 1.20 0.15 True
26.73 μs 35.50 μs 1.33 0.22 True
37.84 μs 50.31 μs 1.33 0.13 True
26.59 μs 37.20 μs 1.40 0.20 True
86.94 μs 141.72 μs 1.63 0.11 True
7.95 μs 11.17 μs 1.41 0.32 True
15.99 μs 20.77 μs 1.30 0.30 True
26.56 μs 36.18 μs 1.36 0.19 True
96.02 μs 141.24 μs 1.47 0.14 True
47.97 μs 67.84 μs 1.41 0.09 True
17.48 μs 22.23 μs 1.27 0.23 True
25.34 μs 40.04 μs 1.58 0.20 True
31.12 μs 45.23 μs 1.45 0.33 True
41.26 μs 56.69 μs 1.37 0.15 True
26.22 μs 44.06 μs 1.68 0.25 True
128.02 μs 203.09 μs 1.59 0.08 True
26.85 μs 36.68 μs 1.37 0.21 True
22.19 μs 30.45 μs 1.37 0.21 True
23.48 μs 27.95 μs 1.19 0.24 True
44.08 μs 63.39 μs 1.44 0.13 True
19.95 μs 28.73 μs 1.44 0.13 True
35.01 μs 47.98 μs 1.37 0.09 True
26.20 μs 43.85 μs 1.67 0.32 True
27.15 μs 36.86 μs 1.36 0.17 True
26.49 μs 35.65 μs 1.35 0.16 True
27.14 μs 36.18 μs 1.33 0.21 True
20.47 μs 28.51 μs 1.39 0.20 True
14.88 μs 17.20 μs 1.16 0.33 True
9.78 μs 11.14 μs 1.14 0.38 True
15.72 μs 18.85 μs 1.20 0.38 False
15.30 μs 19.75 μs 1.29 0.31 True
26.13 μs 35.36 μs 1.35 0.20 True
26.59 μs 36.20 μs 1.36 0.15 True
30.74 μs 40.04 μs 1.30 0.17 True
95.46 μs 160.01 μs 1.68 0.14 True
8.13 μs 11.17 μs 1.37 0.30 True
14.74 μs 17.63 μs 1.20 0.23 True
28.76 μs 40.90 μs 1.42 0.17 True
14.96 μs 17.32 μs 1.16 0.24 True
82.87 μs 140.58 μs 1.70 0.08 True
8.24 μs 11.08 μs 1.34 0.26 True
15.87 μs 22.41 μs 1.41 0.27 True
39.16 μs 54.06 μs 1.38 0.11 True
24.87 μs 30.90 μs 1.24 0.12 True
7.95 μs 11.15 μs 1.40 0.21 True
20.39 μs 31.38 μs 1.54 0.17 True

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 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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Linq.Tests.Perf_Enumerable*'
### Payloads [Baseline]() [Compare]() ### System.Linq.Tests.Perf_Enumerable.Where(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 29.707589277227058 > 21.87580020660556. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -35.784047861314036 (T) = (0 -29317.77498997277) / Math.Sqrt((1020307.4551931157 / (18)) + (408087.36361391324 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.46543883687763665 = (20006.14031250817 - 29317.77498997277) / 20006.14031250817 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Select(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 29.628609478021975 > 20.608725721201097. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -46.20309171596036 (T) = (0 -29243.605249033786) / Math.Sqrt((533926.9520614939 / (18)) + (476509.78522664733 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.48339485411991695 = (19713.972424681033 - 29243.605249033786) / 19713.972424681033 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 31.260811689121763 > 21.967800020330746. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -37.95472162680069 (T) = (0 -29997.543192540314) / Math.Sqrt((968090.0157214354 / (17)) + (302506.47111122956 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.4768494527119557 = (20311.849076732553 - 29997.543192540314) / 20311.849076732553 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToList(input: Array) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 21.675995370370373 > 16.72003510101192. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -34.009585888317545 (T) = (0 -21368.608247555785) / Math.Sqrt((503891.83947454457 / (18)) + (152739.6061130222 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3990923152588286 = (15273.193923306373 - 21368.608247555785) / 15273.193923306373 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.TakeLastHalf(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 31.78625761494252 > 22.612247233438286. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -48.477092371619705 (T) = (0 -30766.507249175633) / Math.Sqrt((361976.5341449006 / (18)) + (638730.5694910997 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.43803036539997015 = (21394.894008805102 - 30766.507249175633) / 21394.894008805102 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.EmptyTakeSelectToArray #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 994.4373554944815 > 854.5463502878405. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.786732195020694 (T) = (0 -971.0470052877141) / Math.Sqrt((909.9776155003026 / (18)) + (466.25446909605176 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2169934643560987 = (797.9065079051079 - 971.0470052877141) / 797.9065079051079 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Select(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 35.501894945426194 > 27.661635544087122. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.64498526262075 (T) = (0 -36722.942052373335) / Math.Sqrt((729719.8533332602 / (18)) + (1368756.637247685 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.41447104408789737 = (25962.31446791732 - 36722.942052373335) / 25962.31446791732 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.GroupBy(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 50.3098045260557 > 40.362385100496034. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -50.92614564159417 (T) = (0 -49338.67695933118) / Math.Sqrt((470520.0035751238 / (18)) + (846613.0665255595 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2962294215755633 = (38063.22872949462 - 49338.67695933118) / 38063.22872949462 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Where(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 37.19659439890711 > 28.513397817713162. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -41.21156150479446 (T) = (0 -36589.32440421323) / Math.Sqrt((834827.8567211726 / (18)) + (503831.4851637061 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.38099509514384655 = (26494.898159216147 - 36589.32440421323) / 26494.898159216147 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.FirstWithPredicate_LastElementMatches(input: IOrderedEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 141.72316126126128 > 89.63331459997099. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -90.05320027858299 (T) = (0 -140594.94377281217) / Math.Sqrt((5950588.21383697 / (18)) + (2979372.3760821316 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.6968869610120696 = (82854.6314534455 - 140594.94377281217) / 82854.6314534455 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereFirst_LastElementMatches(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 11.169477217788572 > 8.332988564591295. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -18.04368893702244 (T) = (0 -10766.793150329835) / Math.Sqrt((313476.54248740803 / (17)) + (140650.27251012644 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.33320812759152546 = (8075.853220142246 - 10766.793150329835) / 8075.853220142246 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Select(input: Array) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 20.77192261309524 > 16.045514885812057. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.53019575405527 (T) = (0 -21420.95089440353) / Math.Sqrt((502406.8417055464 / (17)) + (385156.4517900396 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.4169328433701322 = (15117.830738861583 - 21420.95089440353) / 15117.830738861583 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Select(input: IList) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 36.17880681725098 > 28.118718107374253. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -37.390510873205656 (T) = (0 -36215.68117835068) / Math.Sqrt((787737.8579267377 / (18)) + (1014555.0527385958 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.38018150158334457 = (26239.796096965536 - 36215.68117835068) / 26239.796096965536 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.OrderByThenBy(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 141.24354630681816 > 95.65792723640341. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -67.46565347594623 (T) = (0 -144045.64721207359) / Math.Sqrt((8986979.509677932 / (18)) + (5724789.213179327 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.6129270099767237 = (89306.98433412205 - 144045.64721207359) / 89306.98433412205 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Zip(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 67.84376965082907 > 48.989625542766284. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -53.89073068037729 (T) = (0 -66554.05060237192) / Math.Sqrt((1647069.2867269581 / (18)) + (1665156.4725561382 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.43261421259088245 = (46456.36628301274 - 66554.05060237192) / 46456.36628301274 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: Array) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 22.228030373772 > 17.977080536759257. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -24.748955285505136 (T) = (0 -22472.846209872074) / Math.Sqrt((958279.2106745391 / (18)) + (323908.02863963274 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.37988815853766644 = (16285.991057193813 - 22472.846209872074) / 16285.991057193813 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSelect(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 40.041980367965365 > 26.40526611638097. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -60.13218383908322 (T) = (0 -38238.72781363979) / Math.Sqrt((776595.1227749987 / (18)) + (355445.4111669266 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.5653747659012328 = (24427.8422308824 - 38238.72781363979) / 24427.8422308824 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSelect(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 45.233079009205426 > 33.20766292601561. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -43.0915046458621 (T) = (0 -45662.36839606291) / Math.Sqrt((1219279.2312136244 / (18)) + (1773885.8989791526 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.4766938191033244 = (30922.02852436258 - 45662.36839606291) / 30922.02852436258 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Append(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 56.689560530303034 > 43.66742646885162. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -36.28017043270838 (T) = (0 -56930.82321695692) / Math.Sqrt((2700213.492563997 / (17)) + (1339819.188586411 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.3916799329918173 = (40907.98600118326 - 56930.82321695692) / 40907.98600118326 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Take_All(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 44.062161429073036 > 27.937801542875263. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -56.96489317003897 (T) = (0 -43317.27967684567) / Math.Sqrt((944927.6709212338 / (18)) + (1316690.9661729014 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.6460267682355662 = (26316.26685104215 - 43317.27967684567) / 26316.26685104215 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.OrderByDescending(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 203.0872249000999 > 131.92386494971677. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -91.44460802004787 (T) = (0 -203687.8549520827) / Math.Sqrt((8317455.6478813905 / (18)) + (11238833.843539247 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.6471211357122103 = (123662.9477552109 - 203687.8549520827) / 123662.9477552109 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: IList) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 36.67541959406714 > 28.901802768939543. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.105109012872195 (T) = (0 -37127.574059300394) / Math.Sqrt((1947795.2079916317 / (18)) + (983366.7667192635 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3661731191109663 = (27176.33185716688 - 37127.574059300394) / 27176.33185716688 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.LastWithPredicate_FirstElementMatches(input: IOrderedEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 30.44507562568946 > 22.351096372695665. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -53.99993438347514 (T) = (0 -31708.149336053455) / Math.Sqrt((429409.09210540104 / (17)) + (552160.7813719301 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.518332363832551 = (20883.536497908954 - 31708.149336053455) / 20883.536497908954 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Except(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 27.95406193147815 > 25.172776895469696. IsChangePoint: Marked as a change because one of 9/19/2023 8:08:41 AM, 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -15.794958997234735 (T) = (0 -27583.460174909083) / Math.Sqrt((568317.6867523817 / (17)) + (710712.9323509276 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.15124898197503261 = (23959.595714550036 - 27583.460174909083) / 23959.595714550036 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Intersect(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 63.389107214285715 > 46.07905778370189. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -55.2101327180824 (T) = (0 -63844.129589300086) / Math.Sqrt((1368983.8412119674 / (18)) + (2254332.3028485253 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.47071649913264607 = (43410.22190677273 - 63844.129589300086) / 43410.22190677273 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SkipHalfTakeHalf(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 28.72911080628087 > 21.658340294725477. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -35.76054332569584 (T) = (0 -29112.40346882939) / Math.Sqrt((805706.4317972418 / (18)) + (522738.1511003732 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.4246808323799754 = (20434.333646642932 - 29112.40346882939) / 20434.333646642932 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Prepend(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 47.98146213523519 > 36.797605516608705. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -54.92459978096598 (T) = (0 -47740.523657053185) / Math.Sqrt((564112.8670560883 / (18)) + (979265.0019336045 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3823791500167688 = (34535.043194534635 - 47740.523657053185) / 34535.043194534635 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Skip_One(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 43.84563105688203 > 28.122889138685256. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -51.02044176061751 (T) = (0 -43230.625360510894) / Math.Sqrt((1111631.4810384314 / (18)) + (1724193.715186586 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.6353000817845686 = (26435.897510219787 - 43230.625360510894) / 26435.897510219787 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 36.86368765835313 > 29.18317170698187. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -35.12994003808436 (T) = (0 -36975.664628338185) / Math.Sqrt((1135998.8459235197 / (18)) + (620101.291520696 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3670660652112314 = (27047.459935760246 - 36975.664628338185) / 27047.459935760246 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToList(input: IList) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 35.646714522300854 > 28.113777024351524. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.82473101145279 (T) = (0 -36006.05219464954) / Math.Sqrt((998400.5580821399 / (18)) + (253229.68251418427 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.36829306373876886 = (26314.57627671182 - 36006.05219464954) / 26314.57627671182 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: Range) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 36.18207241257873 > 28.35690846315266. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -42.921731194891564 (T) = (0 -36531.39128280904) / Math.Sqrt((758311.915883526 / (18)) + (442027.2540504437 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3759289618068034 = (26550.3469269502 - 36531.39128280904) / 26550.3469269502 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToList(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 28.505781607793388 > 21.50761831188957. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -43.08219104425811 (T) = (0 -29164.307181223656) / Math.Sqrt((690467.006321209 / (18)) + (428936.06702582206 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.49289167804943057 = (19535.447621577543 - 29164.307181223656) / 19535.447621577543 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereAny_LastElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 17.204378099634738 > 15.163889052399044. IsChangePoint: Marked as a change because one of 9/19/2023 8:08:41 AM, 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -19.6332064102598 (T) = (0 -17335.293538744783) / Math.Sqrt((117455.38951193735 / (18)) + (652664.884772376 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.21367568396015651 = (14283.299705058505 - 17335.293538744783) / 14283.299705058505 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSingle_LastElementMatches(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 11.13988265684866 > 8.756562300378695. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.070457479955916 (T) = (0 -11004.665430550516) / Math.Sqrt((237041.68307446572 / (18)) + (85785.92468138905 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.31281881508592957 = (8382.470836107124 - 11004.665430550516) / 8382.470836107124 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereLast_LastElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 18.846801282429247 > 15.641157007054813. IsChangePoint: Marked as a change because one of 9/19/2023 8:08:41 AM, 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -15.18218876079661 (T) = (0 -17511.227255544767) / Math.Sqrt((378123.1613062715 / (18)) + (493162.51306625124 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.19140290109478886 = (14697.989437035592 - 17511.227255544767) / 14697.989437035592 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. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSingleOrDefault_LastElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 19.74516324387519 > 15.38045015336756. IsChangePoint: Marked as a change because one of 9/19/2023 8:08:41 AM, 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.189774394607968 (T) = (0 -17658.972867690885) / Math.Sqrt((458237.724536422 / (18)) + (612493.7435821758 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.197175066704948 = (14750.535121228899 - 17658.972867690885) / 14750.535121228899 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToList(input: Range) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 35.36209525504393 > 27.501401029284406. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -40.6476313178202 (T) = (0 -35436.38893543846) / Math.Sqrt((674788.2151629127 / (18)) + (726273.6154195721 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.38015461084528235 = (25675.6660862331 - 35436.38893543846) / 25675.6660862331 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToList(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 36.20086039249807 > 27.930426621284994. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -33.00609182582018 (T) = (0 -36184.013808651805) / Math.Sqrt((715781.6808913075 / (17)) + (1882682.1629737364 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.38534411319360534 = (26119.1522482003 - 36184.013808651805) / 26119.1522482003 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Distinct(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 40.03932542955326 > 32.11684830532963. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -46.25568763677927 (T) = (0 -40577.05169419048) / Math.Sqrt((642005.3669329771 / (18)) + (654798.2260119773 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.35747039416099496 = (29891.666049387204 - 40577.05169419048) / 29891.666049387204 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.OrderBy(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 160.00914111394556 > 101.64510052027792. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -60.79425661311014 (T) = (0 -158166.75300521232) / Math.Sqrt((9056294.116241708 / (18)) + (20755755.207028285 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.6569860880900585 = (95454.48458624344 - 158166.75300521232) / 95454.48458624344 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereLast_LastElementMatches(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 11.165883037209856 > 8.58007003263275. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -26.801056872992966 (T) = (0 -11043.658261258603) / Math.Sqrt((115351.70130893134 / (18)) + (175020.59670332505 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.34431669886392224 = (8215.071843258038 - 11043.658261258603) / 8215.071843258038 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereFirst_LastElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 17.62668080037665 > 15.521102392748892. IsChangePoint: Marked as a change because one of 9/19/2023 8:08:41 AM, 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -16.980409252383314 (T) = (0 -17240.544983608743) / Math.Sqrt((199849.5742564526 / (18)) + (563155.3102375474 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.19390805752964194 = (14440.42937383451 - 17240.544983608743) / 14440.42937383451 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.TakeLastHalf(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 40.89657935178093 > 30.970812688301365. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -60.885202813388744 (T) = (0 -42059.09954491772) / Math.Sqrt((466602.7718126432 / (18)) + (619410.5477186939 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.42654378076088995 = (29483.216787419056 - 42059.09954491772) / 29483.216787419056 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSingle_LastElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 17.315111669435215 > 15.66342069419717. IsChangePoint: Marked as a change because one of 9/19/2023 5:34:53 AM, 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -18.213452652659534 (T) = (0 -17635.6392704829) / Math.Sqrt((285621.3903268467 / (17)) + (444044.8803141458 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2125229985041979 = (14544.581251026757 - 17635.6392704829) / 14544.581251026757 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.AnyWithPredicate_LastElementMatches(input: IOrderedEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 140.58337057291666 > 86.94310330009655. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -101.66654742012756 (T) = (0 -139373.05781823222) / Math.Sqrt((3160912.3687962107 / (18)) + (5389536.472068363 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.7049147264756161 = (81747.81744442017 - 139373.05781823222) / 81747.81744442017 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSingleOrDefault_LastElementMatches(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 11.08215297450425 > 8.558581903501336. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.528793735832394 (T) = (0 -11085.518679156921) / Math.Sqrt((126368.10803228698 / (18)) + (144029.76720264036 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3502959634174065 = (8209.695488610552 - 11085.518679156921) / 8209.695488610552 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Where(input: Array) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 22.411390472744813 > 16.412424451452562. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.78933151132871 (T) = (0 -21713.055304717105) / Math.Sqrt((562499.6870329594 / (17)) + (263237.4016609979 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.3972721969776788 = (15539.603057788438 - 21713.055304717105) / 15539.603057788438 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.AppendPrepend(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 54.061945658866996 > 41.04824608281251. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.09835016971364 (T) = (0 -54710.76598407619) / Math.Sqrt((2006136.228072385 / (18)) + (842531.6780289952 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.4204441514286542 = (38516.66109438319 - 54710.76598407619) / 38516.66109438319 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Reverse(input: IEnumerable) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 30.904772576361214 > 25.947197656946972. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -36.17054397475111 (T) = (0 -31543.90693381983) / Math.Sqrt((459938.3710787856 / (17)) + (470693.0805120242 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.29650122995882966 = (24330.024688693513 - 31543.90693381983) / 24330.024688693513 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereAny_LastElementMatches(input: List) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 11.145465334164292 > 8.371351738170683. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -34.5291316452065 (T) = (0 -10824.527630626077) / Math.Sqrt((34978.86857248181 / (18)) + (183423.67520245758 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3605175264005045 = (7956.183893686636 - 10824.527630626077) / 7956.183893686636 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSelect(input: Array) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 31.375803544642864 > 21.52721049296284. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.343642980832556 (T) = (0 -29377.90484546615) / Math.Sqrt((447824.9142548292 / (18)) + (738264.7123478533 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.46972227004400235 = (19988.745795208368 - 29377.90484546615) / 19988.745795208368 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_FromString<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.04 μs 2.34 μs 1.15 0.16 True
2.41 μs 2.85 μs 1.18 0.14 True
4.44 μs 4.87 μs 1.10 0.16 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromString&lt;LoginViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_FromString<LoginViewModel>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.3444071008562757 > 2.1707389862513864. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -20.45214001662367 (T) = (0 -2415.27989951384) / Math.Sqrt((5637.273761321177 / (18)) + (2132.154204393062 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.19482781815553882 = (2021.4459881276607 - 2415.27989951384) / 2021.4459881276607 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromString<LoginViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.8503468425314744 > 2.5213104817316836. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -20.402598983463598 (T) = (0 -2935.658818955337) / Math.Sqrt((12235.680754445373 / (18)) + (6490.197216552192 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2550809874808444 = (2339.019432401483 - 2935.658818955337) / 2339.019432401483 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromString<LoginViewModel>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.86681756425676 > 4.621089607797266. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.595416324308411 (T) = (0 -4909.167446020532) / Math.Sqrt((19762.789785245404 / (18)) + (18334.049932190464 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.13466164436138617 = (4326.547451759088 - 4909.167446020532) / 4326.547451759088 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. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_ToStream<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.36 ms 2.96 ms 1.25 0.09 True
3.16 ms 3.70 ms 1.17 0.05 True
1.39 ms 1.53 ms 1.10 0.14 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;MyEventsListerViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_ToStream<MyEventsListerViewModel>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.9574722253968253 > 2.432786509805878. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.936626285029323 (T) = (0 -2858011.447148961) / Math.Sqrt((5308805368.893739 / (18)) + (2457433396.9196815 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2486182825902802 = (2288939.2915342925 - 2858011.447148961) / 2288939.2915342925 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<MyEventsListerViewModel>.DataContractSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.697662047974414 > 3.315584832578671. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -25.606296745876527 (T) = (0 -3721108.4387913547) / Math.Sqrt((9265699259.37572 / (18)) + (3753876052.455507 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.20601226293674452 = (3085464.8440556754 - 3721108.4387913547) / 3085464.8440556754 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<MyEventsListerViewModel>.XmlSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.52801399104021 > 1.4039281253906253. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -19.037659756931312 (T) = (0 -1513255.6913703186) / Math.Sqrt((1735544654.1134546 / (18)) + (561064275.4445008 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.15325949556875212 = (1312155.4144447148 - 1513255.6913703186) / 1312155.4144447148 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Reflection.Attributes

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
635.18 ns 700.24 ns 1.10 0.08 True
874.39 ns 973.62 ns 1.11 0.10 False
2.28 μs 2.62 μs 1.15 0.38 False
873.40 ns 941.65 ns 1.08 0.15 False
2.22 μs 2.39 μs 1.08 0.17 False
444.64 ns 521.07 ns 1.17 0.10 True
627.48 ns 743.89 ns 1.19 0.11 True
1.04 μs 1.12 μs 1.08 0.08 False
2.04 μs 2.42 μs 1.18 0.37 False

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Reflection.Attributes*'
### Payloads [Baseline]() [Compare]() ### System.Reflection.Attributes.IsDefinedClassHit #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 700.2417079470669 > 665.5254621410938. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -18.035365484319662 (T) = (0 -716.8762268787895) / Math.Sqrt((242.06451037126516 / (17)) + (322.562862667932 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.13706395783424577 = (630.4625363767719 - 716.8762268787895) / 630.4625363767719 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Reflection.Attributes.IsDefinedMethodOverrideMiss #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 973.6230493900373 > 935.8955344832588. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -12.73682420668771 (T) = (0 -950.6935475383939) / Math.Sqrt((264.7635386732768 / (18)) + (484.5791258551032 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.0765500166830198 = (883.092780461418 - 950.6935475383939) / 883.092780461418 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. ``` #### JIT Disasms ### System.Reflection.Attributes.GetCustomAttributesClassHit #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.6171644116821113 > 2.474748918101881. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -7.633494120362658 (T) = (0 -2577.894216972105) / Math.Sqrt((6886.574778575155 / (18)) + (10856.197624736464 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.08341120324585573 = (2379.423629042084 - 2577.894216972105) / 2379.423629042084 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. ``` #### JIT Disasms ### System.Reflection.Attributes.IsDefinedMethodOverrideMissInherit #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 941.6539090055628 > 918.4646479991042. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -11.446382902196328 (T) = (0 -946.454822561694) / Math.Sqrt((281.21769036806484 / (18)) + (1013.0122112945111 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.0861385377137942 = (871.3942003695776 - 946.454822561694) / 871.3942003695776 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. ``` #### JIT Disasms ### System.Reflection.Attributes.GetCustomAttributesMethodBaseMissInherit #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.386611086207769 > 2.317744184751095. IsChangePoint: Marked as a change because one of 9/26/2023 5:24:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -9.424260929732096 (T) = (0 -2341.5217487609366) / Math.Sqrt((1767.9807592595894 / (19)) + (3322.3533088838467 / (36))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (19) + (36) - 2, .025) and -0.057970397282016486 = (2213.220478357838 - 2341.5217487609366) / 2213.220478357838 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. ``` #### JIT Disasms ### System.Reflection.Attributes.IsDefinedClassMiss #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 521.0704558135021 > 471.3788034655684. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.307586553736602 (T) = (0 -525.7381347104141) / Math.Sqrt((82.59195444484524 / (18)) + (145.75066645057422 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.18656978459295107 = (443.0739274983029 - 525.7381347104141) / 443.0739274983029 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Reflection.Attributes.IsDefinedClassHitInherit #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 743.8928753836564 > 657.3249158546593. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -18.218434334944586 (T) = (0 -704.3005096786842) / Math.Sqrt((87.20829423332198 / (18)) + (452.3971723592117 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.11966943458105639 = (629.0253961806239 - 704.3005096786842) / 629.0253961806239 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Reflection.Attributes.IsDefinedMethodBaseMiss #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.1232398697539798 > 1.093525278104494. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -12.265863263698712 (T) = (0 -1139.795746121534) / Math.Sqrt((335.4302874774279 / (18)) + (1078.413280863381 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.08109873876284208 = (1054.293845006111 - 1139.795746121534) / 1054.293845006111 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. ``` #### JIT Disasms ### System.Reflection.Attributes.GetCustomAttributesMethodOverrideMiss #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.417138538530166 > 2.2431186657265405. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -8.703861830060188 (T) = (0 -2322.6172763872382) / Math.Sqrt((5502.502244031186 / (18)) + (5513.537518703561 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.08685020522684656 = (2137.016918446883 - 2322.6172763872382) / 2137.016918446883 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. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.79 μs 3.17 μs 1.14 0.14 True
3.67 μs 4.06 μs 1.11 0.10 False
1.60 μs 1.90 μs 1.18 0.10 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToStream&lt;LoginViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.1662965091844493 > 2.871021753072623. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -19.61041241533649 (T) = (0 -3175.958744979654) / Math.Sqrt((8106.463579352159 / (18)) + (5209.090144128191 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.17664648494150012 = (2699.161375676531 - 3175.958744979654) / 2699.161375676531 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>.DataContractJsonSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.058455412439446 > 3.8417510659841634. IsChangePoint: Marked as a change because one of 8/22/2023 4:48:44 PM, 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.64170428014306 (T) = (0 -4058.3452783126654) / Math.Sqrt((14896.514879425293 / (17)) + (6291.315855664037 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.1321182385639141 = (3584.7362405013937 - 4058.3452783126654) / 3584.7362405013937 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. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.900413987062244 > 1.6658158260770484. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -25.769418858909365 (T) = (0 -1889.4289711494719) / Math.Sqrt((1738.0485064163358 / (18)) + (2744.8352146539587 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.21686404218679398 = (1552.703429180165 - 1889.4289711494719) / 1552.703429180165 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.Perf_Frozen<NotKnownComparable>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
17.57 μs 22.72 μs 1.29 0.16 True
1.15 μs 1.40 μs 1.22 0.14 True
134.76 μs 165.77 μs 1.23 0.07 True
145.15 μs 183.60 μs 1.26 0.17 True
229.95 μs 300.65 μs 1.31 0.03 True
1.49 μs 1.79 μs 1.20 0.03 True
26.99 μs 36.50 μs 1.35 0.04 True
18.38 μs 22.28 μs 1.21 0.13 True
158.42 μs 198.31 μs 1.25 0.10 True
1.56 μs 1.87 μs 1.19 0.06 True
16.72 μs 20.66 μs 1.24 0.09 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Perf_Frozen&lt;NotKnownComparable&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.Perf_Frozen<NotKnownComparable>.TryGetValue_True(Count: 64) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 22.716208387602514 > 18.626612315217354. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.709434318670958 (T) = (0 -22636.718421500966) / Math.Sqrt((262319.8734006961 / (18)) + (306951.95721995423 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.2614664292046098 = (17944.764836725823 - 22636.718421500966) / 17944.764836725823 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<NotKnownComparable>.ToFrozenSet(Count: 4) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.3993650525729093 > 1.1857031777698193. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -37.06294830987108 (T) = (0 -1409.1409347628191) / Math.Sqrt((632.1411343430673 / (17)) + (802.6632387566353 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2528496753083329 = (1124.7486131295218 - 1409.1409347628191) / 1124.7486131295218 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<NotKnownComparable>.Contains_True(Count: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 165.76842039473684 > 142.7944369989224. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -39.09293213657183 (T) = (0 -168200.57282647994) / Math.Sqrt((11029639.420510253 / (18)) + (5828267.782330506 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.25716879651564833 = (133793.1495696221 - 168200.57282647994) / 133793.1495696221 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<NotKnownComparable>.TryGetValue_True(Count: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 183.5970450680272 > 155.35940437810024. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -35.65135250773413 (T) = (0 -183893.337300813) / Math.Sqrt((15982862.674751699 / (18)) + (14570623.246192027 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2812092625096185 = (143531.07074843088 - 183893.337300813) / 143531.07074843088 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<NotKnownComparable>.ToFrozenSet(Count: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 300.6502391826923 > 243.90767155939054. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -58.94392740781849 (T) = (0 -301976.24307191774) / Math.Sqrt((17468157.227824893 / (18)) + (16742398.77149754 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.30351231553651226 = (231663.513625974 - 301976.24307191774) / 231663.513625974 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<NotKnownComparable>.Contains_True(Count: 4) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.7852345830413454 > 1.5712810455615152. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.730189627183186 (T) = (0 -1770.5294973747957) / Math.Sqrt((792.5710393510647 / (18)) + (2123.1950361863915 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.18726122267633877 = (1491.2720668023221 - 1770.5294973747957) / 1491.2720668023221 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<NotKnownComparable>.ToFrozenSet(Count: 64) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 36.503376677991376 > 29.33783960157146. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -49.509335271513 (T) = (0 -36222.69780629347) / Math.Sqrt((373259.9428759976 / (18)) + (422069.2840768212 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.32459218085805136 = (27346.302001291402 - 36222.69780629347) / 27346.302001291402 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<NotKnownComparable>.ToFrozenDictionary(Count: 64) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 22.28001387674825 > 19.07693051145334. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -48.753119167578504 (T) = (0 -22419.763568531453) / Math.Sqrt((86515.63246482734 / (18)) + (140975.5563068504 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.2548476776284005 = (17866.521943845557 - 22419.763568531453) / 17866.521943845557 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<NotKnownComparable>.ToFrozenDictionary(Count: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 198.31273765432096 > 165.69551490417567. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.16531096090478 (T) = (0 -195111.46395155418) / Math.Sqrt((9521083.567506647 / (18)) + (29673256.21661512 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2348540399707808 = (158003.6649158721 - 195111.46395155418) / 158003.6649158721 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<NotKnownComparable>.TryGetValue_True(Count: 4) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.8654583886594938 > 1.6498836037166007. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.310132429371066 (T) = (0 -1879.8943155606603) / Math.Sqrt((358.7983502312631 / (18)) + (1796.5979504358381 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.20286690145988306 = (1562.8448278683948 - 1879.8943155606603) / 1562.8448278683948 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Perf_Frozen<NotKnownComparable>.Contains_True(Count: 64) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 20.663320024542614 > 17.57050535170367. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -55.75875294602809 (T) = (0 -21036.46385948046) / Math.Sqrt((71577.33808863153 / (18)) + (88683.21700863367 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2683987029003326 = (16585.056269277382 - 21036.46385948046) / 16585.056269277382 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_FromString<Location>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
5.43 μs 6.56 μs 1.21 0.09 True
4.60 μs 4.91 μs 1.07 0.07 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromString&lt;Location&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_FromString<Location>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.562406981887111 > 5.685106684061293. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.02586615807597 (T) = (0 -6597.977299060527) / Math.Sqrt((26549.90808060846 / (18)) + (17096.110655207693 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2401065485903938 = (5320.4922646044615 - 6597.977299060527) / 5320.4922646044615 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromString<Location>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.91218237082067 > 4.830447158617439. IsChangePoint: Marked as a change because one of 9/26/2023 10:37:55 AM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.184361355922503 (T) = (0 -5011.831033781332) / Math.Sqrt((18361.96965532001 / (17)) + (7244.478208965227 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.11246292363009917 = (4505.166803606478 - 5011.831033781332) / 4505.166803606478 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.ReadJson<StructRecord>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
5.55 μs 6.79 μs 1.22 0.11 True
6.79 μs 8.06 μs 1.19 0.11 True
6.30 μs 7.44 μs 1.18 0.08 True
5.28 μs 6.47 μs 1.22 0.12 True
5.73 μs 6.92 μs 1.21 0.10 True
6.03 μs 7.33 μs 1.21 0.08 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;StructRecord&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.787521487505007 > 5.817966758158431. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.16455367410466 (T) = (0 -6750.048781121056) / Math.Sqrt((26181.77805464705 / (18)) + (25098.861440816516 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.25065777734058325 = (5397.198900785199 - 6750.048781121056) / 5397.198900785199 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 8.060370319291977 > 7.150256389236473. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.94199444744145 (T) = (0 -8045.140141313965) / Math.Sqrt((58196.89747364541 / (18)) + (26329.96858139894 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.20670735898513454 = (6667.018379733833 - 8045.140141313965) / 6667.018379733833 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 7.443183129550491 > 6.619596103271501. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.826250142736654 (T) = (0 -7636.220619716364) / Math.Sqrt((33568.10825396424 / (18)) + (17290.735486346737 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2229468160852025 = (6244.1150500402055 - 7636.220619716364) / 6244.1150500402055 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.470535166105971 > 5.435920889975479. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -41.983805444385546 (T) = (0 -6388.392551499972) / Math.Sqrt((9817.858465705513 / (18)) + (14009.777388536657 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.24965117085541444 = (5112.140652120522 - 6388.392551499972) / 5112.140652120522 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.918090390356769 > 6.035452321249137. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.4417968795883 (T) = (0 -6964.645480185158) / Math.Sqrt((21071.596308979908 / (18)) + (16628.673140188028 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.23075040621637544 = (5658.861004642008 - 6964.645480185158) / 5658.861004642008 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 7.328221028310716 > 6.263053789928455. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -36.113241810515 (T) = (0 -7405.649013764962) / Math.Sqrt((16265.994056929898 / (17)) + (28572.057976801036 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.25434484604550456 = (5903.997642364692 - 7405.649013764962) / 5903.997642364692 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_FromStream<Location>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
38.76 μs 41.69 μs 1.08 0.08 False
5.36 μs 6.64 μs 1.24 0.14 True
10.83 μs 11.89 μs 1.10 0.09 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromStream&lt;Location&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_FromStream<Location>.DataContractJsonSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 41.6933089253798 > 40.90967003320312. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.371783341089754 (T) = (0 -41936.464001293185) / Math.Sqrt((772492.3284016708 / (18)) + (464928.7551647081 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.08811085581214585 = (38540.617233335644 - 41936.464001293185) / 38540.617233335644 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. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromStream<Location>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.641559207046128 > 5.60867036464807. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.820744652079515 (T) = (0 -6605.8922596641005) / Math.Sqrt((18668.484294243262 / (18)) + (20756.832496014547 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.22928182374891867 = (5373.781774075394 - 6605.8922596641005) / 5373.781774075394 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromStream<Location>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 11.893674838540518 > 11.369871961879742. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.579354893848796 (T) = (0 -11829.954629766118) / Math.Sqrt((78652.29113083537 / (16)) + (55105.616534792716 / (36))) is less than -2.0085591120996775 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (36) - 2, .025) and -0.10981653366511605 = (10659.378618822931 - 11829.954629766118) / 10659.378618822931 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Microsoft.Extensions.Logging.EventSourceLogger

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
12.05 μs 13.02 μs 1.08 0.07 True
920.93 ns 1.17 μs 1.27 0.11 True
943.30 ns 1.19 μs 1.26 0.13 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Logging.EventSourceLogger*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.Logging.EventSourceLogger.NestedScopes_TwoMessages(HasSubscribers: True, Json: True) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 13.021948583402603 > 12.383256069142146. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.163338938812236 (T) = (0 -12755.459247180852) / Math.Sqrt((112357.12948481781 / (18)) + (68591.4782261409 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.11099796516465416 = (11481.08245660958 - 12755.459247180852) / 11481.08245660958 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.Logging.EventSourceLogger.NestedScopes_TwoMessages(HasSubscribers: False, Json: True) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.1670079431226954 > 973.0206251479468. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.50954988380579 (T) = (0 -1151.2884260049188) / Math.Sqrt((525.4548945700041 / (18)) + (1243.5580156724577 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.26583655470025275 = (909.5079627223606 - 1151.2884260049188) / 909.5079627223606 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.Logging.EventSourceLogger.NestedScopes_TwoMessages(HasSubscribers: False, Json: False) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.1864182211205905 > 972.6758461899182. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.768152337461597 (T) = (0 -1159.8579253175467) / Math.Sqrt((730.6323639278119 / (18)) + (906.7165042486328 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.28557692122141626 = (902.2081107488885 - 1159.8579253175467) / 902.2081107488885 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_ToStream<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.65 ms 2.04 ms 1.24 0.12 True
1.27 ms 1.48 ms 1.16 0.10 True
2.54 ms 2.94 ms 1.16 0.05 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;CollectionsOfPrimitives&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_ToStream<CollectionsOfPrimitives>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.0428946761904765 > 1.7312376887843268. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.902194370424258 (T) = (0 -2107357.908860758) / Math.Sqrt((5896798993.746771 / (17)) + (3457205872.9774365 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2789130982493924 = (1647772.5591718163 - 2107357.908860758) / 1647772.5591718163 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<CollectionsOfPrimitives>.XmlSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.4762762303321681 > 1.3307516559495194. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.78004029975358 (T) = (0 -1409208.6453567506) / Math.Sqrt((1383719089.5477064 / (18)) + (699582418.2198571 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.114386758966476 = (1264559.7536206401 - 1409208.6453567506) / 1264559.7536206401 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<CollectionsOfPrimitives>.DataContractSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.9386101190476195 > 2.6213863807678326. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.91929744134847 (T) = (0 -2964801.093421797) / Math.Sqrt((3379742521.741889 / (18)) + (1824909484.708505 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.20693989418879613 = (2456461.260164482 - 2964801.093421797) / 2456461.260164482 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
69.32 μs 86.42 μs 1.25 0.07 True
52.53 μs 67.05 μs 1.28 0.14 True
66.39 μs 82.34 μs 1.24 0.04 True
65.51 μs 78.11 μs 1.19 0.03 True
62.41 μs 77.10 μs 1.24 0.07 True
56.60 μs 70.68 μs 1.25 0.09 True
52.70 μs 66.65 μs 1.26 0.13 True
59.01 μs 69.52 μs 1.18 0.07 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;ImmutableSortedDictionary&lt;String, String&gt;&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 86.4217864235753 > 72.04438233295235. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -45.96755630096826 (T) = (0 -84049.96782865006) / Math.Sqrt((1156450.1720507161 / (16)) + (1673984.1764888174 / (37))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (37) - 2, .025) and -0.2307497705248361 = (68291.67865114297 - 84049.96782865006) / 68291.67865114297 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 67.04548911391272 > 56.181571606532735. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -45.904491423168245 (T) = (0 -67859.30047379927) / Math.Sqrt((1328011.5955485469 / (18)) + (1043484.417848297 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.27555151775949616 = (53199.968428553955 - 67859.30047379927) / 53199.968428553955 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 82.33917011639677 > 70.7796488872639. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -36.962810499284856 (T) = (0 -82429.20510164194) / Math.Sqrt((2798229.9826168786 / (18)) + (696453.478144278 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.2307412621082033 = (66975.25112666207 - 82429.20510164194) / 66975.25112666207 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 78.10887013190957 > 68.45101941629622. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -34.41534284805978 (T) = (0 -78149.63111308432) / Math.Sqrt((2662377.438906385 / (18)) + (1080906.3863152284 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.22750219540500127 = (63665.57339418826 - 78149.63111308432) / 63665.57339418826 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 77.09900210084032 > 66.16221749212862. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.67534585110499 (T) = (0 -77501.27391499163) / Math.Sqrt((3230891.1050613807 / (18)) + (1438187.5356442565 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.23607349061013005 = (62699.5680303254 - 77501.27391499163) / 62699.5680303254 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 70.68269046266235 > 61.1830847544239. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.28102382711788 (T) = (0 -72241.16375400932) / Math.Sqrt((1886973.2575206887 / (18)) + (1176716.002188539 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.24358827710258818 = (58090.90121235509 - 72241.16375400932) / 58090.90121235509 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 66.653724005867 > 56.83862324881132. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.48922385809445 (T) = (0 -67034.66784971856) / Math.Sqrt((3040022.9511095053 / (18)) + (2398111.717400689 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.28323975130189893 = (52238.6154120531 - 67034.66784971856) / 52238.6154120531 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 69.52453076201202 > 60.97734483263108. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.64791925040429 (T) = (0 -70370.9030512715) / Math.Sqrt((2290937.7108762795 / (17)) + (1129068.6545266237 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.23245499927304136 = (57098.15213762733 - 70370.9030512715) / 57098.15213762733 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Microsoft.Extensions.DependencyInjection.GetService

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.54 μs 3.42 μs 1.35 0.06 True
597.51 ns 699.73 ns 1.17 0.13 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.DependencyInjection.GetService*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.DependencyInjection.GetService.Transient #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.422671205750819 > 2.6482229163076543. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -45.540940230969404 (T) = (0 -3498.3046936990477) / Math.Sqrt((5619.916386659428 / (18)) + (7237.47351112796 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.41828999622457597 = (2466.565161575825 - 3498.3046936990477) / 2466.565161575825 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.GetService.Scoped #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 699.7288999873539 > 629.7256167378393. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.040586142766216 (T) = (0 -728.7590600257975) / Math.Sqrt((351.3253625505556 / (17)) + (287.73616556279853 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.24670814910554484 = (584.5466403252824 - 728.7590600257975) / 584.5466403252824 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.Sort<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
831.90 μs 1.45 ms 1.75 0.08 True
823.91 μs 1.38 ms 1.67 0.13 True
365.91 μs 676.99 μs 1.85 0.23 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Sort&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.Sort<Int32>.LinqQuery(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.4532262142714285 > 875.1945999737499. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -118.82349374034375 (T) = (0 -1392196.7808774314) / Math.Sqrt((156492604.8286895 / (18)) + (523410717.10268813 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.6889001407686848 = (824321.5494338155 - 1392196.7808774314) / 824321.5494338155 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Sort<Int32>.LinqOrderByExtension(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.3777330933866663 > 876.3367990551923. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -63.60650516556741 (T) = (0 -1403919.7455096543) / Math.Sqrt((543819262.7120074 / (17)) + (1841571395.9688184 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.6939669593760802 = (828776.3452167592 - 1403919.7455096543) / 828776.3452167592 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Sort<Int32>.Array_Comparison(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 676.9856800266666 > 387.9617215240385. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -82.49970395512611 (T) = (0 -722350.0925909198) / Math.Sqrt((161120264.0742331 / (18)) + (375983002.55114466 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.9972294735412168 = (361676.06284627196 - 722350.0925909198) / 361676.06284627196 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_ToString<Location>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
6.55 μs 7.21 μs 1.10 0.14 True
3.67 μs 4.31 μs 1.17 0.04 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToString&lt;Location&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_ToString<Location>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 7.208246351725657 > 6.938100925434091. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -16.18994302706201 (T) = (0 -7541.557677356586) / Math.Sqrt((68829.8526846024 / (18)) + (29342.781137309288 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.170779604031766 = (6441.483650198578 - 7541.557677356586) / 6441.483650198578 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToString<Location>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.309216101130907 > 3.7628085817963894. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.690132386263326 (T) = (0 -4317.319323641721) / Math.Sqrt((7644.569378752285 / (18)) + (6214.393541697954 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.20927106484346278 = (3570.183269208205 - 4317.319323641721) / 3570.183269208205 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.ReadJson<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
524.79 ns 589.15 ns 1.12 0.16 True
763.94 ns 850.16 ns 1.11 0.19 False
524.18 ns 580.94 ns 1.11 0.16 False
764.13 ns 834.99 ns 1.09 0.13 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 589.1512170756416 > 545.54680730543. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -15.867329327858421 (T) = (0 -579.6453171470988) / Math.Sqrt((307.9373309139928 / (18)) + (180.7372994043594 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.14728142995652996 = (505.2337656760132 - 579.6453171470988) / 505.2337656760132 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 850.1627254472825 > 801.6818878587043. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -16.699338411057756 (T) = (0 -849.3957900218908) / Math.Sqrt((376.4640826409025 / (18)) + (430.88790329516945 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1263602941191816 = (754.1066517140697 - 849.3957900218908) / 754.1066517140697 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. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 580.9415322308859 > 545.3418877529085. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.629158825612915 (T) = (0 -579.0263492097379) / Math.Sqrt((187.81261769716417 / (18)) + (171.7600753925909 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.13406560273381768 = (510.5757090365116 - 579.0263492097379) / 510.5757090365116 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. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 834.9914852037967 > 796.1999491236251. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.664721862119045 (T) = (0 -844.9265388066647) / Math.Sqrt((183.7949625730584 / (16)) + (375.21050806761923 / (37))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (37) - 2, .025) and -0.10770070944370048 = (762.7751175053378 - 844.9265388066647) / 762.7751175053378 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. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.ReadJson<SimpleStructWithProperties>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.04 μs 3.65 μs 1.20 0.11 True
2.81 μs 3.34 μs 1.19 0.18 True
3.45 μs 4.06 μs 1.18 0.14 True
3.14 μs 3.56 μs 1.13 0.14 True
2.69 μs 3.20 μs 1.19 0.14 True
2.31 μs 2.93 μs 1.27 0.16 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;SimpleStructWithProperties&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<SimpleStructWithProperties>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.650199516823161 > 3.222911151974851. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -23.847376794049183 (T) = (0 -3695.2882101056907) / Math.Sqrt((9912.351109939684 / (18)) + (5131.9341208817195 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.20401141970190576 = (3069.1471439868783 - 3695.2882101056907) / 3069.1471439868783 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<SimpleStructWithProperties>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.34016498925472 > 2.9801409915446024. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.767707774182004 (T) = (0 -3427.749270796085) / Math.Sqrt((5011.457273393617 / (18)) + (6216.041806420138 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.22472064987600346 = (2798.8009111654374 - 3427.749270796085) / 2798.8009111654374 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<SimpleStructWithProperties>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.064171417465665 > 3.6044417477619444. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.02966951339409 (T) = (0 -4037.0306663575484) / Math.Sqrt((13683.310898821088 / (18)) + (12019.917062250724 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.20817171615154503 = (3341.4378207900127 - 4037.0306663575484) / 3341.4378207900127 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<SimpleStructWithProperties>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.557318780644188 > 3.2765997280910018. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -19.78960915213799 (T) = (0 -3639.4215718385385) / Math.Sqrt((10889.533577187081 / (18)) + (8174.833149408305 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.18602643359283666 = (3068.5838601536207 - 3639.4215718385385) / 3068.5838601536207 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<SimpleStructWithProperties>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.2034203542299697 > 2.8019919271172453. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.53165114636875 (T) = (0 -3211.9461914855265) / Math.Sqrt((5332.295330764362 / (17)) + (5698.92479871488 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2275532950909957 = (2616.543171143891 - 3211.9461914855265) / 2616.543171143891 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<SimpleStructWithProperties>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.927439057191393 > 2.486324795079007. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -35.52024419312434 (T) = (0 -2981.29758528635) / Math.Sqrt((3777.746036937665 / (18)) + (3368.84633877794 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2605261929840866 = (2365.121488057795 - 2981.29758528635) / 2365.121488057795 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.60 ms 1.84 ms 1.14 0.05 True
1.56 ms 1.86 ms 1.19 0.07 True
1.60 ms 1.82 ms 1.13 0.04 True
1.54 ms 1.88 ms 1.22 0.07 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;MyEventsListerViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.8361454344951922 > 1.6309391974479164. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.576613584279336 (T) = (0 -1826055.4292917363) / Math.Sqrt((1053597151.4494869 / (18)) + (810006187.5593572 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.18353998816676248 = (1542875.9886011072 - 1826055.4292917363) / 1542875.9886011072 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.8562152825854705 > 1.6825528997569443. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -22.21950947589876 (T) = (0 -1865245.2301112236) / Math.Sqrt((2340006123.216851 / (18)) + (993163578.588335 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1753461968022326 = (1586975.169687026 - 1865245.2301112236) / 1586975.169687026 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.816001109375 > 1.6714810354687502. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.26768974346343 (T) = (0 -1849415.1715547023) / Math.Sqrt((1000989997.3334754 / (18)) + (882601258.9979898 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1774571290684276 = (1570685.7820105178 - 1849415.1715547023) / 1570685.7820105178 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.8775920133101849 > 1.6219671584921873. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -33.01499093636563 (T) = (0 -1819422.167212362) / Math.Sqrt((827617637.5584832 / (18)) + (1109890896.3732805 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.18788379550595422 = (1531649.959445248 - 1819422.167212362) / 1531649.959445248 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.IterateForEach<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
60.25 μs 87.20 μs 1.45 0.23 True
232.93 μs 350.40 μs 1.50 0.13 True
142.48 μs 190.73 μs 1.34 0.20 True
377.36 μs 531.06 μs 1.41 0.17 True
125.09 μs 202.38 μs 1.62 0.14 True
388.49 μs 542.82 μs 1.40 0.17 True
58.64 μs 91.18 μs 1.56 0.21 True
139.35 μs 203.88 μs 1.46 0.18 True
145.05 μs 223.14 μs 1.54 0.29 True
99.99 μs 129.46 μs 1.29 0.14 True
104.39 μs 173.05 μs 1.66 0.27 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IterateForEach&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.IterateForEach<Int32>.ConcurrentBag(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 87.20007020484171 > 63.85044471383475. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -43.067773403801624 (T) = (0 -89338.31652074982) / Math.Sqrt((6119648.69920259 / (18)) + (5770699.633755359 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.5209828515974206 = (58737.22798841668 - 89338.31652074982) / 58737.22798841668 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 350.39930505952384 > 246.60664920751128. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -53.081767308116554 (T) = (0 -356468.78339043085) / Math.Sqrt((61327278.60251263 / (18)) + (79552337.74069044 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.5409130247858935 = (231336.08299531467 - 356468.78339043085) / 231336.08299531467 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 190.72619600140712 > 145.79574398310342. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -36.31016892626887 (T) = (0 -189307.68994986528) / Math.Sqrt((26373723.11778908 / (18)) + (25460368.660067316 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3917086001385297 = (136025.3791138617 - 189307.68994986528) / 136025.3791138617 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 531.056089423077 > 391.21242304897135. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.031328774599075 (T) = (0 -535888.5024847614) / Math.Sqrt((121201188.28635871 / (17)) + (283187980.53909105 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.4618089646399711 = (366592.7049617905 - 535888.5024847614) / 366592.7049617905 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 202.3839864911874 > 131.1463152271902. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -76.85854423389566 (T) = (0 -200642.78823625622) / Math.Sqrt((6976356.988092488 / (18)) + (22276081.398851812 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.6241067221570286 = (123540.39639080864 - 200642.78823625622) / 123540.39639080864 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 542.8231099137931 > 406.57760362922147. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -61.25864087655686 (T) = (0 -552734.110357594) / Math.Sqrt((87100594.60228841 / (18)) + (90214961.15442654 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.42647886893494796 = (387481.45688991656 - 552734.110357594) / 387481.45688991656 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ConcurrentStack(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 91.18053196839078 > 61.434189321498316. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -45.135889387909934 (T) = (0 -88508.43064445563) / Math.Sqrt((7297054.648531863 / (18)) + (2770619.148144521 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.5465806625401244 = (57228.46068635581 - 88508.43064445563) / 57228.46068635581 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 203.8795242011278 > 150.46074070575497. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -58.47978533612232 (T) = (0 -208828.5031680609) / Math.Sqrt((17025160.342202775 / (17)) + (12454574.414582353 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.4791490285847203 = (141181.51662369832 - 208828.5031680609) / 141181.51662369832 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 223.13649614726026 > 155.1362839033019. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -40.52909167919235 (T) = (0 -213477.1993511025) / Math.Sqrt((18754638.448206313 / (18)) + (63669185.34189284 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.4668760229468597 = (145531.86227847703 - 213477.1993511025) / 145531.86227847703 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 129.46322265840223 > 104.4230728828144. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.13994132431843 (T) = (0 -130486.48590933808) / Math.Sqrt((6762710.718260594 / (18)) + (4889727.260887515 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3176401985008047 = (99030.43794338094 - 130486.48590933808) / 99030.43794338094 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ConcurrentQueue(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 173.04894684065934 > 110.68618055527254. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -64.86251230152926 (T) = (0 -177207.00671880072) / Math.Sqrt((13014151.865205992 / (18)) + (21316002.164482437 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.7158336890105056 = (103277.49586324606 - 177207.00671880072) / 103277.49586324606 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.65 μs 2.04 μs 1.24 0.20 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;Nullable&lt;DateTimeOffset&gt;&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<Nullable<DateTimeOffset>>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.041225715163074 > 1.805403100772915. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -18.787670363474046 (T) = (0 -1973.2867215039544) / Math.Sqrt((1942.3588769207417 / (16)) + (2642.028311337565 / (37))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (37) - 2, .025) and -0.15234282715769928 = (1712.4128991813545 - 1973.2867215039544) / 1712.4128991813545 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_FromStream<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.42 μs 5.24 μs 1.19 0.20 True
17.78 μs 19.55 μs 1.10 0.09 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_FromStream&lt;LoginViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_FromStream<LoginViewModel>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 5.237918505752201 > 4.600791848457258. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -26.37955929400774 (T) = (0 -5199.521564873477) / Math.Sqrt((13712.789740263097 / (17)) + (11117.245816971677 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.20309411295460048 = (4321.791212247153 - 5199.521564873477) / 4321.791212247153 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_FromStream<LoginViewModel>.XmlSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 19.54910722157251 > 18.8504331460581. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -12.471306659343727 (T) = (0 -19750.26071195199) / Math.Sqrt((476306.6962871849 / (18)) + (108019.28057020147 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.12175894048838616 = (17606.51063173449 - 19750.26071195199) / 17606.51063173449 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.45 μs 1.90 μs 1.31 0.16 True
1.77 μs 2.15 μs 1.22 0.21 True
3.17 μs 3.96 μs 1.25 0.14 True
2.04 μs 2.22 μs 1.09 0.19 False
1.92 μs 2.32 μs 1.21 0.16 True

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;SimpleStructWithProperties&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.8983769153561323 > 1.5505375028129378. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -33.38783407330979 (T) = (0 -1908.8966795295985) / Math.Sqrt((2475.7471219946933 / (18)) + (2320.8305866787296 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.32893882681017195 = (1436.4067337181268 - 1908.8966795295985) / 1436.4067337181268 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.147067257272072 > 1.8206890924853256. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.40403519094422 (T) = (0 -2197.384792641252) / Math.Sqrt((2678.7910786383904 / (17)) + (3670.592900026563 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.28488615106764825 = (1710.1785950571439 - 2197.384792641252) / 1710.1785950571439 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.9591567767457865 > 3.1606300041136994. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.553235336851298 (T) = (0 -3874.37148943452) / Math.Sqrt((11654.708687356548 / (18)) + (10500.673302351921 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.3068441788822766 = (2964.6774665578027 - 3874.37148943452) / 2964.6774665578027 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.2249518404834134 > 2.11779010398659. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -15.067751485825363 (T) = (0 -2199.836537707872) / Math.Sqrt((2411.716625649295 / (18)) + (1992.7419169311127 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.10360170998933085 = (1993.3246911416431 - 2199.836537707872) / 1993.3246911416431 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. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.315214624846248 > 2.0037214587141396. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -22.99158290819966 (T) = (0 -2332.0840726217525) / Math.Sqrt((5703.535524420287 / (18)) + (3474.235454535853 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.24970479833959497 = (1866.107960632181 - 2332.0840726217525) / 1866.107960632181 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.ContainsTrueComparer<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
81.55 μs 117.90 μs 1.45 0.27 True
583.30 μs 1.04 ms 1.78 0.20 True
86.63 μs 176.13 μs 2.03 0.37 True
199.62 μs 277.96 μs 1.39 0.11 True
741.99 μs 1.20 ms 1.62 0.28 True

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsTrueComparer&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.ContainsTrueComparer<Int32>.FrozenSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 117.89683593358397 > 86.52624613111412. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -36.476758752328664 (T) = (0 -119127.72629366232) / Math.Sqrt((10770899.524635212 / (18)) + (11565971.541647803 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.41293179473403385 = (84312.43938146821 - 119127.72629366232) / 84312.43938146821 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.ContainsTrueComparer<Int32>.SortedSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.0403288458333335 > 644.9534394230769. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -62.40078893732545 (T) = (0 -1022759.4870558566) / Math.Sqrt((625058093.0131183 / (18)) + (456440352.4139758 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.7198466288071148 = (594680.6360083645 - 1022759.4870558566) / 594680.6360083645 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.ContainsTrueComparer<Int32>.HashSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 176.1337302579365 > 98.37017229929913. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -53.543139769391914 (T) = (0 -176084.90742179964) / Math.Sqrt((26146340.409115132 / (18)) + (31389096.275638122 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.8642895547731096 = (94451.4799060974 - 176084.90742179964) / 94451.4799060974 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.ContainsTrueComparer<Int32>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 277.96347739541153 > 209.1832112401615. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -62.72711273130683 (T) = (0 -283361.71899974963) / Math.Sqrt((24371665.221629445 / (18)) + (19382005.80937012 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.4354367653089396 = (197404.52930280322 - 283361.71899974963) / 197404.52930280322 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.ContainsTrueComparer<Int32>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.1998903839743587 > 771.3111902859121. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -53.59987768621241 (T) = (0 -1245874.8763726985) / Math.Sqrt((1133766342.3171585 / (18)) + (1457838771.0959015 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.770931543890228 = (703513.85442933 - 1245874.8763726985) / 703513.85442933 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_FromString<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.10 ms 1.27 ms 1.16 0.07 True
1.16 ms 1.34 ms 1.15 0.10 True
2.46 ms 2.70 ms 1.10 0.08 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromString&lt;MyEventsListerViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_FromString<MyEventsListerViewModel>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.2675782041666666 > 1.1509656764895833. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.113816701128485 (T) = (0 -1252109.8114303024) / Math.Sqrt((1056035726.6397545 / (18)) + (646268257.6034983 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.17251922876947892 = (1067879.9807354556 - 1252109.8114303024) / 1067879.9807354556 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromString<MyEventsListerViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.3406264929315472 > 1.2089748080803573. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.05329133888576 (T) = (0 -1361994.2955897236) / Math.Sqrt((823744005.7324041 / (18)) + (547736910.5069401 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.20732973896982732 = (1128104.6524637637 - 1361994.2955897236) / 1128104.6524637637 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromString<MyEventsListerViewModel>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.704911062099359 > 2.60063086484375. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.26007573153398 (T) = (0 -2751121.858005691) / Math.Sqrt((4892534697.277466 / (18)) + (3437366566.5193877 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.13612304198072925 = (2421499.922411005 - 2751121.858005691) / 2421499.922411005 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.94 μs 3.70 μs 1.26 0.05 True
3.78 μs 4.41 μs 1.17 0.12 True
2.41 μs 3.15 μs 1.31 0.09 True
2.77 μs 3.36 μs 1.21 0.07 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;ClassRecord&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.701837562332355 > 3.087486785829063. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.56731991846554 (T) = (0 -3655.29603671087) / Math.Sqrt((8558.22811790387 / (18)) + (5799.910165694286 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.255312763734438 = (2911.860806574376 - 3655.29603671087) / 2911.860806574376 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.4133094890510955 > 3.975740468989121. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.979685731157456 (T) = (0 -4562.514624715715) / Math.Sqrt((11904.070748498889 / (18)) + (7744.772749076349 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.22277793455247147 = (3731.270000701775 - 4562.514624715715) / 3731.270000701775 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.1457292035109035 > 2.5693625599132637. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -39.99200421465843 (T) = (0 -3078.992969268755) / Math.Sqrt((3635.262160904264 / (18)) + (2908.5592697098296 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2780573988628501 = (2409.11947460911 - 3078.992969268755) / 2409.11947460911 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.3639804697171325 > 2.878432756981727. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.5494456801423 (T) = (0 -3418.6292944296897) / Math.Sqrt((6823.824189285219 / (17)) + (9073.033837476996 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2577355101543965 = (2718.0828296801665 - 3418.6292944296897) / 2718.0828296801665 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.56 μs 5.78 μs 1.27 0.04 True
6.54 μs 7.63 μs 1.17 0.06 True
5.07 μs 5.99 μs 1.18 0.06 True
4.88 μs 5.98 μs 1.23 0.06 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;LargeStructWithProperties&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 5.783884466469063 > 4.785040276286121. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -33.93354286215483 (T) = (0 -5661.252356459056) / Math.Sqrt((13994.727075900106 / (18)) + (12298.942895190667 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.24951587599939648 = (4530.75664359289 - 5661.252356459056) / 4530.75664359289 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 7.625501756289189 > 6.867022659065882. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.354103086163633 (T) = (0 -7730.194017618193) / Math.Sqrt((31083.271491286374 / (18)) + (16890.718970754588 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.21571014633460273 = (6358.583121910207 - 7730.194017618193) / 6358.583121910207 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 5.986445919104371 > 5.2788048516176. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.86557889864995 (T) = (0 -6167.2217756598275) / Math.Sqrt((19660.06025588706 / (18)) + (13748.232049840946 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.23682928518743518 = (4986.316098365359 - 6167.2217756598275) / 4986.316098365359 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 5.982867231493631 > 5.124669915238794. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -33.967406379776406 (T) = (0 -5952.504954459142) / Math.Sqrt((15146.19213391576 / (18)) + (14344.278277948419 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2500957262870044 = (4761.639312326175 - 5952.504954459142) / 4761.639312326175 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Reflection.Activator<EmptyClass>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
12.87 μs 16.17 μs 1.26 0.43 False
309.53 ns 459.53 ns 1.48 0.17 True
442.71 ns 554.27 ns 1.25 0.16 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Reflection.Activator&lt;EmptyClass&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Reflection.Activator<EmptyClass>.CreateInstanceNames #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 16.16673532011672 > 13.889648261198026. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -7.047755509513979 (T) = (0 -14405.237688489638) / Math.Sqrt((766935.4460326073 / (17)) + (767447.9350163743 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.14357986467937706 = (12596.617108616549 - 14405.237688489638) / 12596.617108616549 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. ``` #### JIT Disasms ### System.Reflection.Activator<EmptyClass>.CreateInstanceGeneric #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 459.5331263410592 > 327.7127992551235. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -54.4866893517745 (T) = (0 -447.63105391193284) / Math.Sqrt((85.61043683493494 / (17)) + (51.62409467139648 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.4465173071086863 = (309.45433677987745 - 447.63105391193284) / 309.45433677987745 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Reflection.Activator<EmptyClass>.CreateInstanceType #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 554.2743988846823 > 463.79124106236696. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -47.28680046574748 (T) = (0 -574.9256990781026) / Math.Sqrt((89.54398134984024 / (18)) + (133.41347843931342 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.3198317176735361 = (435.6053058730265 - 574.9256990781026) / 435.6053058730265 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in LinqBenchmarks

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
7.49 secs 9.97 secs 1.33 0.09 True
7.30 secs 10.33 secs 1.42 0.04 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'LinqBenchmarks*'
### Payloads [Baseline]() [Compare]() ### LinqBenchmarks.Order00LinqMethodX #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 9.9748106668 > 7.657345472977308. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -60.30210529548288 (T) = (0 -10118967373.68877) / Math.Sqrt((19976244425513016 / (18)) + (43899968009614480 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3997118895022388 = (7229321583.663368 - 10118967373.68877) / 7229321583.663368 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### LinqBenchmarks.Order00LinqQueryX #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 10.326567599933332 > 7.7038403725325. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -63.231518853857175 (T) = (0 -10076990997.327662) / Math.Sqrt((17023159741340132 / (17)) + (39788308624867740 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.40046451245058057 = (7195463296.456259 - 10076990997.327662) / 7195463296.456259 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
112.95 μs 128.77 μs 1.14 0.07 True
104.22 μs 120.61 μs 1.16 0.05 True
106.00 μs 125.16 μs 1.18 0.05 True
93.62 μs 106.85 μs 1.14 0.03 True
93.80 μs 112.65 μs 1.20 0.06 True
125.17 μs 147.05 μs 1.17 0.06 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;IndexViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 128.77315975694444 > 120.35845572232661. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -15.223625172586686 (T) = (0 -129139.73968776832) / Math.Sqrt((14176874.74446031 / (18)) + (5531669.387451228 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.12881818137398474 = (114402.60426225673 - 129139.73968776832) / 114402.60426225673 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 120.6108174793956 > 107.77794982040923. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.286159486702555 (T) = (0 -121786.80659960635) / Math.Sqrt((6492988.686240583 / (18)) + (5257983.587549202 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.214095226177822 = (100310.7532042704 - 121786.80659960635) / 100310.7532042704 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 125.15618445767196 > 110.91840193875343. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.96354870759312 (T) = (0 -125646.37895142725) / Math.Sqrt((5794441.895103765 / (16)) + (3338241.3504734877 / (37))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (37) - 2, .025) and -0.20642070962904635 = (104148.06207202905 - 125646.37895142725) / 104148.06207202905 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 106.84638701923076 > 95.5046929995055. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -25.383614361791988 (T) = (0 -104337.63142635342) / Math.Sqrt((3952581.9615136646 / (18)) + (3247493.2483661985 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.15590368424783554 = (90264.98734126583 - 104337.63142635342) / 90264.98734126583 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 112.64797262773722 > 99.74926327218384. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.021895208269445 (T) = (0 -108366.13720695293) / Math.Sqrt((6155575.677702732 / (18)) + (5571693.177171476 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.15760476886856736 = (93612.3797355025 - 108366.13720695293) / 93612.3797355025 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 147.04829293650792 > 132.1833285624062. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -23.688199523600304 (T) = (0 -146560.7790731409) / Math.Sqrt((11607514.073058598 / (17)) + (8035743.420212295 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.1810991431770977 = (124088.46447801133 - 146560.7790731409) / 124088.46447801133 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<Location>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.58 μs 4.28 μs 1.20 0.06 True
4.48 μs 5.33 μs 1.19 0.07 True
3.09 μs 3.72 μs 1.21 0.04 True
3.49 μs 4.17 μs 1.20 0.08 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;Location&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<Location>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.282776409829758 > 3.7872509954974523. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.30386142838684 (T) = (0 -4347.255720124048) / Math.Sqrt((9287.112526847925 / (18)) + (11083.811959143413 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.21991719493463222 = (3563.566230703872 - 4347.255720124048) / 3563.566230703872 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Location>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 5.326565098819302 > 4.747957507785635. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -20.874728825314232 (T) = (0 -5282.036853768926) / Math.Sqrt((22268.258217347153 / (16)) + (17476.097234161665 / (37))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (37) - 2, .025) and -0.20573322971359154 = (4380.767423175038 - 5282.036853768926) / 4380.767423175038 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Location>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.7243922006254357 > 3.222802325016171. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -35.79215228522106 (T) = (0 -3721.2457953610165) / Math.Sqrt((5494.088573639893 / (18)) + (3154.574086862943 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.23466697084548868 = (3013.9672342678296 - 3721.2457953610165) / 3013.9672342678296 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Location>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.1736034036738525 > 3.5506992089567513. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.883228674455513 (T) = (0 -4074.103168524418) / Math.Sqrt((8075.1865866772205 / (18)) + (5255.925855152973 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.22583831183399533 = (3323.5240970965333 - 4074.103168524418) / 3323.5240970965333 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
301.31 μs 400.29 μs 1.33 0.14 True
10.56 μs 13.20 μs 1.25 0.10 True
10.30 ms 13.79 ms 1.34 0.09 True
28.97 μs 37.33 μs 1.29 0.06 True
277.96 μs 358.00 μs 1.29 0.08 True
4.34 ms 6.06 ms 1.40 0.10 True
8.51 μs 10.67 μs 1.25 0.10 True
43.66 μs 57.38 μs 1.31 0.07 True
670.71 μs 860.54 μs 1.28 0.09 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Tests.Perf_PriorityQueue&lt;Guid, Guid&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.K_Max_Elements(Size: 1000) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 400.29465779914534 > 313.4148440597787. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -50.49300252055049 (T) = (0 -408618.01571175584) / Math.Sqrt((44104689.850448325 / (17)) + (83792119.51783338 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.37436027541028755 = (297315.0657965366 - 408618.01571175584) / 297315.0657965366 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.HeapSort(Size: 10) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 13.197796666565608 > 11.09405735391355. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -41.02648516264416 (T) = (0 -13536.362543010759) / Math.Sqrt((69215.18310576999 / (17)) + (48989.62653898732 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2863849165149903 = (10522.793270681994 - 13536.362543010759) / 10522.793270681994 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.Dequeue_And_Enqueue(Size: 1000) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 13.78605043697479 > 10.377117324576087. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -65.74491882158895 (T) = (0 -13789826.260591516) / Math.Sqrt((28042739867.11278 / (18)) + (72578639354.22688 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3943940068427992 = (9889476.140115216 - 13789826.260591516) / 9889476.140115216 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.Dequeue_And_Enqueue(Size: 10) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 37.33263884976526 > 30.037211881395436. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.046785429967386 (T) = (0 -35711.05330847346) / Math.Sqrt((420966.12857506744 / (18)) + (639643.2360300882 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.2757305663656731 = (27992.629674311112 - 35711.05330847346) / 27992.629674311112 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.HeapSort(Size: 100) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 358.00020302353903 > 290.35109096217104. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -40.2099812903735 (T) = (0 -357718.5931655284) / Math.Sqrt((60440236.12402423 / (18)) + (30206439.4598572 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2981215432119761 = (275566.33277991513 - 357718.5931655284) / 275566.33277991513 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.HeapSort(Size: 1000) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.064972351219511 > 4.69208618423445. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -51.12806168869069 (T) = (0 -6124477.625376256) / Math.Sqrt((14587585675.004799 / (18)) + (12023735676.530575 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.39139180086484243 = (4401691.616674388 - 6124477.625376256) / 4401691.616674388 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.K_Max_Elements(Size: 10) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 10.672376081146746 > 8.9404320304555. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.10096300795257 (T) = (0 -10722.904753475963) / Math.Sqrt((79059.05502664617 / (18)) + (40908.69885119423 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.2874071554625309 = (8329.070339541115 - 10722.904753475963) / 8329.070339541115 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.K_Max_Elements(Size: 100) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 57.379243290441174 > 46.605949633494426. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -50.587964956317435 (T) = (0 -57637.396647454014) / Math.Sqrt((779801.989565253 / (18)) + (1109367.2643975965 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3117075828405986 = (43940.736030995584 - 57637.396647454014) / 43940.736030995584 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.Dequeue_And_Enqueue(Size: 100) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 860.541417906746 > 717.7229076254737. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -36.04894120058808 (T) = (0 -881337.3689909392) / Math.Sqrt((377294594.785284 / (18)) + (503604906.69646156 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.31665181289452826 = (669377.7051454526 - 881337.3689909392) / 669377.7051454526 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_ToStream<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
232.03 μs 263.16 μs 1.13 0.09 True
163.11 μs 193.03 μs 1.18 0.07 True
126.27 μs 145.12 μs 1.15 0.09 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;IndexViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_ToStream<IndexViewModel>.DataContractSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 263.1570646121661 > 245.38523452690046. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -19.264641514925177 (T) = (0 -264529.93500419747) / Math.Sqrt((46789937.45481198 / (18)) + (20889446.204881135 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.14881860056314036 = (230262.58007532897 - 264529.93500419747) / 230262.58007532897 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<IndexViewModel>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 193.03050148090415 > 174.08672545106887. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -22.228877249881375 (T) = (0 -196121.9481647351) / Math.Sqrt((33072190.2726307 / (17)) + (15197998.358337091 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.21062221174715784 = (162000.94981050602 - 196121.9481647351) / 162000.94981050602 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<IndexViewModel>.XmlSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 145.1234118740929 > 134.0999631588972. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.29207100686129 (T) = (0 -149052.11476099092) / Math.Sqrt((7590003.388252307 / (18)) + (10829924.852773914 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.1856227843129216 = (125716.3043196474 - 149052.11476099092) / 125716.3043196474 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
25.49 μs 36.92 μs 1.45 0.08 True
587.33 ns 733.36 ns 1.25 0.13 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable.Transient #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 36.92217762924143 > 26.570188111237307. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -56.56756594554753 (T) = (0 -35358.07710235102) / Math.Sqrt((417736.30727838876 / (18)) + (328253.43366639555 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.40162798611604306 = (25226.43486901928 - 35358.07710235102) / 25226.43486901928 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable.Scoped #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 733.356728685416 > 620.3585729697152. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -25.006870691825927 (T) = (0 -716.5223556826326) / Math.Sqrt((359.26357804706964 / (18)) + (394.9322952016486 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.23940768147419667 = (578.1167620571584 - 716.5223556826326) / 578.1167620571584 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Diagnostics.Perf_Activity

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
669.81 ns 908.86 ns 1.36 0.16 True
144.46 μs 201.37 μs 1.39 0.17 True
667.02 ns 884.88 ns 1.33 0.16 True
793.49 ns 1.12 μs 1.41 0.13 True
140.73 μs 201.26 μs 1.43 0.18 True
145.85 μs 204.02 μs 1.40 0.10 True
142.26 μs 196.90 μs 1.38 0.11 True
798.06 ns 1.11 μs 1.39 0.11 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Diagnostics.Perf_Activity*'
### Payloads [Baseline]() [Compare]() ### System.Diagnostics.Perf_Activity.EnumerateActivityTagObjectsSmall #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 908.862108897821 > 701.7449857287934. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.97126170440264 (T) = (0 -899.3227246075513) / Math.Sqrt((298.952946846547 / (17)) + (423.02979125471165 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.3686926198619614 = (657.0669787773473 - 899.3227246075513) / 657.0669787773473 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityLinkTagsLarge #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 201.37329594693284 > 148.7888395623683. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -46.4099436401031 (T) = (0 -200154.0648443137) / Math.Sqrt((18102324.897529542 / (17)) + (21578024.39902905 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.4238243811965397 = (140574.96660937226 - 200154.0648443137) / 140574.96660937226 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityLinkTagsSmall #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 884.8847626690301 > 713.2811613051815. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.2474934512712 (T) = (0 -899.1615613778287) / Math.Sqrt((366.84010343332807 / (18)) + (341.58092999662216 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.36571678348864145 = (658.380692284512 - 899.1615613778287) / 658.380692284512 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityEventsSmall #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.1211402030862923 > 838.8011604444622. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -53.59659635333386 (T) = (0 -1100.8585925202858) / Math.Sqrt((433.0886448766592 / (18)) + (335.3540102373731 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3892867545218117 = (792.3911956529075 - 1100.8585925202858) / 792.3911956529075 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityLinksLarge #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 201.26392325949368 > 150.6368578821528. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -63.290549035668775 (T) = (0 -206455.75369283566) / Math.Sqrt((8378325.050095415 / (18)) + (21402014.11853769 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.45605638461728065 = (141791.04317248115 - 206455.75369283566) / 141791.04317248115 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityEventsLarge #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 204.01877266483518 > 151.5537184431788. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.40479221482735 (T) = (0 -201065.32608564128) / Math.Sqrt((17052212.22914939 / (18)) + (29422656.420580037 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.419060068173095 = (141689.087442573 - 201065.32608564128) / 141689.087442573 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityTagObjectsLarge #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 196.90078124999997 > 150.34234139636996. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -59.47492543138652 (T) = (0 -201813.12708909257) / Math.Sqrt((11451059.261614727 / (18)) + (16313006.400728043 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.4406055080208678 = (140089.09862238928 - 201813.12708909257) / 140089.09862238928 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityLinksSmall #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.1099585152746805 > 843.6876623620757. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -34.75526178945449 (T) = (0 -1115.900067329881) / Math.Sqrt((1183.9198326890553 / (18)) + (565.1880987339135 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.39106571641309246 = (802.1907622073134 - 1115.900067329881) / 802.1907622073134 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.91 μs 2.40 μs 1.26 0.12 True
5.02 μs 5.80 μs 1.15 0.12 True
882.95 ns 1.24 μs 1.40 0.10 True
1.59 μs 2.12 μs 1.34 0.09 True
1.33 μs 1.69 μs 1.27 0.14 True
2.19 μs 2.80 μs 1.28 0.11 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark.GetService_3Injected #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.3963998654460243 > 1.9802171742738688. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -37.44116700802875 (T) = (0 -2475.2099867867223) / Math.Sqrt((2804.012547406848 / (18)) + (4646.389402601457 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.33999133234489304 = (1847.1835802514292 - 2475.2099867867223) / 1847.1835802514292 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark.GetService_5Injected #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 5.798108035824965 > 5.348996795267688. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -23.75200340774028 (T) = (0 -6027.462530158659) / Math.Sqrt((22382.319281908098 / (17)) + (19358.9397960398 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.20340712612655493 = (5008.664482118737 - 6027.462530158659) / 5008.664482118737 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark.GetService_0Injected #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.2400436422240126 > 922.3168228285332. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.52155109598489 (T) = (0 -1252.8586270965434) / Math.Sqrt((935.4901488701006 / (18)) + (708.6505564996309 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.42794644592139536 = (877.3848841985982 - 1252.8586270965434) / 877.3848841985982 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark.GetService_2Injected #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.1204253824208523 > 1.6603248726987399. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -50.746674336592626 (T) = (0 -2107.9950834532665) / Math.Sqrt((1385.3446206997228 / (18)) + (1548.8056188454195 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3557759009543679 = (1554.8256035303407 - 2107.9950834532665) / 1554.8256035303407 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark.GetService_1Injected #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.6853547360722234 > 1.3635497935655374. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -36.25121271653169 (T) = (0 -1713.8641875369156) / Math.Sqrt((1897.6561399501425 / (17)) + (1496.7109267027904 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.3528934627865387 = (1266.8138583557716 - 1713.8641875369156) / 1266.8138583557716 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark.GetService_4Injected #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.799581931960703 > 2.2883983696622368. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.632589083925765 (T) = (0 -2905.9195617299297) / Math.Sqrt((5040.575461650607 / (18)) + (3789.1065940553253 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.35132804238906723 = (2150.417567441609 - 2905.9195617299297) / 2150.417567441609 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Microsoft.Extensions.DependencyInjection.ScopeValidation

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.56 μs 3.56 μs 1.39 0.08 True
2.59 μs 3.44 μs 1.33 0.06 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.DependencyInjection.ScopeValidation*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.DependencyInjection.ScopeValidation.TransientWithScopeValidation #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.559498449061148 > 2.651072081132742. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -56.5611154412955 (T) = (0 -3566.5313938188947) / Math.Sqrt((4343.014455422351 / (16)) + (3065.1628038084473 / (36))) is less than -2.0085591120996775 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (36) - 2, .025) and -0.4274880670778545 = (2498.4666955008443 - 3566.5313938188947) / 2498.4666955008443 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.ScopeValidation.Transient #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.4372614927968885 > 2.605254099094533. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -47.58207405193214 (T) = (0 -3494.996257307283) / Math.Sqrt((6691.973272552599 / (18)) + (4435.13207801711 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.4324013885186525 = (2439.9559266845627 - 3494.996257307283) / 2439.9559266845627 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.IndexerSet<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
411.79 μs 593.60 μs 1.44 0.21 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IndexerSet&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.IndexerSet<Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 593.6007709876543 > 431.73029849759615. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -57.07290950700843 (T) = (0 -580768.8993435457) / Math.Sqrt((85222143.50755547 / (17)) + (140155591.87545788 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.41150682401796934 = (411453.12899752025 - 580768.8993435457) / 411453.12899752025 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.IO.Tests.Perf_RandomAccess

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
196.15 μs 218.83 μs 1.12 0.11 True
197.92 μs 213.53 μs 1.08 0.06 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.IO.Tests.Perf_RandomAccess*'
### Payloads [Baseline]() [Compare]() ### System.IO.Tests.Perf_RandomAccess.ReadScatter(fileSize: 1048576, buffersSize: 16384, options: None) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 218.82985500503023 > 203.06011304272675. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -19.24242912529486 (T) = (0 -220258.59670904375) / Math.Sqrt((17148470.877128627 / (18)) + (33151054.63101879 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1347950123374682 = (194095.492414398 - 220258.59670904375) / 194095.492414398 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.IO.Tests.Perf_RandomAccess.ReadScatter(fileSize: 1048576, buffersSize: 16384, options: Asynchronous) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 213.52751950831706 > 206.96806806383884. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.50140320319676 (T) = (0 -220174.5413489962) / Math.Sqrt((23685708.354786385 / (16)) + (19503902.52860396 / (36))) is less than -2.0085591120996775 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (36) - 2, .025) and -0.12743939793312126 = (195287.25158321703 - 220174.5413489962) / 195287.25158321703 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.CtorFromCollection<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
150.49 μs 197.49 μs 1.31 0.13 True
1.32 ms 1.53 ms 1.16 0.10 True
821.17 μs 1.07 ms 1.31 0.05 True
96.31 μs 129.39 μs 1.34 0.17 True
1.37 ms 1.61 ms 1.18 0.06 True
142.48 μs 179.22 μs 1.26 0.11 True
565.06 μs 749.66 μs 1.33 0.14 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CtorFromCollection&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.CtorFromCollection<Int32>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 197.49217196745562 > 153.06894006250002. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -55.983773962281525 (T) = (0 -196551.1595219186) / Math.Sqrt((7249757.530430803 / (18)) + (15557168.522508042 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3484944610575397 = (145756.00063479375 - 196551.1595219186) / 145756.00063479375 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.5291845845833334 > 1.379149481217448. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -25.591411093039248 (T) = (0 -1539953.145414443) / Math.Sqrt((1336864089.8876107 / (18)) + (687110843.0623198 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.19194683339760898 = (1291964.6264966805 - 1539953.145414443) / 1291964.6264966805 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.0743529720238096 > 869.3853062500002. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -58.79956601453535 (T) = (0 -1074608.10702426) / Math.Sqrt((192686197.4947589 / (18)) + (288201432.1142501 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.30771876962683875 = (821742.5122153003 - 1074608.10702426) / 821742.5122153003 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.SortedDictionaryDeepCopy(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 129.3908534647171 > 105.24029167197331. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.095083821314915 (T) = (0 -129946.4214312404) / Math.Sqrt((12934239.814115562 / (18)) + (15487149.36745495 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3425933831986457 = (96787.62241599246 - 129946.4214312404) / 96787.62241599246 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.607215389423077 > 1.4380299778125. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.96094733257356 (T) = (0 -1636877.1836936933) / Math.Sqrt((1481925436.2616704 / (18)) + (747959846.1546602 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.22752273472348095 = (1333480.1363678416 - 1636877.1836936933) / 1333480.1363678416 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 179.2214490530303 > 149.74697149502842. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.619905871498403 (T) = (0 -179543.14189177903) / Math.Sqrt((29663069.77937307 / (17)) + (6868094.496215179 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2844893281831212 = (139777.83851714706 - 179543.14189177903) / 139777.83851714706 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 749.6624966269841 > 612.6641113884436. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -42.455793864873804 (T) = (0 -750496.1467622465) / Math.Sqrt((145435849.09170732 / (18)) + (336540568.31871766 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.30624345953138987 = (574545.3814800223 - 750496.1467622465) / 574545.3814800223 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.IterateForEach<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
363.59 μs 533.51 μs 1.47 0.11 True
238.15 μs 341.88 μs 1.44 0.14 True
122.21 μs 186.81 μs 1.53 0.24 True
121.38 μs 170.13 μs 1.40 0.25 True
127.92 μs 197.02 μs 1.54 0.20 True
373.32 μs 536.05 μs 1.44 0.16 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IterateForEach&lt;String&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.IterateForEach<String>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 533.5060744791667 > 382.3093124355841. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -58.91707155634888 (T) = (0 -525819.5717461036) / Math.Sqrt((91581205.4026174 / (18)) + (82955499.50814313 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.4409137387274024 = (364920.9231709464 - 525819.5717461036) / 364920.9231709464 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<String>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 341.87552142558525 > 251.27394550839557. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -56.621489176430785 (T) = (0 -355976.29893716215) / Math.Sqrt((67605605.88067234 / (18)) + (40680640.971250325 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.5396117796551473 = (231211.7272945886 - 355976.29893716215) / 231211.7272945886 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<String>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 186.80713238732991 > 129.46258160775992. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -65.23716757492554 (T) = (0 -190230.79376396988) / Math.Sqrt((12432017.463902395 / (18)) + (14929166.4509073 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.5593788862989252 = (121991.387362868 - 190230.79376396988) / 121991.387362868 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<String>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 170.13295822010866 > 117.87755040414292. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.48594713742964 (T) = (0 -164853.5685565303) / Math.Sqrt((16258357.806172645 / (18)) + (22466395.950801887 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.49621607721184785 = (110180.32159080246 - 164853.5685565303) / 110180.32159080246 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<String>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 197.0153291666667 > 134.356082875043. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -67.07141719229311 (T) = (0 -197939.88863699263) / Math.Sqrt((10347911.205422642 / (18)) + (22188171.72981681 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.5803623472598723 = (125249.68655460108 - 197939.88863699263) / 125249.68655460108 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.IterateForEach<String>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 536.0480744363396 > 389.2536101255032. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -56.79564806939288 (T) = (0 -534547.434063787) / Math.Sqrt((116039030.90217596 / (18)) + (96752080.26415844 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.47023735082017504 = (363579.0056385036 - 534547.434063787) / 363579.0056385036 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.06 ms 1.25 ms 1.18 0.09 True
1.18 ms 1.39 ms 1.18 0.06 True
1.05 ms 1.20 ms 1.15 0.06 True
1.38 ms 1.55 ms 1.12 0.06 True
1.27 ms 1.44 ms 1.13 0.05 True
1.12 ms 1.33 ms 1.19 0.07 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;MyEventsListerViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.2477784965659342 > 1.141449519642857. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -20.424801625243543 (T) = (0 -1248163.8759587302) / Math.Sqrt((1276030517.5229008 / (18)) + (319813676.092052 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.17087278616836218 = (1066011.517821078 - 1248163.8759587302) / 1066011.517821078 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.394687086444805 > 1.2067642408052885. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.53139972754219 (T) = (0 -1378179.3049874702) / Math.Sqrt((730320590.8105026 / (17)) + (1029753557.1393477 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2109227743961781 = (1138123.201683686 - 1378179.3049874702) / 1138123.201683686 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.2028822101648353 > 1.1009733953854168. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -26.733107777659875 (T) = (0 -1219867.8928894915) / Math.Sqrt((575282949.1882862 / (18)) + (506637143.12256265 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.17380748126628032 = (1039240.1755469493 - 1219867.8928894915) / 1039240.1755469493 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.5500758283333336 > 1.3971794723503062. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.38526402924995 (T) = (0 -1557456.245274105) / Math.Sqrt((634588861.660568 / (18)) + (745319168.7778459 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.18310722120459302 = (1316411.7481155805 - 1557456.245274105) / 1316411.7481155805 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.4386000817307696 > 1.3466093681640625. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -22.504562737531284 (T) = (0 -1446899.0837933074) / Math.Sqrt((928059572.0549635 / (18)) + (731994032.2148802 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.151911975814779 = (1256084.7653049843 - 1446899.0837933074) / 1256084.7653049843 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.3327526025641026 > 1.1773359883284682. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.586368120245666 (T) = (0 -1336087.5274149585) / Math.Sqrt((791346709.3021358 / (18)) + (850739331.9149085 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.20568930350100967 = (1108152.4266121513 - 1336087.5274149585) / 1108152.4266121513 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_FromStream<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
794.49 μs 866.92 μs 1.09 0.04 True
323.53 μs 402.69 μs 1.24 0.12 True
310.28 μs 364.51 μs 1.17 0.06 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_FromStream&lt;IndexViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_FromStream<IndexViewModel>.DataContractSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 866.9164316901407 > 837.4161993009868. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.170099885950346 (T) = (0 -889721.545381903) / Math.Sqrt((143724417.26061973 / (18)) + (123348055.92248167 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.12454392741904459 = (791184.3403253392 - 889721.545381903) / 791184.3403253392 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_FromStream<IndexViewModel>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 402.6889882097069 > 342.39005621502923. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -36.486148136736 (T) = (0 -412119.3085330444) / Math.Sqrt((60266632.482187405 / (17)) + (91023965.16597034 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.277065198178079 = (322708.1194609274 - 412119.3085330444) / 322708.1194609274 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_FromStream<IndexViewModel>.XmlSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 364.50804282945745 > 325.36902132147765. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -23.275536022356107 (T) = (0 -352377.944568242) / Math.Sqrt((45990010.70038061 / (18)) + (62089310.71272102 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.15727357747410772 = (304489.7519714831 - 352377.944568242) / 304489.7519714831 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Devirtualization.EqualityComparer

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
338.90 ns 431.74 ns 1.27 0.12 True
346.14 ns 421.82 ns 1.22 0.12 True
342.46 ns 414.93 ns 1.21 0.08 True
378.50 ns 437.31 ns 1.16 0.14 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Devirtualization.EqualityComparer*'
### Payloads [Baseline]() [Compare]() ### Devirtualization.EqualityComparer.ValueTupleCompare #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 431.739387793579 > 368.29335895922105. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.272283174857485 (T) = (0 -425.87519324161053) / Math.Sqrt((86.27976930870527 / (17)) + (68.76213567776234 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2397060613051092 = (343.52916915907264 - 425.87519324161053) / 343.52916915907264 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Devirtualization.EqualityComparer.ValueTupleCompareNoOpt #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 421.82357133172513 > 368.24140233244833. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -33.749995185786624 (T) = (0 -426.6424991393998) / Math.Sqrt((74.19190702160438 / (18)) + (57.92295437669437 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.232516516860237 = (346.1556038423293 - 426.6424991393998) / 346.1556038423293 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Devirtualization.EqualityComparer.ValueTupleCompareCached #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 414.9318469866225 > 361.7479122126743. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.97964685731957 (T) = (0 -423.8634808781961) / Math.Sqrt((88.84193746062631 / (18)) + (119.90917706448363 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2535214585714309 = (338.1381929921247 - 423.8634808781961) / 338.1381929921247 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Devirtualization.EqualityComparer.ValueTupleCompareWrapped #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 437.3142456139087 > 389.26724777246636. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -34.111069414750325 (T) = (0 -446.632384676421) / Math.Sqrt((62.08177653672823 / (18)) + (75.67875601745254 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.21942905516237052 = (366.2635253651149 - 446.632384676421) / 366.2635253651149 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_ToStream<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
84.10 μs 93.27 μs 1.11 0.05 True
152.31 μs 180.58 μs 1.19 0.05 True
261.03 μs 311.97 μs 1.20 0.06 True
84.80 μs 101.63 μs 1.20 0.03 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToStream&lt;IndexViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_ToStream<IndexViewModel>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 93.2698353293413 > 85.97365984738614. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -22.22340131522494 (T) = (0 -92557.0038303549) / Math.Sqrt((3744665.480823367 / (18)) + (3180996.9095322294 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.14967817387082782 = (80506.88091148727 - 92557.0038303549) / 80506.88091148727 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<IndexViewModel>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 180.5849026115909 > 158.81996442387688. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.763173873688952 (T) = (0 -176187.03247974635) / Math.Sqrt((10251598.25558615 / (18)) + (10437585.093471874 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.18468604576512473 = (148720.44210325502 - 176187.03247974635) / 148720.44210325502 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<IndexViewModel>.DataContractJsonSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 311.96890573916136 > 278.1798974495328. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.35173496969224 (T) = (0 -310265.590126417) / Math.Sqrt((83287463.62154184 / (18)) + (24408730.39600014 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.18797615680594307 = (261171.56337599724 - 310265.590126417) / 261171.56337599724 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<IndexViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 101.62920735613464 > 92.3796066059963. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.918357653087465 (T) = (0 -101775.39182797892) / Math.Sqrt((4442399.560239838 / (17)) + (2163589.4883202477 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.183606929498191 = (85987.49237732853 - 101775.39182797892) / 85987.49237732853 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_FromStream<Location>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
20.71 μs 22.82 μs 1.10 0.08 True
9.26 μs 11.28 μs 1.22 0.14 True
25.67 μs 28.26 μs 1.10 0.09 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_FromStream&lt;Location&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_FromStream<Location>.DataContractSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 22.816871255208916 > 21.95304550004367. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -11.6455510558076 (T) = (0 -22822.514286854897) / Math.Sqrt((527503.204337406 / (18)) + (144462.64271629264 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.10252252937109851 = (20700.27022474845 - 22822.514286854897) / 20700.27022474845 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_FromStream<Location>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 11.275944533118127 > 9.783411370253734. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -24.23475077259742 (T) = (0 -11200.043470426124) / Math.Sqrt((101470.69096856036 / (18)) + (43195.40039162 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.21727646678613027 = (9200.903636949977 - 11200.043470426124) / 9200.903636949977 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_FromStream<Location>.XmlSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 28.258553030303027 > 27.64756781902207. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -16.655186423049642 (T) = (0 -29300.378233901294) / Math.Sqrt((686487.6461545463 / (18)) + (386536.9529833784 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.14324042686126434 = (25629.23558812969 - 29300.378233901294) / 25629.23558812969 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_FromStream<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.61 ms 3.10 ms 1.19 0.13 True
2.98 ms 4.12 ms 1.38 0.08 True
11.52 ms 12.93 ms 1.12 0.01 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_FromStream&lt;CollectionsOfPrimitives&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_FromStream<CollectionsOfPrimitives>.XmlSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.0954125024999994 > 2.6886442392636236. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.0210121626591 (T) = (0 -3083372.371065663) / Math.Sqrt((3586835989.2626457 / (18)) + (5526800413.906998 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.2329972415578169 = (2500713.1136562885 - 3083372.371065663) / 2500713.1136562885 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_FromStream<CollectionsOfPrimitives>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.116425643589743 > 3.3030322842859494. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -45.0405277969634 (T) = (0 -4242542.913749321) / Math.Sqrt((9332002331.122923 / (18)) + (6380217224.529597 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3870555463083685 = (3058668.3604999078 - 4242542.913749321) / 3058668.3604999078 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_FromStream<CollectionsOfPrimitives>.DataContractSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 12.92504365873016 > 12.117231742500003. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.11880611244559 (T) = (0 -12812003.37519321) / Math.Sqrt((16449504009.123787 / (18)) + (9316567239.160631 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.11306517840173935 = (11510559.869989002 - 12812003.37519321) / 11510559.869989002 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_FromString<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
221.01 μs 239.75 μs 1.08 0.07 True
96.04 μs 108.00 μs 1.12 0.07 True
106.95 μs 126.07 μs 1.18 0.08 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromString&lt;IndexViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_FromString<IndexViewModel>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 239.7539823467548 > 231.06830627596833. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -11.670594564016662 (T) = (0 -236269.77680900582) / Math.Sqrt((52656675.42593769 / (17)) + (25306111.930214304 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.10625960633118685 = (213575.34475345607 - 236269.77680900582) / 213575.34475345607 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromString<IndexViewModel>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 108.00494257015306 > 100.30185233611616. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -23.19707907226298 (T) = (0 -109312.77640172826) / Math.Sqrt((5988323.133640125 / (18)) + (3765538.5794186946 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.16261959787218233 = (94022.82277177478 - 109312.77640172826) / 94022.82277177478 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromString<IndexViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 126.06962422715053 > 111.51469913982905. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.384461331319095 (T) = (0 -126411.4722770983) / Math.Sqrt((7919547.039170949 / (18)) + (7090291.316311213 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.20796752390111184 = (104648.07188595143 - 126411.4722770983) / 104648.07188595143 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<StructRecord>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.23 μs 4.02 μs 1.25 0.10 True
3.55 μs 4.44 μs 1.25 0.09 True
3.73 μs 4.53 μs 1.21 0.11 True
4.84 μs 6.13 μs 1.27 0.08 True
2.56 μs 2.96 μs 1.16 0.16 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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;StructRecord&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.02413099404609 > 3.3776880022284606. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.6156195964019 (T) = (0 -3947.8460874558186) / Math.Sqrt((8178.715075536391 / (18)) + (5728.929418194408 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.25614682510149883 = (3142.8221674140887 - 3947.8460874558186) / 3142.8221674140887 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.443861010478338 > 3.649647359310643. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.498570807108045 (T) = (0 -4268.123131530046) / Math.Sqrt((6751.642745643197 / (18)) + (4308.629860376922 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2499693650069173 = (3414.582189785448 - 4268.123131530046) / 3414.582189785448 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.531774351247794 > 3.9187330917922285. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.04877490796842 (T) = (0 -4508.987435369715) / Math.Sqrt((12034.99846869144 / (18)) + (9293.398808903245 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.23252755623167354 = (3658.3258626326224 - 4508.987435369715) / 3658.3258626326224 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.128259336208022 > 5.126630644444231. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.150351063451012 (T) = (0 -6005.395996966742) / Math.Sqrt((18734.37983652247 / (18)) + (18546.22496055493 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.22560050737651083 = (4899.96206824501 - 6005.395996966742) / 4899.96206824501 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.962522384241494 > 2.724044985370299. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -13.021618679617331 (T) = (0 -2855.28005735454) / Math.Sqrt((7886.301413493113 / (17)) + (6491.542349149552 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.13034543337887675 = (2526.024322334293 - 2855.28005735454) / 2526.024322334293 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. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_ToString<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.39 μs 3.82 μs 1.13 0.16 True
1.60 μs 1.97 μs 1.23 0.10 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToString&lt;LoginViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_ToString<LoginViewModel>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.8232619755351682 > 3.463945175634075. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -16.28472493627693 (T) = (0 -3772.7760242206923) / Math.Sqrt((12399.17322615398 / (18)) + (11075.282195793514 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1569874616563268 = (3260.861633556201 - 3772.7760242206923) / 3260.861633556201 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToString<LoginViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.974153064061321 > 1.7072396635275455. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -22.58975795311055 (T) = (0 -1959.4417981905976) / Math.Sqrt((2826.8874237722675 / (17)) + (2895.0774086036154 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2199289092921922 = (1606.1934291953733 - 1959.4417981905976) / 1606.1934291953733 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
48.97 μs 59.02 μs 1.21 0.05 True
49.04 μs 56.23 μs 1.15 0.09 True
46.63 μs 54.90 μs 1.18 0.05 True
46.39 μs 58.22 μs 1.26 0.03 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;TreeRecord&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 59.01567610062892 > 49.97520930164646. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.430146862225445 (T) = (0 -57001.0434230538) / Math.Sqrt((769967.9807092837 / (18)) + (2159260.738801427 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.20646040683436262 = (47246.50979025422 - 57001.0434230538) / 47246.50979025422 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 56.22712866484186 > 51.28253982968192. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -26.120697577170226 (T) = (0 -57319.4819533094) / Math.Sqrt((1207575.5425548034 / (16)) + (1639627.3791155955 / (37))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (37) - 2, .025) and -0.1872546196498349 = (48279.01362069665 - 57319.4819533094) / 48279.01362069665 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 54.900190321637425 > 49.450939351540335. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.3648710216231 (T) = (0 -55573.678960476194) / Math.Sqrt((713699.8244018814 / (18)) + (1132146.2505879172 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.16934099722758308 = (47525.639734035736 - 55573.678960476194) / 47525.639734035736 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 58.221798107675916 > 49.484388538590544. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.7372400771082 (T) = (0 -55935.24975755464) / Math.Sqrt((1451700.321912752 / (18)) + (985125.8464198576 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2023144403102949 = (46522.97924918775 - 55935.24975755464) / 46522.97924918775 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Net.Primitives.Tests.CredentialCacheTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
431.36 ns 505.76 ns 1.17 0.07 True
599.70 ns 679.34 ns 1.13 0.17 True
560.79 ns 657.81 ns 1.17 0.09 True
475.03 ns 551.27 ns 1.16 0.10 True
743.20 ns 861.62 ns 1.16 0.18 True

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Net.Primitives.Tests.CredentialCacheTests*'
### Payloads [Baseline]() [Compare]() ### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_HostPort(host: "notfound", hostPortCount: 0) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 505.76434284163037 > 467.2217083344371. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -25.092060246229426 (T) = (0 -518.4803113757404) / Math.Sqrt((149.6269575769506 / (18)) + (72.99571508866 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.18372429940176493 = (438.0076607684508 - 518.4803113757404) / 438.0076607684508 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_HostPort(host: "name5", hostPortCount: 10) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 679.3436351764461 > 622.5529723852311. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -22.087705576311574 (T) = (0 -679.0567917519179) / Math.Sqrt((162.7545363912712 / (18)) + (361.6315897686248 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.16564680306306612 = (582.5579326151836 - 679.0567917519179) / 582.5579326151836 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_HostPort(host: "notfound", hostPortCount: 10) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 657.8112007460525 > 584.0956469896344. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -20.316396372207436 (T) = (0 -636.1179097249137) / Math.Sqrt((289.3939805749119 / (18)) + (151.18287121382684 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.16742515270284675 = (544.8896730142917 - 636.1179097249137) / 544.8896730142917 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.ForEach(uriCount: 0, hostPortCount: 0) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 551.2740922415653 > 500.41061011480264. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.58418422230063 (T) = (0 -557.0849651442016) / Math.Sqrt((78.88223047201177 / (17)) + (85.25403124640823 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.16914442253199766 = (476.4894348447829 - 557.0849651442016) / 476.4894348447829 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_Uri(uriString: "http://notfound", uriCount: 0) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 861.6237152874525 > 778.9633688336658. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -23.789731410544796 (T) = (0 -848.8195291390423) / Math.Sqrt((195.82724043295553 / (17)) + (505.56613787756606 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.1636657817576528 = (729.435841841931 - 848.8195291390423) / 729.435841841931 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
295.55 μs 325.08 μs 1.10 0.04 True
291.60 μs 331.77 μs 1.14 0.04 True
296.64 μs 337.01 μs 1.14 0.04 True
286.89 μs 342.87 μs 1.20 0.05 True
300.95 μs 345.87 μs 1.15 0.02 True
292.68 μs 332.13 μs 1.13 0.03 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;ImmutableDictionary&lt;String, String&gt;&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 325.0751732638889 > 306.17720746696136. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -20.575065340095403 (T) = (0 -327994.61042053474) / Math.Sqrt((69090724.2585635 / (18)) + (23490673.163500827 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.15296925405619852 = (284478.19338341826 - 327994.61042053474) / 284478.19338341826 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 331.7730495345745 > 303.90302232221245. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.454942760795255 (T) = (0 -328576.1322728609) / Math.Sqrt((66132709.007410094 / (18)) + (26764289.49410225 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.15865061448032133 = (283585.17068601743 - 328576.1322728609) / 283585.17068601743 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 337.0113558715221 > 318.9747189978966. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -20.53662103246733 (T) = (0 -340932.86614411423) / Math.Sqrt((70707543.78597564 / (18)) + (30583597.618028596 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.15120975968747602 = (296151.820530664 - 340932.86614411423) / 296151.820530664 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 342.86825493920975 > 301.9609455851787. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -18.089594814275067 (T) = (0 -326112.8137728868) / Math.Sqrt((78564851.55941874 / (17)) + (39235111.744185284 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.15236963975537748 = (282993.2363040329 - 326112.8137728868) / 282993.2363040329 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 345.8695657608696 > 317.3085303462463. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -19.24801168367221 (T) = (0 -342550.87509991485) / Math.Sqrt((73949919.58824843 / (18)) + (46847225.70085214 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.14977585292331497 = (297928.39554681577 - 342550.87509991485) / 297928.39554681577 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 332.13095293898806 > 305.86984322048613. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.914689421408056 (T) = (0 -326676.1631625773) / Math.Sqrt((91874061.80767798 / (18)) + (20735190.01938291 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.15011132938411773 = (284038.73157002265 - 326676.1631625773) / 284038.73157002265 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_ToString<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
164.29 μs 190.41 μs 1.16 0.09 True
96.52 μs 111.09 μs 1.15 0.03 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToString&lt;IndexViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_ToString<IndexViewModel>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 190.40935869182394 > 172.21848775189181. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.260587464519787 (T) = (0 -187953.20302628737) / Math.Sqrt((30000034.1228794 / (18)) + (18791511.36740324 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1566340757544568 = (162500.14327451665 - 187953.20302628737) / 162500.14327451665 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToString<IndexViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 111.09433582443653 > 101.35760877419405. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.235347424880764 (T) = (0 -111266.16547206658) / Math.Sqrt((2964957.878041049 / (18)) + (3204790.1871867394 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1637889743052217 = (95606.82213757191 - 111266.16547206658) / 95606.82213757191 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_FromStream<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.10 μs 2.43 μs 1.16 0.09 True
2.44 μs 2.98 μs 1.22 0.14 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromStream&lt;LoginViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_FromStream<LoginViewModel>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.428677149172101 > 2.13615729524325. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.59237541214357 (T) = (0 -2484.5584903449894) / Math.Sqrt((2473.0944690291517 / (18)) + (3572.898933342693 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.2336735304198138 = (2013.951364831103 - 2484.5584903449894) / 2013.951364831103 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromStream<LoginViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.9751474804724714 > 2.471312222087222. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.185315762491918 (T) = (0 -2929.8198446047613) / Math.Sqrt((4435.488275582099 / (18)) + (6055.188243295102 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2636367294807442 = (2318.5617956900383 - 2929.8198446047613) / 2318.5617956900383 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.33 μs 1.49 μs 1.12 0.18 False
897.91 ns 988.10 ns 1.10 0.31 False

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;Nullable&lt;DateTimeOffset&gt;&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<Nullable<DateTimeOffset>>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.4944947580109764 > 1.4154253721377612. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -10.223340084312996 (T) = (0 -1471.1138135124309) / Math.Sqrt((1982.404422841498 / (18)) + (1554.8341794253336 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.09375898264035601 = (1345.0072976416914 - 1471.1138135124309) / 1345.0072976416914 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. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Nullable<DateTimeOffset>>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 988.0972994835927 > 942.3260513187477. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.458985659920357 (T) = (0 -997.7037654970759) / Math.Sqrt((539.1321565940876 / (16)) + (976.5986659337855 / (37))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (16) + (37) - 2, .025) and -0.12655879477653617 = (885.6206796512383 - 997.7037654970759) / 885.6206796512383 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. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
957.38 ns 1.13 μs 1.18 0.09 True
1.61 μs 1.74 μs 1.08 0.24 False

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Document.Tests.Perf_DocumentParse*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: False, TestRandomAccess: False, TestCase: HelloWorld) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.1264550274138945 > 1020.7328204386051. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.062884145870317 (T) = (0 -1088.4351340662563) / Math.Sqrt((709.0531145371004 / (18)) + (426.86569722497984 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.12596709017463018 = (966.6669155467475 - 1088.4351340662563) / 966.6669155467475 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Document.Tests.Perf_DocumentParse.Parse(IsDataIndented: True, TestRandomAccess: True, TestCase: HelloWorld) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.7360890665748392 > 1.6880770980445796. IsChangePoint: Marked as a change because one of 9/26/2023 10:37:55 AM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -8.248987208834336 (T) = (0 -1692.2201976154174) / Math.Sqrt((3817.123808999288 / (17)) + (2384.307013222435 / (38))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (38) - 2, .025) and -0.090063647168407 = (1552.4049462718956 - 1692.2201976154174) / 1552.4049462718956 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. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
90.42 μs 104.76 μs 1.16 0.05 True
86.05 μs 101.03 μs 1.17 0.05 True
95.63 μs 109.38 μs 1.14 0.03 True
99.07 μs 111.34 μs 1.12 0.04 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;IndexViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 104.76074966666667 > 95.53475224382268. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.790866163901775 (T) = (0 -106394.20802246884) / Math.Sqrt((3624834.063084359 / (17)) + (1723704.9172901032 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.1863744720100046 = (89680.12253518181 - 106394.20802246884) / 89680.12253518181 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 101.02652773008242 > 91.3104855263088. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -24.134253936458645 (T) = (0 -101647.16040475616) / Math.Sqrt((6144084.950849399 / (18)) + (2735976.286557755 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.18064710078447202 = (86094.44798298956 - 101647.16040475616) / 86094.44798298956 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 109.37670510912699 > 101.21396986859958. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -37.000888807404536 (T) = (0 -110494.8965720645) / Math.Sqrt((2402045.1810932225 / (18)) + (1456888.7934069103 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1617232855444362 = (95112.9222827634 - 110494.8965720645) / 95112.9222827634 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 111.34339330357143 > 101.65607347826086. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -34.672981448783 (T) = (0 -111658.00494633187) / Math.Sqrt((2648878.6760069467 / (18)) + (2051774.2957430503 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.16396229096781076 = (95929.22881847876 - 111658.00494633187) / 95929.22881847876 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<BinaryData>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.19 μs 2.39 μs 1.09 0.03 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;BinaryData&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<BinaryData>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.391813685179503 > 2.3542465535913397. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -16.37492149526613 (T) = (0 -2400.3761970792484) / Math.Sqrt((1159.7539235451482 / (18)) + (1751.0522001000943 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.07821326543411429 = (2226.2536309204097 - 2400.3761970792484) / 2226.2536309204097 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_FromStream<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.15 ms 1.28 ms 1.11 0.11 True
2.47 ms 2.83 ms 1.15 0.04 True
1.20 ms 1.43 ms 1.19 0.06 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromStream&lt;MyEventsListerViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_FromStream<MyEventsListerViewModel>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.2821754853766025 > 1.1926539009375001. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -23.286178622536816 (T) = (0 -1290345.4577360703) / Math.Sqrt((890623445.4973589 / (18)) + (413476075.21902555 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.16353109128791435 = (1108990.9564064892 - 1290345.4577360703) / 1108990.9564064892 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromStream<MyEventsListerViewModel>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.8309880967261902 > 2.6717433890024043. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -15.00307333623543 (T) = (0 -2814986.0704848235) / Math.Sqrt((7933972087.826445 / (18)) + (2105098886.3507128 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.13494255845845302 = (2480289.46443625 - 2814986.0704848235) / 2480289.46443625 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromStream<MyEventsListerViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.4282870908333336 > 1.26673261167559. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.113384601350337 (T) = (0 -1421654.8998584254) / Math.Sqrt((1033300582.4752811 / (17)) + (658007143.3821265 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2034377288206267 = (1181328.1782777845 - 1421654.8998584254) / 1181328.1782777845 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.Tests.Perf_SortedSet

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
37.53 μs 48.95 μs 1.30 0.12 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Tests.Perf_SortedSet*'
### Payloads [Baseline]() [Compare]() ### System.Collections.Tests.Perf_SortedSet.EnumerateViewBetween #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 48.95455671608267 > 39.51252986215445. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -35.45761153612594 (T) = (0 -46467.69762389294) / Math.Sqrt((764089.7498462936 / (18)) + (1137285.4937101165 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.26012987835196605 = (36875.324061567946 - 46467.69762389294) / 36875.324061567946 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
8.76 μs 9.71 μs 1.11 0.10 True
5.42 μs 6.61 μs 1.22 0.12 True
4.28 μs 4.82 μs 1.13 0.18 True
9.65 μs 11.00 μs 1.14 0.10 True
8.31 μs 9.52 μs 1.14 0.12 True

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ColdStartSerialization&lt;SimpleStructWithProperties&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>.NewCustomizedOptions #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 9.712841817450744 > 9.296932394747751. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -19.130489399719824 (T) = (0 -9936.1976129974) / Math.Sqrt((43630.59597579553 / (18)) + (60574.66374166589 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1398542585676292 = (8717.077238877439 - 9936.1976129974) / 8717.077238877439 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>.CachedDefaultOptions #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.606493880480166 > 5.858786106010968. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.633350514220886 (T) = (0 -6804.326666512386) / Math.Sqrt((25834.0554916284 / (18)) + (21277.87265292527 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.23255394078114455 = (5520.510252232912 - 6804.326666512386) / 5520.510252232912 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>.CachedJsonSerializerContext #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.820259760718364 > 4.537024381046. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -18.78954242118353 (T) = (0 -4987.590213150228) / Math.Sqrt((18302.294793006622 / (18)) + (12640.234336261625 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.16123655456848032 = (4295.068212870404 - 4987.590213150228) / 4295.068212870404 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>.NewCachedCustomConverter #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 10.999105404411765 > 10.399715907287824. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.988920803701436 (T) = (0 -11088.05048409153) / Math.Sqrt((86945.94888138084 / (18)) + (46918.39250823814 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.1455539003201807 = (9679.204514944635 - 11088.05048409153) / 9679.204514944635 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>.NewDefaultOptions #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 9.51945890842014 > 8.639404233387708. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.964270570929783 (T) = (0 -9525.965883202985) / Math.Sqrt((82162.192619365 / (17)) + (34897.6761038224 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.13557703943678145 = (8388.656649774843 - 9525.965883202985) / 8388.656649774843 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_ToString<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.95 ms 2.67 ms 1.36 0.09 True
631.44 μs 787.89 μs 1.25 0.12 True
474.49 μs 585.02 μs 1.23 0.11 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToString&lt;CollectionsOfPrimitives&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_ToString<CollectionsOfPrimitives>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.6655536239130435 > 2.063144396595813. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -63.639767127959566 (T) = (0 -2683921.8905367013) / Math.Sqrt((1350174209.563759 / (18)) + (1848427826.4295833 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.36066943075585284 = (1972501.0571052374 - 2683921.8905367013) / 1972501.0571052374 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToString<CollectionsOfPrimitives>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 787.8859095688747 > 674.7101380955496. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.812873440978827 (T) = (0 -768101.6031586758) / Math.Sqrt((330583769.9503309 / (18)) + (241303289.75588146 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2302187326887239 = (624361.816926604 - 768101.6031586758) / 624361.816926604 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToString<CollectionsOfPrimitives>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 585.0236441798943 > 507.0727390576172. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.10397966422885 (T) = (0 -594744.671552764) / Math.Sqrt((151127388.00549772 / (18)) + (236842301.36165017 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.24178420353220148 = (478943.6601472611 - 594744.671552764) / 478943.6601472611 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.CreateAddAndRemove<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.61 ms 2.11 ms 1.31 0.05 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CreateAddAndRemove&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.CreateAddAndRemove<Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.113218188058036 > 1.70460290996875. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -43.4666571782 (T) = (0 -2125997.354965562) / Math.Sqrt((1206875398.3907511 / (17)) + (2333757406.173998 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.31015376052645044 = (1622708.2797604508 - 2125997.354965562) / 1622708.2797604508 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Microsoft.Extensions.Logging.ScopesOverheadBenchmark

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
371.21 ns 423.96 ns 1.14 0.16 False
389.24 ns 409.14 ns 1.05 0.15 False
440.23 ns 468.57 ns 1.06 0.13 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Logging.ScopesOverheadBenchmark*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered(HasISupportLoggingScopeLogger: False, CaptureScopes: True) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 423.96353242383907 > 396.73012548936373. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -15.701211741610194 (T) = (0 -414.4333772940909) / Math.Sqrt((48.48258225620124 / (18)) + (78.93233945361881 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.0907923889425883 = (379.9379070620778 - 414.4333772940909) / 379.9379070620778 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. ``` #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered(HasISupportLoggingScopeLogger: True, CaptureScopes: True) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 409.1372821309707 > 405.79195768424813. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -10.590693236058188 (T) = (0 -412.3874457718748) / Math.Sqrt((123.17167681446078 / (18)) + (63.01648554206119 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.08116986369528123 = (381.4270630540834 - 412.3874457718748) / 381.4270630540834 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. ``` #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered_InsideScope(HasISupportLoggingScopeLogger: True, CaptureScopes: False) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 468.5667347341572 > 459.58918136187356. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -10.148072777772903 (T) = (0 -470.04902071363784) / Math.Sqrt((132.9191283980547 / (18)) + (152.6611343428943 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.07903523304884334 = (435.61971501662794 - 470.04902071363784) / 435.61971501662794 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. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Reflection.Activator<EmptyStruct>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
365.04 ns 484.84 ns 1.33 0.09 True
280.60 ns 343.52 ns 1.22 0.13 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Reflection.Activator&lt;EmptyStruct&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Reflection.Activator<EmptyStruct>.CreateInstanceType #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 484.84238898704433 > 387.18095148493023. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -20.136024677103222 (T) = (0 -432.1687751307363) / Math.Sqrt((87.81187711753049 / (18)) + (239.582949268007 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1862337680763053 = (364.3200748125531 - 432.1687751307363) / 364.3200748125531 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Reflection.Activator<EmptyStruct>.CreateInstanceGeneric #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 343.5162145176624 > 295.7144327952251. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.118721429622028 (T) = (0 -349.16105225890425) / Math.Sqrt((53.667651200064476 / (18)) + (85.30171268055481 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.24741488002536396 = (279.90771783306343 - 349.16105225890425) / 279.90771783306343 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Threading.Channels.Tests.BoundedChannelPerfTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
587.41 ns 881.11 ns 1.50 0.24 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Threading.Channels.Tests.BoundedChannelPerfTests*'
### Payloads [Baseline]() [Compare]() ### System.Threading.Channels.Tests.BoundedChannelPerfTests.TryWriteThenTryRead #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 881.1096455914419 > 619.996639990325. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -41.68532108609224 (T) = (0 -834.3026455816179) / Math.Sqrt((460.073155222228 / (18)) + (393.46765827640166 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.42978017298212245 = (583.5181249167103 - 834.3026455816179) / 583.5181249167103 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.Sort<IntStruct>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.34 ms 1.79 ms 1.34 0.08 True
495.14 μs 833.23 μs 1.68 0.17 True
1.31 ms 1.79 ms 1.36 0.05 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Sort&lt;IntStruct&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.Sort<IntStruct>.LinqQuery(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.7870257200000002 > 1.3969086114915. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -52.97520980066655 (T) = (0 -1798938.5909415102) / Math.Sqrt((400491292.6522227 / (18)) + (2147756957.427875 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3584736412376357 = (1324235.1830268782 - 1798938.5909415102) / 1324235.1830268782 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Sort<IntStruct>.Array_Comparison(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 833.2252999333333 > 520.5202246159615. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -71.62538636870455 (T) = (0 -816115.4414394068) / Math.Sqrt((134258671.05655405 / (18)) + (490279537.2323998 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.6649846284745989 = (490163.9495537586 - 816115.4414394068) / 490163.9495537586 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.Sort<IntStruct>.LinqOrderByExtension(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.7861455199866667 > 1.390105479028. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -70.06921474397518 (T) = (0 -1794334.178379386) / Math.Sqrt((369074964.7539819 / (18)) + (976851551.8712747 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3650870414733045 = (1314446.7157514042 - 1794334.178379386) / 1314446.7157514042 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_FromStream<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.02 ms 5.49 ms 1.37 0.09 True
9.57 ms 10.65 ms 1.11 0.03 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_FromStream&lt;MyEventsListerViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_FromStream<MyEventsListerViewModel>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 5.493127413333332 > 4.368158223810637. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.250435191849466 (T) = (0 -5330153.826762911) / Math.Sqrt((24685705693.010654 / (18)) + (14484178500.844755 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2993969145038793 = (4102021.304858961 - 5330153.826762911) / 4102021.304858961 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_FromStream<MyEventsListerViewModel>.DataContractSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 10.651625414715719 > 10.099657512561873. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -25.574148477627997 (T) = (0 -10834274.560869055) / Math.Sqrt((30909871461.700867 / (17)) + (22011842729.87521 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.13116527867832106 = (9577976.592004366 - 10834274.560869055) / 9577976.592004366 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.ReadJson<ImmutableSortedDictionary<String, String>>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
377.69 μs 404.60 μs 1.07 0.01 True
364.90 μs 392.66 μs 1.08 0.04 True
368.37 μs 401.22 μs 1.09 0.03 True
367.43 μs 397.92 μs 1.08 0.03 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;ImmutableSortedDictionary&lt;String, String&gt;&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableSortedDictionary<String, String>>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 404.60412474696363 > 398.4940213833841. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.19216558824787 (T) = (0 -411415.76391990436) / Math.Sqrt((55647757.32286631 / (17)) + (40233827.29049944 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.09560645995501739 = (375514.1822884067 - 411415.76391990436) / 375514.1822884067 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableSortedDictionary<String, String>>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 392.65613587454203 > 383.9697748110465. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -18.271749662643867 (T) = (0 -401009.73712890624) / Math.Sqrt((53121362.45974488 / (18)) + (46494281.61139596 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.10406936534883247 = (363210.63668151555 - 401009.73712890624) / 363210.63668151555 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableSortedDictionary<String, String>>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 401.2188646978023 > 387.1881614898256. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.095540297059797 (T) = (0 -398442.7723300567) / Math.Sqrt((95077863.08551228 / (18)) + (27901461.238467522 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.09518894897701062 = (363811.8999486184 - 398442.7723300567) / 363811.8999486184 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableSortedDictionary<String, String>>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 397.9150645956608 > 384.68319777616284. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -19.009792100110346 (T) = (0 -399168.9176130002) / Math.Sqrt((37785251.09443661 / (18)) + (54049454.32024617 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.09872652141741772 = (363301.4310950193 - 399168.9176130002) / 363301.4310950193 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.ReadJson<TreeRecord>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
105.93 μs 130.76 μs 1.23 0.10 True
128.22 μs 149.58 μs 1.17 0.09 True
110.63 μs 135.39 μs 1.22 0.07 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;TreeRecord&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<TreeRecord>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 130.75665012019232 > 113.81969835069442. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.714821491389095 (T) = (0 -134861.75314264547) / Math.Sqrt((6860942.679357298 / (18)) + (10939591.996545054 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.24932826860346344 = (107947.4118466862 - 134861.75314264547) / 107947.4118466862 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<TreeRecord>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 149.57810369897956 > 132.30851307390247. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.90144698918811 (T) = (0 -151426.81717629544) / Math.Sqrt((9983210.002302067 / (18)) + (6685302.346240592 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.22048204131053506 = (124071.319405647 - 151426.81717629544) / 124071.319405647 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<TreeRecord>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 135.3878445723684 > 116.70546813284598. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.40781452015574 (T) = (0 -136100.82647809328) / Math.Sqrt((10604384.204766216 / (18)) + (9099932.938660592 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.23688583422727802 = (110035.07576195971 - 136100.82647809328) / 110035.07576195971 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_ToString<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.47 ms 2.72 ms 1.10 0.07 True
1.58 ms 1.95 ms 1.24 0.04 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToString&lt;MyEventsListerViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_ToString<MyEventsListerViewModel>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.7160118511111118 > 2.5588172902439887. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.796247477492535 (T) = (0 -2795517.1663462487) / Math.Sqrt((8548251525.380272 / (17)) + (2722635417.8892293 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.18041452215903436 = (2368250.401759811 - 2795517.1663462487) / 2368250.401759811 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToString<MyEventsListerViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.9549927444196429 > 1.6639925477837478. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -33.761806313007206 (T) = (0 -1873927.6932557793) / Math.Sqrt((877997997.8097935 / (18)) + (1177246086.9725707 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.19295249050732832 = (1570831.7876589133 - 1873927.6932557793) / 1570831.7876589133 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_FromString<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.74 ms 2.13 ms 1.22 0.04 True
1.78 ms 2.15 ms 1.21 0.04 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromString&lt;CollectionsOfPrimitives&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_FromString<CollectionsOfPrimitives>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.1289410933908046 > 1.808719449967453. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -47.366758744332685 (T) = (0 -2172880.2060168646) / Math.Sqrt((1133376679.3760474 / (18)) + (1322338383.592548 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.27644432496089233 = (1702291.4070955953 - 2172880.2060168646) / 1702291.4070955953 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromString<CollectionsOfPrimitives>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.1506826086956523 > 1.839179152930661. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -39.33561013101001 (T) = (0 -2176834.80201952) / Math.Sqrt((1062357322.6011934 / (18)) + (2593827881.2953777 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2583917192307015 = (1729854.677802787 - 2176834.80201952) / 1729854.677802787 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_FromStream<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.84 ms 2.30 ms 1.25 0.05 True
1.84 ms 2.27 ms 1.23 0.09 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromStream&lt;CollectionsOfPrimitives&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_FromStream<CollectionsOfPrimitives>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.298038533333333 > 1.9384784359649123. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -40.28129852108326 (T) = (0 -2262644.0169523293) / Math.Sqrt((1483451553.800437 / (17)) + (1085734101.2220137 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.23799416971882914 = (1827669.3641184245 - 2262644.0169523293) / 1827669.3641184245 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromStream<CollectionsOfPrimitives>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.2656028846657934 > 1.9714245284521896. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -36.56861765870918 (T) = (0 -2288078.595303733) / Math.Sqrt((1859666523.0299282 / (18)) + (1531209031.7659135 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2380093694310271 = (1848191.6630043793 - 2288078.595303733) / 1848191.6630043793 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
8.84 μs 10.73 μs 1.21 0.05 True
7.97 μs 9.89 μs 1.24 0.08 True
9.48 μs 10.85 μs 1.14 0.07 True
7.51 μs 9.55 μs 1.27 0.11 True
8.49 μs 9.92 μs 1.17 0.10 True
7.85 μs 9.81 μs 1.25 0.11 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;LargeStructWithProperties&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 10.729217944558286 > 9.441469895032755. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.79803741675054 (T) = (0 -11077.664766986336) / Math.Sqrt((26007.89307052965 / (18)) + (56897.60106263863 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.23651757181422708 = (8958.760489536036 - 11077.664766986336) / 8958.760489536036 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 9.891539909467912 > 8.50972622834549. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -34.81294942955182 (T) = (0 -10155.407203186445) / Math.Sqrt((39051.95544441304 / (18)) + (51239.99537798783 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2568734869138012 = (8079.896114383486 - 10155.407203186445) / 8079.896114383486 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 10.84982776437525 > 9.970717927044635. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -26.046015866213857 (T) = (0 -10995.790138373079) / Math.Sqrt((58999.5985096936 / (18)) + (42332.961567672886 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.18696316237581836 = (9263.800669570883 - 10995.790138373079) / 9263.800669570883 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 9.54552280340053 > 7.944046116882546. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -35.65757675136017 (T) = (0 -9480.706010131293) / Math.Sqrt((29565.210967768264 / (18)) + (49139.066312177405 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.25985682717145053 = (7525.224934818001 - 9480.706010131293) / 7525.224934818001 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 9.923046201679341 > 8.7966285674911. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -29.790046961677113 (T) = (0 -9923.807845071593) / Math.Sqrt((38086.972162621634 / (17)) + (31897.34287930712 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.20077542886444943 = (8264.499428054045 - 9923.807845071593) / 8264.499428054045 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 9.805153029356653 > 8.185373835601055. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.308683281328584 (T) = (0 -9362.005800937546) / Math.Sqrt((25091.89051152366 / (17)) + (40780.617516498394 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.2124579679844546 = (7721.509568286808 - 9362.005800937546) / 7721.509568286808 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.69 μs 3.15 μs 1.17 0.10 True
2.10 μs 2.62 μs 1.25 0.14 True
2.84 μs 3.38 μs 1.19 0.12 True
2.43 μs 2.82 μs 1.16 0.10 True
2.10 μs 2.45 μs 1.16 0.12 True
1.79 μs 2.18 μs 1.22 0.17 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;LoginViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.150002526783909 > 2.849674685641903. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -15.976603221172285 (T) = (0 -3057.7749122281575) / Math.Sqrt((12814.509802218892 / (18)) + (4449.23964675648 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.17747436176026282 = (2596.89298683068 - 3057.7749122281575) / 2596.89298683068 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.6233165152789457 > 2.290312075364606. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.741085223167268 (T) = (0 -2623.296728144004) / Math.Sqrt((8276.755515098905 / (17)) + (2826.690051977249 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.24485498243918077 = (2107.3111046267345 - 2623.296728144004) / 2107.3111046267345 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.3819240468922147 > 2.9805676250516586. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -31.56807078765036 (T) = (0 -3397.4595195036527) / Math.Sqrt((5198.85576496983 / (18)) + (3298.1557552163345 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.22046811511243591 = (2783.7347632720916 - 3397.4595195036527) / 2783.7347632720916 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.818715326463041 > 2.4760032725962855. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.986871361140775 (T) = (0 -2930.626143206903) / Math.Sqrt((6802.096893910512 / (18)) + (3696.1550578504516 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.27583885141514647 = (2297.0190474731858 - 2930.626143206903) / 2297.0190474731858 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.4518053588159185 > 2.086557543677289. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.121810624542764 (T) = (0 -2493.681787150849) / Math.Sqrt((4260.930141092751 / (18)) + (3616.5924388014637 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2835482596326129 = (1942.8032942560412 - 2493.681787150849) / 1942.8032942560412 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.1838441325113576 > 1.8937645283212672. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.956217599201445 (T) = (0 -2187.928363301172) / Math.Sqrt((6371.027760224071 / (18)) + (1975.5280799279758 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.2545546374655123 = (1743.9881037953742 - 2187.928363301172) / 1743.9881037953742 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Reflection.Invoke

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
826.10 ns 910.09 ns 1.10 0.09 True
313.38 ns 386.26 ns 1.23 0.20 True
170.39 ns 239.21 ns 1.40 0.30 True
163.28 ns 231.57 ns 1.42 0.21 True
368.47 ns 433.29 ns 1.18 0.19 True
202.68 ns 270.50 ns 1.33 0.24 True

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Reflection.Invoke*'
### Payloads [Baseline]() [Compare]() ### System.Reflection.Invoke.StaticMethod4_ByRefParams_int_string_struct_class #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 910.0923615740742 > 863.4292719375001. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -19.614754676710323 (T) = (0 -912.5655754304394) / Math.Sqrt((258.55461788011166 / (18)) + (348.94056034239185 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.11784785378047899 = (816.3593751548656 - 912.5655754304394) / 816.3593751548656 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Reflection.Invoke.Method0_NoParms #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 386.26107723577235 > 329.66465363125. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.27453014846175 (T) = (0 -391.95034980296595) / Math.Sqrt((61.213406306772264 / (18)) + (80.72284402798057 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.24154875997181674 = (315.6946891170535 - 391.95034980296595) / 315.6946891170535 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Reflection.Invoke.Property_Get_class #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 239.2141414772727 > 178.57667591646634. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -46.27657012947641 (T) = (0 -239.8742668461202) / Math.Sqrt((17.94331426359016 / (18)) + (44.28103342253571 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.4087529051800419 = (170.27419497350652 - 239.8742668461202) / 170.27419497350652 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Reflection.Invoke.Ctor0_NoParams #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 231.57110064338238 > 171.6240341329153. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -53.600583873923995 (T) = (0 -233.5445244357553) / Math.Sqrt((19.627168245313197 / (18)) + (28.892400457752306 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.45763203518410445 = (160.2218658745777 - 233.5445244357553) / 160.2218658745777 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Reflection.Invoke.Ctor0_ActivatorCreateInstance_NoParams #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 433.29219931891026 > 388.2381121027133. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -22.257430645248313 (T) = (0 -441.4469368624657) / Math.Sqrt((149.5561864362308 / (18)) + (172.39100603767733 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.22184356955973702 = (361.29578929775016 - 441.4469368624657) / 361.29578929775016 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Reflection.Invoke.Property_Get_int #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 270.49822944889155 > 213.02806784090913. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.66523379851307 (T) = (0 -275.43883168345343) / Math.Sqrt((29.166032337429115 / (18)) + (204.34085548057698 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3669466419656561 = (201.49932940131083 - 275.43883168345343) / 201.49932940131083 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Threading.Channels.Tests.SpscUnboundedChannelPerfTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
422.69 ns 532.97 ns 1.26 0.19 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Threading.Channels.Tests.SpscUnboundedChannelPerfTests*'
### Payloads [Baseline]() [Compare]() ### System.Threading.Channels.Tests.SpscUnboundedChannelPerfTests.TryWriteThenTryRead #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 532.9657738405571 > 414.0067673157256. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -44.21941570021047 (T) = (0 -546.6456891520535) / Math.Sqrt((129.71264766623216 / (18)) + (176.23239756273338 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.38861955738193704 = (393.66123445840225 - 546.6456891520535) / 393.66123445840225 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_ToStream<XmlElement>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.16 μs 5.23 μs 1.26 0.28 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;XmlElement&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_ToStream<XmlElement>.XmlSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 5.2282282756863125 > 4.550324928696747. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -16.828830457560965 (T) = (0 -5004.76036417245) / Math.Sqrt((33706.100546705035 / (18)) + (24235.241934076752 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.2034457161523826 = (4158.692242616066 - 5004.76036417245) / 4158.692242616066 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.CreateAddAndClear<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.55 ms 2.97 ms 1.17 0.04 True
2.47 ms 2.85 ms 1.15 0.04 True
577.94 μs 714.60 μs 1.24 0.12 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CreateAddAndClear&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.CreateAddAndClear<Int32>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.971788300344234 > 2.6608383860629496. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.225828188777328 (T) = (0 -2941453.3089850545) / Math.Sqrt((2150300924.9583883 / (17)) + (2324968762.501141 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.16467395745082175 = (2525559.4410500564 - 2941453.3089850545) / 2525559.4410500564 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.8459825589700998 > 2.597423344552205. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -28.75855097693081 (T) = (0 -2814071.5433688737) / Math.Sqrt((2156968201.1139193 / (18)) + (1755057731.3293009 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1523003183362467 = (2442133.7897675685 - 2814071.5433688737) / 2442133.7897675685 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 714.6020702110391 > 592.428584486178. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -35.771454708858485 (T) = (0 -728024.5553058109) / Math.Sqrt((319510499.3007909 / (18)) + (274447055.40603524 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3271386318254832 = (548567.0734370914 - 728024.5553058109) / 548567.0734370914 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.62 μs 1.90 μs 1.17 0.17 True
2.44 μs 2.82 μs 1.16 0.12 True
1.48 μs 1.72 μs 1.16 0.10 True
1.26 μs 1.47 μs 1.17 0.14 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;LoginViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.8972669950764076 > 1.7070189942395924. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.60670467221839 (T) = (0 -1894.695836775235) / Math.Sqrt((1240.3004753407997 / (18)) + (1542.580282858564 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1809596192829226 = (1604.3697056514873 - 1894.695836775235) / 1604.3697056514873 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.8196243927287896 > 2.5265882170463025. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -21.196517074999882 (T) = (0 -2803.8126442454613) / Math.Sqrt((5561.935760206597 / (18)) + (5168.784350642315 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.19066966286167925 = (2354.819923358694 - 2803.8126442454613) / 2354.819923358694 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.7175036234106626 > 1.5499716970622117. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.492755070013033 (T) = (0 -1729.5087604095097) / Math.Sqrt((1347.1480532414294 / (18)) + (1303.6530199395281 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.20016140272615737 = (1441.0634740301962 - 1729.5087604095097) / 1441.0634740301962 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.4713267171525337 > 1.3198424627627208. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.90014678167707 (T) = (0 -1485.3572420742746) / Math.Sqrt((755.3132836405952 / (18)) + (723.3650635980393 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.19496981946831116 = (1243.008164620566 - 1485.3572420742746) / 1243.008164620566 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Interop.StructureToPtr

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
869.85 ns 1.08 μs 1.24 0.19 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Interop.StructureToPtr*'
### Payloads [Baseline]() [Compare]() ### Interop.StructureToPtr.MarshalPtrToStructure #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.0826969655961634 > 905.9279594255203. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -26.883772254495465 (T) = (0 -1086.9207493737215) / Math.Sqrt((762.1030412148278 / (18)) + (1026.5349891950636 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.26113191302140176 = (861.8612677635699 - 1086.9207493737215) / 861.8612677635699 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.ContainsKeyTrue<Int32, Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
434.02 μs 612.26 μs 1.41 0.20 True
170.81 μs 241.26 μs 1.41 0.09 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsKeyTrue&lt;Int32, Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.ContainsKeyTrue<Int32, Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 612.259958962912 > 458.7688407638889. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -51.08786645649699 (T) = (0 -608952.9208435272) / Math.Sqrt((84948931.00404811 / (18)) + (238986801.33294433 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.38984497137491425 = (438144.4933682899 - 608952.9208435272) / 438144.4933682899 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.ContainsKeyTrue<Int32, Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 241.25913257575758 > 178.9300578634511. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -67.40123459269701 (T) = (0 -239273.25999465905) / Math.Sqrt((13888216.824550427 / (18)) + (13794957.225803077 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.4370638229605942 = (166501.48460470999 - 239273.25999465905) / 166501.48460470999 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_ToStream<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.93 ms 2.63 ms 1.36 0.10 True
628.43 μs 752.39 μs 1.20 0.08 True
597.65 μs 758.85 μs 1.27 0.17 True
4.96 ms 5.65 ms 1.14 0.06 True

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToStream&lt;CollectionsOfPrimitives&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_ToStream<CollectionsOfPrimitives>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.6293249101754386 > 2.0389906412093333. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -63.58047249400983 (T) = (0 -2620961.0921052024) / Math.Sqrt((1251557113.549572 / (18)) + (1992221265.0348508 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.37511483188792466 = (1905994.3441282127 - 2620961.0921052024) / 1905994.3441282127 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<CollectionsOfPrimitives>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 752.3861873924268 > 650.6243845195233. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -34.83484191389902 (T) = (0 -758150.9074814238) / Math.Sqrt((218987337.1569752 / (18)) + (194350531.33520153 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.23726152405953235 = (612765.2826331197 - 758150.9074814238) / 612765.2826331197 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<CollectionsOfPrimitives>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 758.850195831524 > 635.9539758590249. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.28553268882141 (T) = (0 -762976.5514263606) / Math.Sqrt((325280348.9185233 / (18)) + (201309425.04844543 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.25815086668492665 = (606426.9171762448 - 762976.5514263606) / 606426.9171762448 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<CollectionsOfPrimitives>.DataContractJsonSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 5.6503922527131785 > 5.367228706033434. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -14.93428444280272 (T) = (0 -5739340.660242778) / Math.Sqrt((40259182423.05347 / (17)) + (11176556414.811676 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.1553504960762361 = (4967618.640174164 - 5739340.660242778) / 4967618.640174164 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Microsoft.Extensions.Logging.FormattingOverhead

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.74 μs 2.06 μs 1.18 0.12 True
377.72 ns 418.05 ns 1.11 0.10 False

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Logging.FormattingOverhead*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.Logging.FormattingOverhead.TwoArguments_DefineMessage #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.0615117758717663 > 1.8076802479951517. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -22.720323384905505 (T) = (0 -2011.3247316359798) / Math.Sqrt((1879.1727764820496 / (17)) + (2135.5008833770667 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.1716830886656846 = (1716.6115574190637 - 2011.3247316359798) / 1716.6115574190637 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.Logging.FormattingOverhead.NoArguments #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 418.05247366943775 > 397.3741085602027. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -10.636559363810514 (T) = (0 -404.47489254349813) / Math.Sqrt((86.79792815352086 / (18)) + (66.81848677481675 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.07291265351691617 = (376.9877177025212 - 404.47489254349813) / 376.9877177025212 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. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.CtorFromCollection<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
109.84 μs 139.66 μs 1.27 0.17 True
1.36 ms 1.62 ms 1.19 0.07 True
1.40 ms 1.60 ms 1.15 0.09 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CtorFromCollection&lt;String&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.CtorFromCollection<String>.SortedDictionaryDeepCopy(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 139.6611730457227 > 113.81647124869862. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -34.42047898694364 (T) = (0 -140704.26000884591) / Math.Sqrt((13959314.987452792 / (18)) + (9111861.594359495 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.32851547856032076 = (105910.89248077382 - 140704.26000884591) / 105910.89248077382 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CtorFromCollection<String>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.6202994802083333 > 1.425998470049716. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.126859778765684 (T) = (0 -1654739.1261246684) / Math.Sqrt((675601482.6092482 / (17)) + (1169058115.9086094 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.24163108553665075 = (1332713.9964520673 - 1654739.1261246684) / 1332713.9964520673 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CtorFromCollection<String>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.6048608339583337 > 1.4054638611328123. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -27.678480073826893 (T) = (0 -1582506.161716476) / Math.Sqrt((1073839093.2047372 / (18)) + (977068154.7113525 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1936870227769582 = (1325729.5518175112 - 1582506.161716476) / 1325729.5518175112 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Microsoft.Extensions.Logging.Formatting

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.74 μs 2.00 μs 1.15 0.11 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Logging.Formatting*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.Logging.Formatting.TwoArguments #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.00177602464628 > 1.8291222544434345. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -26.319096471943833 (T) = (0 -2002.6403299286892) / Math.Sqrt((889.2819067588752 / (17)) + (2512.4504582057803 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.16835306591476926 = (1714.0711899109963 - 2002.6403299286892) / 1714.0711899109963 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Json_ToStream<Location>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.55 μs 4.11 μs 1.16 0.05 True
7.91 μs 8.98 μs 1.13 0.07 True
5.88 μs 6.90 μs 1.17 0.11 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToStream&lt;Location&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Json_ToStream<Location>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.109260476971885 > 3.6446119638215193. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.625397930331186 (T) = (0 -4173.845340844573) / Math.Sqrt((7637.331489582885 / (18)) + (4766.8979373675475 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.20937270944434103 = (3451.248162166889 - 4173.845340844573) / 3451.248162166889 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<Location>.DataContractJsonSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 8.980954066397329 > 8.236313699746807. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -17.59628721142565 (T) = (0 -8697.842858652559) / Math.Sqrt((44844.54661619079 / (18)) + (28303.318775456253 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.13051119787869228 = (7693.72552432326 - 8697.842858652559) / 7693.72552432326 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<Location>.JsonNet_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.901227006952724 > 6.410998039081235. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -16.593746546650806 (T) = (0 -7035.336183476817) / Math.Sqrt((64946.51128373502 / (18)) + (29805.923699760464 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.186371793657225 = (5930.127655672768 - 7035.336183476817) / 5930.127655672768 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_ToStream<ClassImplementingIXmlSerialiable>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.45 μs 5.10 μs 1.14 0.11 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;ClassImplementingIXmlSerialiable&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_ToStream<ClassImplementingIXmlSerialiable>.XmlSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 5.095897372151347 > 4.528598974120508. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -23.43307602000103 (T) = (0 -5034.678429495347) / Math.Sqrt((11839.485173677014 / (18)) + (15278.503213230842 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.1807899843585489 = (4263.822098923358 - 5034.678429495347) / 4263.822098923358 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.ContainsKeyFalse<Int32, Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
169.90 μs 243.92 μs 1.44 0.08 True
484.94 μs 658.71 μs 1.36 0.16 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsKeyFalse&lt;Int32, Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.ContainsKeyFalse<Int32, Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 243.92139447115386 > 178.89860149979097. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -66.12530180214596 (T) = (0 -242183.45563113084) / Math.Sqrt((17273431.45946859 / (18)) + (10575756.964997195 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.438252398574439 = (168387.31217912602 - 242183.45563113084) / 168387.31217912602 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.ContainsKeyFalse<Int32, Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 658.7127407852565 > 516.1961885153519. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -43.363248296131296 (T) = (0 -674882.082037649) / Math.Sqrt((188530772.23216656 / (18)) + (298560539.4795555 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.3825233750244318 = (488152.3844222327 - 674882.082037649) / 488152.3844222327 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.CreateAddAndClear<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.53 ms 2.82 ms 1.12 0.08 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CreateAddAndClear&lt;String&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.CreateAddAndClear<String>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 2.8197272743506496 > 2.629768999942424. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -24.47703252438364 (T) = (0 -2819810.5238956413) / Math.Sqrt((2579183625.738779 / (18)) + (2018412578.8049114 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1390745548181631 = (2475527.6219349694 - 2819810.5238956413) / 2475527.6219349694 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
5.61 μs 6.41 μs 1.14 0.09 True
5.51 μs 6.85 μs 1.24 0.09 True
5.38 μs 6.95 μs 1.29 0.12 True

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive&lt;Location&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive<Location>.CaseInsensitiveNotMatching #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.411442858233037 > 5.64780741535862. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.066601383377055 (T) = (0 -6526.690684830123) / Math.Sqrt((22560.945116144987 / (18)) + (12574.138267137112 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.22530726946790572 = (5326.574686579933 - 6526.690684830123) / 5326.574686579933 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive<Location>.CaseInsensitiveMatching #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.854876975562647 > 5.74937615655009. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -22.83761115750542 (T) = (0 -6523.43277608973) / Math.Sqrt((36869.50002783274 / (18)) + (18500.644069338334 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.2161226319090106 = (5364.124147455064 - 6523.43277608973) / 5364.124147455064 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadMissingAndCaseInsensitive<Location>.Baseline #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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.949841622202461 > 5.638923713648717. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -30.26213580054006 (T) = (0 -6641.6298659743015) / Math.Sqrt((26288.949170852073 / (17)) + (14919.911628234207 / (37))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (17) + (37) - 2, .025) and -0.25185982321503686 = (5305.4101927460315 - 6641.6298659743015) / 5305.4101927460315 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.CtorFromCollectionNonGeneric<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
193.80 μs 255.14 μs 1.32 0.14 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CtorFromCollectionNonGeneric&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.CtorFromCollectionNonGeneric<Int32>.Hashtable(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 255.13729515027327 > 204.5068374866453. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -40.05078217725934 (T) = (0 -262750.901217583) / Math.Sqrt((40256160.12725376 / (18)) + (34278690.85837209 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.37190716792623996 = (191522.36197931264 - 262750.901217583) / 191522.36197931264 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in MicroBenchmarks.Serializers.Xml_ToStream<SimpleStructWithProperties>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
7.72 μs 8.53 μs 1.11 0.13 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;SimpleStructWithProperties&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_ToStream<SimpleStructWithProperties>.XmlSerializer_ #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 8.532759191462842 > 8.186076277520428. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -25.913052810444498 (T) = (0 -8921.206127495365) / Math.Sqrt((16508.58096781116 / (18)) + (47127.05219460208 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.15881603073637837 = (7698.552566472797 - 8921.206127495365) / 7698.552566472797 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in Exceptions.Handling

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
7.94 μs 9.63 μs 1.21 0.14 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Exceptions.Handling*'
### Payloads [Baseline]() [Compare]() ### Exceptions.Handling.ThrowAndCatchFinally(kind: Hardware) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 9.628172331256492 > 8.53046373524138. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -32.32773745808441 (T) = (0 -9648.656969814676) / Math.Sqrt((25724.604451459487 / (18)) + (32752.747729664956 / (36))) is less than -2.0066468050606243 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (36) - 2, .025) and -0.19337228690713212 = (8085.20281195832 - 9648.656969814676) / 8085.20281195832 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Tests.Perf_String

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
241.61 μs 338.06 μs 1.40 0.15 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_String*'
### Payloads [Baseline]() [Compare]() ### System.Tests.Perf_String.Concat_CharEnumerable #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 338.0626886398176 > 259.2857078853047. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -38.08905657971487 (T) = (0 -334207.9358052758) / Math.Sqrt((74500701.01305683 / (18)) + (71702430.06863153 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.39071512991776586 = (240313.7268126491 - 334207.9358052758) / 240313.7268126491 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Threading.Channels.Tests.UnboundedChannelPerfTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
347.32 ns 423.75 ns 1.22 0.27 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Threading.Channels.Tests.UnboundedChannelPerfTests*'
### Payloads [Baseline]() [Compare]() ### System.Threading.Channels.Tests.UnboundedChannelPerfTests.TryWriteThenTryRead #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 423.75337621299644 > 371.5695603919702. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -20.779446707137286 (T) = (0 -434.75557324707637) / Math.Sqrt((126.43469679079114 / (18)) + (349.2493620079887 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.24058880317858217 = (350.4429284974721 - 434.75557324707637) / 350.4429284974721 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Linq.Tests.Perf_OrderBy

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.06 ms 1.48 ms 1.40 0.05 True
1.41 ms 1.92 ms 1.36 0.06 True

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Linq.Tests.Perf_OrderBy*'
### Payloads [Baseline]() [Compare]() ### System.Linq.Tests.Perf_OrderBy.OrderByCustomComparer(NumberOfPeople: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.4846765491071432 > 1.0962752279006411. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -63.13751571244851 (T) = (0 -1468213.7714960638) / Math.Sqrt((647704789.03597 / (18)) + (481275226.7275396 / (35))) is less than -2.007583770314729 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (35) - 2, .025) and -0.43527167013138757 = (1022951.8230243203 - 1468213.7714960638) / 1022951.8230243203 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### System.Linq.Tests.Perf_OrderBy.OrderByValueType(NumberOfPeople: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 1.9160060102163463 > 1.4995020318323864. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -62.185003565863994 (T) = (0 -1964607.8742392845) / Math.Sqrt((774463350.9031647 / (18)) + (1286831966.1590774 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.38734501384121944 = (1416091.782965915 - 1964607.8742392845) / 1416091.782965915 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline fc5c29692fc1a92426b7d1ce8c501e7696062bb6
Compare 1be2db9f75035a01e1955a33b35743018b6d85a6
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.CreateAddAndRemove<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.86 ms 3.19 ms 1.12 0.04 True

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CreateAddAndRemove&lt;String&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.CreateAddAndRemove<String>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` 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. 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 3.193857141125542 > 3.0009200805499034. IsChangePoint: Marked as a change because one of 9/26/2023 3:02:05 PM, 10/4/2023 10:43:01 PM falls between 9/26/2023 10:37:55 AM and 10/4/2023 10:43:01 PM. IsRegressionStdDev: Marked as regression because -18.02344780655936 (T) = (0 -3182282.379075613) / Math.Sqrt((5289551261.192844 / (18)) + (3546963567.4533677 / (37))) is less than -2.005745995316835 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (18) + (37) - 2, .025) and -0.1258849748234726 = (2826472.0199988126 - 3182282.379075613) / 2826472.0199988126 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 as regression because Edge Detector said so. ``` #### JIT Disasms ### Docs [Profiling workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/profiling-workflow-dotnet-runtime.md) [Benchmarking workflow for dotnet/runtime repository](https://github.com/dotnet/performance/blob/master/docs/benchmarking-workflow-dotnet-runtime.md)
radekdoulik commented 1 year ago

Looks like duplicate of https://github.com/dotnet/perf-autofiling-issues/issues/22385