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: 62 Improvements on 8/11/2023 7:16:47 PM #20645

Open performanceautofiler[bot] opened 1 year ago

performanceautofiler[bot] commented 1 year ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Tests.Perf_BitArray

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
859.65 ns 800.78 ns 0.93 0.08 False

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_BitArray*'
### Payloads [Baseline]() [Compare]() ### System.Collections.Tests.Perf_BitArray.BitArrayLeftShift(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 52.61534266415685 (T) = (0 -799.6164682923534) / Math.Sqrt((2.099308546903102 / (2)) + (1.8725157562835844 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.06938055015896384 = (859.2303421435474 - 799.6164682923534) / 859.2303421435474 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
5.71 μs 3.27 μs 0.57 0.33 False

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>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 52.459259584946125 (T) = (0 -3285.4250774011134) / Math.Sqrt((1228.5059192060999 / (2)) + (12816.780983859939 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.42912896332499295 = (5755.109063750739 - 3285.4250774011134) / 5755.109063750739 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Memory.Span<Char>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
159.98 ns 73.38 ns 0.46 0.25 False
95.55 ns 61.39 ns 0.64 0.50 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.Memory.Span&lt;Char&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Memory.Span<Char>.Reverse(Size: 4) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 57.27456122140709 (T) = (0 -73.20233855944805) / Math.Sqrt((3.3103170122019745 / (2)) + (5.904562955871161 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.5475932057082502 = (161.8064526949634 - 73.20233855944805) / 161.8064526949634 is greater than 0.05. IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so. ``` #### JIT Disasms ### System.Memory.Span<Char>.Clear(Size: 33) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 34.635371994889944 (T) = (0 -63.069443574612606) / Math.Sqrt((0.048759829284957916 / (2)) + (8.04321512212705 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.3578547247004599 = (98.21678364789454 - 63.069443574612606) / 98.21678364789454 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Text.Json.Tests.Perf_Basic

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
72.23 ms 31.97 ms 0.44 0.33 False

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.Tests.Perf_Basic*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf16(Formatted: True, SkipValidation: False, DataSize: 100000) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 29.13377298799003 (T) = (0 -32437247.48588599) / Math.Sqrt((2934777861957.7656 / (2)) + (1966246000836.7126 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.5403528801141065 = (70569891.73333333 - 32437247.48588599) / 70569891.73333333 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.IO.Tests.StreamReaderReadLineTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
80.06 μs 56.29 μs 0.70 0.08 False

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.StreamReaderReadLineTests*'
### Payloads [Baseline]() [Compare]() ### System.IO.Tests.StreamReaderReadLineTests.ReadLine(LineLengthRange: [1025, 2048]) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 19.244644414348894 (T) = (0 -56173.07071444484) / Math.Sqrt((2381196.178456125 / (2)) + (480821.66595417965 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.2770078243702665 = (77695.26781602792 - 56173.07071444484) / 77695.26781602792 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.CreateAddAndClear<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.12 ms 1.96 ms 0.63 0.17 False
239.95 μs 144.13 μs 0.60 0.08 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.Collections.CreateAddAndClear&lt;String&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.CreateAddAndClear<String>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 37.965645961863416 (T) = (0 -1952111.7682660115) / Math.Sqrt((2231875647.5185037 / (2)) + (641036203.7351099 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.40213233584141633 = (3265123.513601191 - 1952111.7682660115) / 3265123.513601191 is greater than 0.05. IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so. ``` #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.IDictionary(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 82.76955612836073 (T) = (0 -144860.5634666221) / Math.Sqrt((2158238.6248247353 / (2)) + (2711314.5052833483 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4049032702339689 = (243423.55825678227 - 144860.5634666221) / 243423.55825678227 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Globalization.Tests.StringSearch

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
307.86 ns 205.01 ns 0.67 0.25 False

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.Globalization.Tests.StringSearch*'
### Payloads [Baseline]() [Compare]() ### System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (, IgnoreCase, False)) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 6.402931170736899 (T) = (0 -191.40974525555694) / Math.Sqrt((949.9277612297612 / (2)) + (47.00016917092081 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.42314052284275977 = (331.81347075863766 - 191.40974525555694) / 331.81347075863766 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.CtorFromCollection<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
83.19 μs 45.83 μs 0.55 0.33 False

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>.ConcurrentStack(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 75.71532253854997 (T) = (0 -46058.96065269207) / Math.Sqrt((14676.720728093162 / (2)) + (1848657.020918669 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4452697992820955 = (83029.48098568426 - 46058.96065269207) / 83029.48098568426 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
17.67 ns 14.77 ns 0.84 0.50 False

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.Runtime.Intrinsics.Tests.Perf_Vector128Of&lt;Byte&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.ConditionalSelectBenchmark #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 10.18499455095626 (T) = (0 -14.762658438694261) / Math.Sqrt((0.012147453017241863 / (2)) + (1.1955235701945337 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.21387995612297397 = (18.779140099121562 - 14.762658438694261) / 18.779140099121562 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Xml_ToStream<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
19.82 μs 12.95 μs 0.65 0.25 False

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;LoginViewModel&gt;*'
### Payloads [Baseline]() [Compare]() ### MicroBenchmarks.Serializers.Xml_ToStream<LoginViewModel>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 17.09571325105975 (T) = (0 -12776.67749516221) / Math.Sqrt((343151.1397140696 / (2)) + (88741.87247732664 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.3638169795749116 = (20083.336217657958 - 12776.67749516221) / 20083.336217657958 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tests.Perf_VectorOf<UInt32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
15.25 ns 13.16 ns 0.86 0.08 False

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.Numerics.Tests.Perf_VectorOf&lt;UInt32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Numerics.Tests.Perf_VectorOf<UInt32>.ZeroBenchmark #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 29.8926818838249 (T) = (0 -13.137066683268703) / Math.Sqrt((0.004996697600998947 / (2)) + (0.031106305871848674 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.15386572311696978 = (15.525983336430624 - 13.137066683268703) / 15.525983336430624 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tests.Perf_VectorOf<Single>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
604.30 ns 294.50 ns 0.49 0.25 False

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.Numerics.Tests.Perf_VectorOf&lt;Single&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Numerics.Tests.Perf_VectorOf<Single>.GetHashCodeBenchmark #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 22.345685432395776 (T) = (0 -293.42486083245717) / Math.Sqrt((418.5311887690268 / (2)) + (55.77753135494037 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.5282700657290029 = (622.0187431732749 - 293.42486083245717) / 622.0187431732749 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Threading.Tests.Perf_Interlocked

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
65.02 ns 42.62 ns 0.66 0.17 False

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.Tests.Perf_Interlocked*'
### Payloads [Baseline]() [Compare]() ### System.Threading.Tests.Perf_Interlocked.Increment_int #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 86.94558574754382 (T) = (0 -42.51165203670569) / Math.Sqrt((0.047279669129986227 / (2)) + (0.37703213128738966 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.3523640409106857 = (65.64127800513774 - 42.51165203670569) / 65.64127800513774 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Sort<IntClass>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
853.09 μs 441.89 μs 0.52 0.17 False

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;IntClass&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.Sort<IntClass>.LinqQuery(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 96.7448493250678 (T) = (0 -450307.87486717035) / Math.Sqrt((12256728.678370154 / (2)) + (88880321.48326778 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4714599157343672 = (851984.34002 - 450307.87486717035) / 851984.34002 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Tests.Perf_SortedSet

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
89.17 ns 68.60 ns 0.77 0.42 False

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.Min #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 16.603795170024075 (T) = (0 -69.7222768794042) / Math.Sqrt((1.1124519220082165 / (2)) + (7.69782773673669 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.22687490377816483 = (90.18240026113261 - 69.7222768794042) / 90.18240026113261 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.ContainsTrueComparer<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
292.99 μs 173.03 μs 0.59 0.33 False

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>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 62.97574847395244 (T) = (0 -170400.02451233173) / Math.Sqrt((2619808.504654845 / (2)) + (13265917.4556674 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.389020672207913 = (278896.5465134656 - 170400.02451233173) / 278896.5465134656 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Double>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
358.58 ns 175.61 ns 0.49 0.42 False

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.Runtime.Intrinsics.Tests.Perf_Vector128Of&lt;Double&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Double>.GetHashCodeBenchmark #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 21.718292931606538 (T) = (0 -182.6770157240328) / Math.Sqrt((90.1367177419852 / (2)) + (72.99408683360016 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4667261525964585 = (342.55761202892177 - 182.6770157240328) / 342.55761202892177 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
14.90 ms 7.80 ms 0.52 0.08 False

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_EnumerateObject*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Document.Tests.Perf_EnumerateObject.Parse(TestCase: ObjectProperties) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 29.883227503162086 (T) = (0 -7976785.546037947) / Math.Sqrt((92808664399.30669 / (2)) + (35695231140.56961 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.457970389050482 = (14716512.502083333 - 7976785.546037947) / 14716512.502083333 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.IterateForEachNonGeneric<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
67.50 μs 40.83 μs 0.60 0.33 False

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.IterateForEachNonGeneric&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.IterateForEachNonGeneric<Int32>.Queue(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 53.410618416218206 (T) = (0 -41130.47133892383) / Math.Sqrt((21685.67858838211 / (2)) + (1826361.4561128803 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.3883871415787439 = (67249.19329703611 - 41130.47133892383) / 67249.19329703611 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Diagnostics.Tracing.Perf_EventListener

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.85 μs 1.05 μs 0.57 0.17 False

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.Tracing.Perf_EventListener*'
### Payloads [Baseline]() [Compare]() ### System.Diagnostics.Tracing.Perf_EventListener.WriteEvent_StringParams #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 24.183251834094786 (T) = (0 -1059.4620461166217) / Math.Sqrt((2101.828122247034 / (2)) + (760.3904427750225 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.43589082692576625 = (1878.115259751683 - 1059.4620461166217) / 1878.115259751683 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Xml.Linq.Perf_XElement

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.05 μs 628.67 ns 0.60 0.25 False

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.Xml.Linq.Perf_XElement*'
### Payloads [Baseline]() [Compare]() ### System.Xml.Linq.Perf_XElement.GetValue #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 6.003251383493193 (T) = (0 -689.6157122392308) / Math.Sqrt((0.7984110655587715 / (2)) + (27657.219315454513 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.33856955321184795 = (1042.6125915248442 - 689.6157122392308) / 1042.6125915248442 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.IO.Tests.BinaryWriterExtendedTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.17 ms 1.06 ms 0.91 0.08 False

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.BinaryWriterExtendedTests*'
### Payloads [Baseline]() [Compare]() ### System.IO.Tests.BinaryWriterExtendedTests.WriteAsciiCharArray(StringLengthInChars: 2000000) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 104.10902393353688 (T) = (0 -1061406.1621453373) / Math.Sqrt((745689.1274246257 / (2)) + (5452485.779268397 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.09150275536297814 = (1168309.7207074175 - 1061406.1621453373) / 1168309.7207074175 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
332.84 μs 184.60 μs 0.55 0.17 False

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>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 77.85017499700025 (T) = (0 -186184.7274415279) / Math.Sqrt((5439709.772691201 / (2)) + (14133147.385042336 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4696830010897229 = (351081.95253802906 - 186184.7274415279) / 351081.95253802906 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
20.97 μs 11.20 μs 0.53 0.17 False

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>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 19.056489344874258 (T) = (0 -11161.130675937156) / Math.Sqrt((558280.6249255859 / (2)) + (30151.0820940645 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.47593255876999324 = (21297.126663204923 - 11161.130675937156) / 21297.126663204923 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Text.Json.Tests.Perf_Strings

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.04 secs 417.45 ms 0.40 0.25 False

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.Tests.Perf_Strings*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Tests.Perf_Strings.WriteStringsUtf8(Formatted: False, SkipValidation: False, Escaped: NoneEscaped) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 28.3543614825575 (T) = (0 -422466295.6607372) / Math.Sqrt((935207096255588.2 / (2)) + (260412492221059.56 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.6001596419814895 = (1056587428.4285715 - 422466295.6607372) / 1056587428.4285715 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tests.Perf_BigInteger

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
152.80 ns 119.97 ns 0.79 0.08 False
722.87 ns 487.13 ns 0.67 0.17 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.Numerics.Tests.Perf_BigInteger*'
### Payloads [Baseline]() [Compare]() ### System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 16,16 bits) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 10.882679826237943 (T) = (0 -119.31887663547367) / Math.Sqrt((21.52881348500239 / (2)) + (9.162566256103455 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.2394041022332579 = (156.8755195575169 - 119.31887663547367) / 156.8755195575169 is greater than 0.05. IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so. ``` #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Add(arguments: 1024,1024 bits) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 9.628686337270011 (T) = (0 -492.1368313064306) / Math.Sqrt((1311.9243060199783 / (2)) + (16.41128484752122 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.33416717917333794 = (739.1297273321854 - 492.1368313064306) / 739.1297273321854 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Double

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.88 μs 1.72 μs 0.60 0.25 False

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_Double*'
### Payloads [Baseline]() [Compare]() ### System.Tests.Perf_Double.ToStringWithFormat(value: -1.7976931348623157E+308, format: "G17") #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 68.04041738548459 (T) = (0 -1725.2922801370896) / Math.Sqrt((260.6385655261839 / (2)) + (1370.27384994118 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4064903684837954 = (2906.9322358418776 - 1725.2922801370896) / 2906.9322358418776 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Single

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.79 μs 1.59 μs 0.57 0.42 False

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_Single*'
### Payloads [Baseline]() [Compare]() ### System.Tests.Perf_Single.ToStringWithFormat(value: 12345, format: "G") #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 22.3208340975681 (T) = (0 -1505.834213288731) / Math.Sqrt((5038.568284155647 / (2)) + (2640.037948197562 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4417236951657268 = (2697.2920044237676 - 1505.834213288731) / 2697.2920044237676 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Concurrent.IsEmpty<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
27.00 ns 8.28 ns 0.31 0.58 False

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.Concurrent.IsEmpty&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.Concurrent.IsEmpty<Int32>.Stack(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 54.33322975573337 (T) = (0 -8.463322962999955) / Math.Sqrt((0.019751352803657238 / (2)) + (0.8550374629588563 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.6868765121942402 = (27.02870686037457 - 8.463322962999955) / 27.02870686037457 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Runtime.Intrinsics.Tests.Perf_Vector128Int

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
18.21 ns 14.54 ns 0.80 0.42 False

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.Runtime.Intrinsics.Tests.Perf_Vector128Int*'
### Payloads [Baseline]() [Compare]() ### System.Runtime.Intrinsics.Tests.Perf_Vector128Int.BitwiseOrBenchmark #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 14.290143306635128 (T) = (0 -13.982674393265658) / Math.Sqrt((0.03936315846562728 / (2)) + (0.5789198197862422 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.2366780007466532 = (18.318186043298883 - 13.982674393265658) / 18.318186043298883 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Boolean

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
110.36 ns 101.68 ns 0.92 0.08 False

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_Boolean*'
### Payloads [Baseline]() [Compare]() ### System.Tests.Perf_Boolean.Parse(value: "TRUE") #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 5.388624053014893 (T) = (0 -100.86714710943887) / Math.Sqrt((6.584428892866012 / (2)) + (1.125855936155742 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.0900680152287867 = (110.8513040508189 - 100.86714710943887) / 110.8513040508189 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.TryAddGiventSize<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
178.82 μs 99.40 μs 0.56 0.17 False

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.TryAddGiventSize&lt;String&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.TryAddGiventSize<String>.Dictionary(Count: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 76.71525543647368 (T) = (0 -99869.49293872426) / Math.Sqrt((352138.8418115369 / (2)) + (6483332.591119528 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4327679634905255 = (176064.6199627269 - 99869.49293872426) / 176064.6199627269 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Guid

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
546.00 ns 395.28 ns 0.72 0.08 False

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_Guid*'
### Payloads [Baseline]() [Compare]() ### System.Tests.Perf_Guid.NewGuid #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 56.55996590689596 (T) = (0 -395.5616264201015) / Math.Sqrt((7.355132462737804 / (2)) + (34.62263308841379 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.2880348861327008 = (555.5913045675281 - 395.5616264201015) / 555.5913045675281 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
481.74 ns 208.93 ns 0.43 0.08 False
19.10 μs 13.68 μs 0.72 0.08 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.DependencyInjection.ActivatorUtilitiesBenchmark*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark.Factory_3Explicit #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 132.39058738649948 (T) = (0 -215.2224003902191) / Math.Sqrt((1.074166227842126 / (2)) + (26.806209707553396 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.5481042482009999 = (476.26559783626476 - 215.2224003902191) / 476.26559783626476 is greater than 0.05. IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so. ``` #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.ActivatorUtilitiesBenchmark.CreateInstance_4 #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 42.58100159209829 (T) = (0 -13873.36408696753) / Math.Sqrt((5862.465514546048 / (2)) + (136428.2173444792 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.30259833617743287 = (19892.932303782385 - 13873.36408696753) / 19892.932303782385 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Sort<IntStruct>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.49 ms 1.00 ms 0.67 0.08 False

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 not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 57.72021084555927 (T) = (0 -1006634.5589268452) / Math.Sqrt((125815692.4523552 / (2)) + (61109962.42926302 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.3250578411962926 = (1491438.2600000002 - 1006634.5589268452) / 1491438.2600000002 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Enum

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
502.96 ns 341.99 ns 0.68 0.08 False

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_Enum*'
### Payloads [Baseline]() [Compare]() ### System.Tests.Perf_Enum.ToString_NonFlags_Small(value: TopDirectoryOnly) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 102.08551408462277 (T) = (0 -344.01878409191784) / Math.Sqrt((0.35671067238624404 / (2)) + (21.177525915449962 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.33280300653643347 = (515.6180070687078 - 344.01878409191784) / 515.6180070687078 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in GuardedDevirtualization.TwoClassInterface

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
63.89 ns 33.66 ns 0.53 0.33 False

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 'GuardedDevirtualization.TwoClassInterface*'
### Payloads [Baseline]() [Compare]() ### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.10) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 42.252921287368494 (T) = (0 -28.61293752943668) / Math.Sqrt((0.0017859287336463672 / (2)) + (5.610055196763935 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.553052132625304 = (64.01851226521055 - 28.61293752943668) / 64.01851226521055 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Text.Tests.Perf_Encoding

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
508.77 ns 284.58 ns 0.56 0.33 False

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.Tests.Perf_Encoding*'
### Payloads [Baseline]() [Compare]() ### System.Text.Tests.Perf_Encoding.GetBytes(size: 16, encName: "ascii") #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 36.22058505945947 (T) = (0 -284.7213304240743) / Math.Sqrt((39.0022681747215 / (2)) + (86.38181063427864 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.41184868087769794 = (484.0953699618728 - 284.7213304240743) / 484.0953699618728 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_String

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
771.90 ns 452.81 ns 0.59 0.42 False

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.Replace_String(text: "This is a very nice sentence", oldValue: "nice", newValue: "bad") #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 27.402105015160615 (T) = (0 -462.5921939729472) / Math.Sqrt((174.53238038015445 / (2)) + (251.29278428055724 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.3922128741044553 = (761.1089051801487 - 462.5921939729472) / 761.1089051801487 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
786.50 ns 423.39 ns 0.54 0.42 False

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.Caching.Memory.Tests.MemoryCacheTests*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests.TryGetValueHit #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 16.178206224033197 (T) = (0 -436.48393242369536) / Math.Sqrt((736.6022510059314 / (2)) + (650.3066355376012 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.44005986521728585 = (779.518925881378 - 436.48393242369536) / 779.518925881378 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_DateTime

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
794.19 ns 420.55 ns 0.53 0.25 False

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_DateTime*'
### Payloads [Baseline]() [Compare]() ### System.Tests.Perf_DateTime.ToString(format: "s") #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 19.09398460115792 (T) = (0 -393.4290379369363) / Math.Sqrt((841.2847046398632 / (2)) + (129.20508468135327 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.5035505184706949 = (792.4855450044666 - 393.4290379369363) / 792.4855450044666 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.IO.Tests.BinaryWriterTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
100.10 ns 71.81 ns 0.72 0.33 False

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.BinaryWriterTests*'
### Payloads [Baseline]() [Compare]() ### System.IO.Tests.BinaryWriterTests.WriteDouble #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 30.428532082696314 (T) = (0 -73.61021728083162) / Math.Sqrt((0.20388288372952312 / (2)) + (4.668866034125517 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.25499058034704075 = (98.80441151350915 - 73.61021728083162) / 98.80441151350915 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Single>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
20.30 ns 13.60 ns 0.67 0.58 False

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.Runtime.Intrinsics.Tests.Perf_Vector128Of&lt;Single&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Single>.BitwiseOrOperatorBenchmark #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 8.357460501854744 (T) = (0 -13.762605382892977) / Math.Sqrt((0.4508738300953077 / (2)) + (0.40111618599626225 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.2417249516705314 = (18.149885603136923 - 13.762605382892977) / 18.149885603136923 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.IndexerSet<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
40.69 μs 20.08 μs 0.49 0.17 False

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;String&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Collections.IndexerSet<String>.List(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 111.94603774273227 (T) = (0 -19924.04009153142) / Math.Sqrt((139.3142126859541 / (2)) + (282739.25758434134 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.5139310292648525 = (40990.15014555982 - 19924.04009153142) / 40990.15014555982 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in Devirtualization.EqualityComparer

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
298.85 ns 195.48 ns 0.65 0.25 False

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.ValueTupleCompareCached #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 6.467980411024681 (T) = (0 -213.25472492914542) / Math.Sqrt((0.8838637745062525 / (2)) + (1530.8070152240537 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.2957923472174467 = (302.829320423467 - 213.25472492914542) / 302.829320423467 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
19.59 μs 10.48 μs 0.53 0.25 False

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>.MissingProperties #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 15.70835311106294 (T) = (0 -10884.023804595963) / Math.Sqrt((540832.2404405402 / (2)) + (72335.38002172497 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4327708610759422 = (19188.05480487339 - 10884.023804595963) / 19188.05480487339 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.CreateAddAndRemove<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
90.77 μs 50.01 μs 0.55 0.17 False

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>.Queue(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 42.467816284434996 (T) = (0 -51004.12548105568) / Math.Sqrt((1349621.863584049 / (2)) + (1225319.548429542 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.43105560082080385 = (89646.94187101276 - 51004.12548105568) / 89646.94187101276 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
181.99 ms 102.45 ms 0.56 0.17 False

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.Configuration.ConfigurationBinderBenchmarks*'
### Payloads [Baseline]() [Compare]() ### Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks.Get(ConfigurationProvidersCount: 32, KeysCountPerProvider: 10) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 19.477201185350324 (T) = (0 -102582413.12002063) / Math.Sqrt((38222526287938.79 / (2)) + (6567568532379.991 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4587804102200075 = (189539357.14285713 - 102582413.12002063) / 189539357.14285713 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Threading.Tests.Perf_Timer

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.46 μs 1.40 μs 0.57 0.25 False

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.Tests.Perf_Timer*'
### Payloads [Baseline]() [Compare]() ### System.Threading.Tests.Perf_Timer.LongScheduleAndDispose #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 11.711600855147797 (T) = (0 -1413.1852496083382) / Math.Sqrt((12172.033079458824 / (2)) + (858.2884948000183 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.394745035749868 = (2334.8594114534435 - 1413.1852496083382) / 2334.8594114534435 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Memory.Span<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
101.25 ns 71.82 ns 0.71 0.42 False

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.Memory.Span&lt;Byte&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Memory.Span<Byte>.IndexOfAnyFourValues(Size: 33) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 24.427546665675724 (T) = (0 -73.69070941016052) / Math.Sqrt((0.004323520203873471 / (2)) + (8.303460524533387 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.2526535712098423 = (98.6031465079117 - 73.69070941016052) / 98.6031465079117 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Memory.Span<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
52.86 ns 38.56 ns 0.73 0.33 False

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.Memory.Span&lt;Int32&gt;*'
### Payloads [Baseline]() [Compare]() ### System.Memory.Span<Int32>.IndexOfAnyThreeValues(Size: 4) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 8.977577143427627 (T) = (0 -39.6401415932376) / Math.Sqrt((2.843750958416704 / (2)) + (4.135046831391555 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.23974302322649385 = (52.140450932089365 - 39.6401415932376) / 52.140450932089365 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in Benchmark.GetChildKeysTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
97.21 ms 86.69 ms 0.89 0.08 False

graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Benchmark.GetChildKeysTests*'
### Payloads [Baseline]() [Compare]() ### Benchmark.GetChildKeysTests.AddChainedConfigurationEmpty #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 11.700030633179635 (T) = (0 -86859236.09816277) / Math.Sqrt((982376539056.125 / (2)) + (2033202964875.2986 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.10417660749191333 = (96960223.21428572 - 86859236.09816277) / 96960223.21428572 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Reflection.Invoke

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.59 μs 940.32 ns 0.59 0.25 False

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.Property_Set_int #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 45.13724277384616 (T) = (0 -948.0713261315794) / Math.Sqrt((381.9640175507004 / (2)) + (654.9815431237372 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4402241670571613 = (1693.66248118895 - 948.0713261315794) / 1693.66248118895 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Text.Json.Tests.Utf8JsonReaderCommentsTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.87 μs 1.02 μs 0.55 0.25 False

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.Tests.Utf8JsonReaderCommentsTests*'
### Payloads [Baseline]() [Compare]() ### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Skip, SegmentSize: 100, TestCase: ShortMultiLine) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 31.838695722157023 (T) = (0 -1022.6511463565708) / Math.Sqrt((1293.6553288081532 / (2)) + (569.5002399661113 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4548171097439996 = (1875.7946454929402 - 1022.6511463565708) / 1875.7946454929402 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Perf_Convert

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.10 μs 960.69 ns 0.87 0.08 False

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.Perf_Convert*'
### Payloads [Baseline]() [Compare]() ### System.Perf_Convert.ToHexString #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 15.080904041965416 (T) = (0 -968.716200117729) / Math.Sqrt((153.19081427478565 / (2)) + (68.54372776436763 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.12561966296386076 = (1107.8888203288711 - 968.716200117729) / 1107.8888203288711 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.IO.Tests.Perf_FileStream

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
131.44 μs 77.67 μs 0.59 0.08 False
45.73 μs 39.23 μs 0.86 0.08 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.IO.Tests.Perf_FileStream*'
### Payloads [Baseline]() [Compare]() ### System.IO.Tests.Perf_FileStream.WriteByte(fileSize: 1024, options: None) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 25.75211703717694 (T) = (0 -76023.1402394989) / Math.Sqrt((7953180.7888235515 / (2)) + (1233344.5541143217 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.4077461816322122 = (128362.43158214433 - 76023.1402394989) / 128362.43158214433 is greater than 0.05. IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so. ``` #### JIT Disasms ### System.IO.Tests.Perf_FileStream.CopyToFile(fileSize: 1024, options: None) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 13.486924446943544 (T) = (0 -39233.82966194964) / Math.Sqrt((281968.42123424535 / (2)) + (160076.42764283222 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.12121083506188116 = (44645.32703326212 - 39233.82966194964) / 44645.32703326212 is greater than 0.05. 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 b35572540e0904c6a23dc5466f73c361ed877dc1
Compare 616f758160b388363cdcb93e944bda443e206c84
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.IterateForEach<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
43.24 μs 25.20 μs 0.58 0.42 False

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>.Queue(Size: 512) #### ETL Files #### Histogram #### Description of detection logic ``` IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsRegressionBase: Marked as not a regression because the compare was not 5% greater than the baseline, or the value was too small. IsImprovementBase: Marked as improvement because the compare was 5% less than the baseline, and the value was not too small. IsImprovementCheck: Marked as improvement because the three check build points were 0.05 less than the baseline. IsImprovementWindowed: Marked as improvement because we could not find enough baseline builds for window checking. IsChangePoint: Marked as a change because one of 8/10/2023 8:47:51 AM, 8/17/2023 8:30:03 PM falls between 8/8/2023 9:37:01 AM and 8/17/2023 8:30:03 PM. IsImprovementStdDev: Marked as improvement because 38.363748652486365 (T) = (0 -24787.386479572335) / Math.Sqrt((96782.19131111247 / (2)) + (1656366.7209521397 / (8))) is greater than 2.306004135204172 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (2) + (8) - 2, .975) and 0.43890387548119947 = (44176.72016685225 - 24787.386479572335) / 44176.72016685225 is greater than 0.05. 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)