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: 1864 Improvements on 5/13/2024 9:18:56 PM #34801

Open performanceautofiler[bot] opened 1 month ago

performanceautofiler[bot] commented 1 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3de068c2be232960f4cb3b233dd2b4014e2ce7c3
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
51.70 μs 43.26 μs 0.84 0.14 False
58.14 μs 49.38 μs 0.85 0.10 False
57.78 μs 50.28 μs 0.87 0.09 False
59.04 μs 51.60 μs 0.87 0.11 False
51.25 μs 45.12 μs 0.88 0.08 False
50.37 μs 46.03 μs 0.91 0.11 False
49.89 μs 43.75 μs 0.88 0.11 False
55.80 μs 49.48 μs 0.89 0.11 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

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;*'
### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<TreeRecord>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Text.Encodings.Web.Tests.Perf_Encoders

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
124.94 ns 105.53 ns 0.84 0.22 False
100.28 ns 90.48 ns 0.90 0.27 False
129.19 ns 115.90 ns 0.90 0.23 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Encodings.Web.Tests.Perf_Encoders*'
### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf16(arguments: UnsafeRelaxed,hello "there",16) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf16(arguments: JavaScript,no escaping required,16) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Encodings.Web.Tests.Perf_Encoders.EncodeUtf16(arguments: Url,�2020,16) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Text.Json.Tests.Perf_Base64

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
316.47 ns 251.58 ns 0.79 0.21 False
328.05 ns 254.39 ns 0.78 0.23 False

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_Base64*'
### System.Text.Json.Tests.Perf_Base64.WriteByteArrayAsBase64_NoEscaping(NumberOfBytes: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Base64.WriteByteArrayAsBase64_HeavyEscaping(NumberOfBytes: 100) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.ContainsTrue<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
165.11 μs 126.07 μs 0.76 0.19 False
3.53 ms 2.30 ms 0.65 0.46 False
3.25 ms 2.40 ms 0.74 0.50 False
3.49 ms 2.30 ms 0.66 0.38 False
3.29 ms 2.35 ms 0.71 0.44 False
40.77 μs 32.06 μs 0.79 0.32 False
39.00 μs 34.16 μs 0.88 0.33 False
636.05 μs 522.47 μs 0.82 0.18 False
4.19 ms 2.30 ms 0.55 0.43 False
2.10 ms 1.33 ms 0.63 0.31 False
3.49 ms 2.40 ms 0.69 0.40 False
3.54 ms 2.30 ms 0.65 0.40 False
6.00 ms 4.15 ms 0.69 0.41 False
691.87 μs 528.56 μs 0.76 0.20 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsTrue&lt;String&gt;*'
### System.Collections.ContainsTrue<String>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.ICollection(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.LinkedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.FrozenSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.List(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.Span(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.ImmutableArray(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.Array(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrue<String>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 7ce5d0fdf728bb2ae213541b17c2e489d2b06d09
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in LinqBenchmarks

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.78 secs 1.86 secs 0.67 0.45 False
1.09 secs 810.02 ms 0.74 0.24 False
11.62 secs 9.25 secs 0.80 0.30 False
29.27 secs 24.07 secs 0.82 0.15 False
16.13 secs 12.54 secs 0.78 0.22 False
2.06 secs 1.53 secs 0.74 0.30 False
1.42 secs 1.17 secs 0.82 0.27 False
1.78 secs 1.48 secs 0.83 0.19 False
416.24 ms 329.69 ms 0.79 0.36 False
1.20 secs 1.02 secs 0.85 0.39 False
18.11 secs 14.56 secs 0.80 0.21 False
17.31 secs 13.95 secs 0.81 0.24 False
1.23 secs 998.03 ms 0.81 0.40 False
17.93 secs 13.93 secs 0.78 0.24 False
3.96 secs 3.27 secs 0.83 0.38 False
26.21 secs 23.55 secs 0.90 0.27 False
2.42 secs 1.93 secs 0.80 0.41 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'LinqBenchmarks*'
### LinqBenchmarks.Where00LinqMethodX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.Where01ForX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.CountBy00LinqMethodX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.AggregateBy00GroupByX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.GroupBy00LinqMethodX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.Where01LinqMethodNestedX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.Count00ForX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.Where00ForX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.Order00ManualX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.Where01LinqMethodX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.CountBy00LookupX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.GroupBy00AggregateByX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.Where01LinqQueryX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.CountBy00GroupByX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.Count00LinqMethodX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.CountBy00AggregateByX #### ETL Files #### Histogram #### JIT Disasms ### LinqBenchmarks.Where00LinqQueryX #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Reflection.Attributes

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.31 μs 1.23 μs 0.94 0.12 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.Attributes*'
### System.Reflection.Attributes.GetCustomAttributesClassMiss #### ETL Files #### Histogram #### 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 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
111.11 ns 87.35 ns 0.79 0.36 False
91.88 ns 77.93 ns 0.85 0.35 False
60.86 ns 43.57 ns 0.72 0.36 False
94.79 ns 74.04 ns 0.78 0.38 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Concurrent.Count&lt;Int32&gt;*'
### System.Collections.Concurrent.Count<Int32>.Bag(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.Count<Int32>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.Count<Int32>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.Count<Int32>.Queue_EnqueueCountDequeue(Size: 512) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Xml_FromStream<ClassImplementingIXmlSerialiable>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
9.40 μs 8.45 μs 0.90 0.06 False
5.30 μs 4.57 μs 0.86 0.10 False

graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_FromStream&lt;ClassImplementingIXmlSerialiable&gt;*'
### MicroBenchmarks.Serializers.Xml_FromStream<ClassImplementingIXmlSerialiable>.XmlSerializer_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_FromStream<ClassImplementingIXmlSerialiable>.DataContractSerializer_ #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
219.08 ns 191.75 ns 0.88 0.15 False
215.21 ns 183.67 ns 0.85 0.18 False
246.02 ns 190.91 ns 0.78 0.17 False
238.97 ns 187.64 ns 0.79 0.19 False
730.81 ns 663.45 ns 0.91 0.04 False
185.90 ns 161.91 ns 0.87 0.23 False
203.14 ns 156.06 ns 0.77 0.18 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Single*'
### System.Tests.Perf_Single.TryParse(value: "-3.4028235E+38") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Single.TryParse(value: "3.4028235E+38") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Single.Parse(value: "3.4028235E+38") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Single.Parse(value: "-3.4028235E+38") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Single.ToStringWithFormat(value: 12345, format: "F50") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Single.TryParse(value: "12345") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Single.Parse(value: "12345") #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.ContainsFalse<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
14.43 μs 10.87 μs 0.75 0.52 False
177.91 μs 137.90 μs 0.78 0.26 False
4.70 μs 4.01 μs 0.85 0.23 False
60.92 μs 54.06 μs 0.89 0.16 False
10.54 ms 7.35 ms 0.70 0.29 False
68.37 μs 63.23 μs 0.92 0.12 False
90.78 μs 76.56 μs 0.84 0.16 False
76.09 μs 60.31 μs 0.79 0.25 False
70.48 μs 56.86 μs 0.81 0.14 False
65.21 μs 53.31 μs 0.82 0.13 False
117.18 μs 91.08 μs 0.78 0.12 False
1.42 ms 1.16 ms 0.82 0.14 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsFalse&lt;Int32&gt;*'
### System.Collections.ContainsFalse<Int32>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.FrozenSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.Array(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.ImmutableArray(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.ICollection(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<Int32>.LinkedList(Size: 512) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
285.55 ns 205.84 ns 0.72 0.31 False
1.20 μs 1.11 μs 0.93 0.18 False
281.96 ns 222.60 ns 0.79 0.29 False
531.74 ns 428.40 ns 0.81 0.29 False
663.04 ns 538.82 ns 0.81 0.23 False
1.15 μs 956.85 ns 0.83 0.15 False
515.33 ns 449.31 ns 0.87 0.23 False
663.17 ns 555.51 ns 0.84 0.18 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

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;Int32&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<Int32>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Int32>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Int32>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Int32>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Int32>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Int32>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Int32>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Int32>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Text.Json.Tests.Perf_Reader

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
17.46 μs 15.37 μs 0.88 0.25 False
1.97 μs 1.62 μs 0.82 0.30 False
2.49 μs 2.15 μs 0.86 0.21 False
295.50 ns 227.58 ns 0.77 0.27 False
257.91 ns 233.89 ns 0.91 0.23 False
5.81 μs 5.20 μs 0.90 0.21 False
4.65 μs 4.15 μs 0.89 0.31 False
153.65 μs 134.45 μs 0.88 0.23 False
118.41 μs 105.18 μs 0.89 0.33 False
297.61 ns 252.83 ns 0.85 0.31 False
4.12 μs 3.39 μs 0.82 0.48 False
3.63 μs 2.90 μs 0.80 0.47 False
1.95 μs 1.57 μs 0.81 0.27 False
245.82 ns 201.43 ns 0.82 0.37 False
4.07 μs 3.76 μs 0.92 0.30 False
21.20 μs 18.72 μs 0.88 0.27 False
154.04 μs 134.27 μs 0.87 0.27 False
516.92 ns 442.60 ns 0.86 0.28 False
16.34 μs 13.28 μs 0.81 0.23 False
13.02 μs 11.21 μs 0.86 0.39 False
12.79 μs 10.72 μs 0.84 0.33 False
4.10 μs 3.47 μs 0.85 0.38 False
4.90 μs 4.24 μs 0.86 0.22 False
20.17 μs 18.11 μs 0.90 0.30 False
8.42 μs 6.62 μs 0.79 0.37 False
547.15 ns 451.20 ns 0.82 0.21 False
9.11 μs 7.69 μs 0.84 0.29 False
10.36 μs 8.45 μs 0.82 0.37 False
15.78 μs 14.12 μs 0.89 0.24 False
169.39 μs 157.22 μs 0.93 0.13 False
3.05 μs 2.77 μs 0.91 0.44 False
6.38 μs 5.69 μs 0.89 0.26 False
131.10 μs 115.92 μs 0.88 0.33 False
130.32 μs 104.15 μs 0.80 0.31 False
2.11 μs 1.87 μs 0.89 0.34 False
4.32 μs 3.28 μs 0.76 0.38 False
1.77 μs 1.54 μs 0.87 0.36 False
8.00 μs 6.68 μs 0.83 0.37 False
1.55 μs 1.44 μs 0.93 0.38 False
16.48 μs 14.11 μs 0.86 0.40 False
4.73 μs 3.94 μs 0.83 0.33 False
245.01 ns 221.20 ns 0.90 0.34 False

graph graph graph graph graph graph graph graph graph graph graph graph ![graph](<https://pvscmdupload.blob.core.windows.net/autofilereport/autofilereports/05_21_2024/refs/heads/main_x64_ubuntu%2022.04_AOT%3Dtrue

performanceautofiler[bot] commented 1 month ago

_CompilationMode%3Dwasm_RunKind%3Dmicro_Improvement/System.Text.Json.Tests.Perf_Reader_13.png>) graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_Reader*'
### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: Json4KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: Json400B) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: Json400B) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: HelloWorld) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: HelloWorld) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: LotsOfNumbers) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: LotsOfNumbers) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: Json40KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json40KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: HelloWorld) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: Json400B) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: HelloWorld) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: BroadTree) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: False, TestCase: Json40KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: HelloWorld) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: False, TestCase: Json4KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: Json4KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json4KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: BroadTree) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: DeepTree) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: HelloWorld) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: DeepTree) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: DeepTree) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: Json4KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: Json40KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: LotsOfNumbers) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json40KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: Json40KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json400B) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: False, TestCase: LotsOfStrings) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: Json400B) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: DeepTree) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: True, TestCase: Json400B) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: BroadTree) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: LotsOfNumbers) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: True, TestCase: HelloWorld) #### ETL Files #### Histogram #### 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 2ecc177a5fcfa5a1f7c9ab60125ade171fb4d750
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in GuardedDevirtualization.ThreeClassVirtual

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
5.67 ns 3.91 ns 0.69 0.24 False
5.84 ns 3.89 ns 0.66 0.21 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 'GuardedDevirtualization.ThreeClassVirtual*'
### GuardedDevirtualization.ThreeClassVirtual.Call(testInput: pB=0.00 pD=1.00) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.ThreeClassVirtual.Call(testInput: pB=0.00 pD=0.00) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
31.10 μs 26.57 μs 0.85 0.10 False
689.50 ns 589.87 ns 0.86 0.13 False
147.81 ns 101.45 ns 0.69 0.42 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable*'
### Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable.Transient #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable.Scoped #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable.Singleton #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Version

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
157.30 ns 132.26 ns 0.84 0.30 False
211.29 ns 179.81 ns 0.85 0.29 False
141.66 ns 117.15 ns 0.83 0.27 False
164.07 ns 142.36 ns 0.87 0.29 False
279.62 ns 211.80 ns 0.76 0.24 False
205.88 ns 167.04 ns 0.81 0.31 False
150.32 ns 134.67 ns 0.90 0.27 False
54.53 ns 47.88 ns 0.88 0.52 False
42.05 ns 32.51 ns 0.77 0.55 False

graph graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Version*'
### System.Tests.Perf_Version.Parse2 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Version.TryParse4 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Version.ToString2 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Version.TryParse3 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Version.Parse4 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Version.Parse3 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Version.ToString3 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Version.TryFormat3 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Version.Ctor4 #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 7ce5d0fdf728bb2ae213541b17c2e489d2b06d09
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
151.75 μs 125.58 μs 0.83 0.15 False
24.60 μs 19.97 μs 0.81 0.32 False
917.23 μs 782.75 μs 0.85 0.07 False
1.64 ms 1.33 ms 0.81 0.17 False
636.75 μs 558.22 μs 0.88 0.14 False
1.49 ms 1.26 ms 0.84 0.15 False
28.09 μs 23.37 μs 0.83 0.26 False
105.85 μs 87.99 μs 0.83 0.24 False
37.92 μs 34.20 μs 0.90 0.07 False
75.35 μs 70.07 μs 0.93 0.27 False
30.83 μs 26.38 μs 0.86 0.33 False
131.41 μs 120.68 μs 0.92 0.23 False
29.19 μs 26.16 μs 0.90 0.27 False
11.19 μs 9.77 μs 0.87 0.36 False
23.78 μs 19.95 μs 0.84 0.36 False
21.20 μs 16.86 μs 0.80 0.28 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CtorFromCollection&lt;Int32&gt;*'
### System.Collections.CtorFromCollection<Int32>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ImmutableStack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.SortedDictionaryDeepCopy(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ConcurrentBag(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.LinkedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ImmutableQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ConcurrentQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<Int32>.ConcurrentStack(Size: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.92 μs 2.57 μs 0.88 0.13 False
594.86 ns 491.11 ns 0.83 0.16 False
1.53 μs 1.34 μs 0.87 0.13 False
1.74 μs 1.55 μs 0.89 0.10 False
851.15 ns 715.94 ns 0.84 0.12 False
1.04 μs 838.96 ns 0.81 0.12 False
2.00 μs 1.77 μs 0.89 0.13 False
1.87 μs 1.56 μs 0.84 0.10 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;LoginViewModel&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LoginViewModel>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### 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 2ecc177a5fcfa5a1f7c9ab60125ade171fb4d750
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
854.39 ns 721.14 ns 0.84 0.18 False
3.60 μs 3.27 μs 0.91 0.19 False
2.25 μs 2.03 μs 0.90 0.23 False
464.70 ns 379.73 ns 0.82 0.24 False
2.62 μs 2.14 μs 0.82 0.18 False
1.98 μs 1.76 μs 0.89 0.21 False
2.29 μs 1.92 μs 0.84 0.14 False
709.78 ns 586.46 ns 0.83 0.17 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

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;*'
### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<SimpleStructWithProperties>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Buffers.Text.Tests.Utf8ParserTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
152.65 ns 136.51 ns 0.89 0.24 False
138.08 ns 122.22 ns 0.89 0.31 False
17.59 ns 15.53 ns 0.88 0.54 False
21.05 ns 16.05 ns 0.76 0.59 False
16.56 ns 10.01 ns 0.60 0.57 False
18.17 ns 14.62 ns 0.80 0.49 False
96.64 ns 76.43 ns 0.79 0.40 False
35.56 ns 21.77 ns 0.61 0.54 False
34.09 ns 26.73 ns 0.78 0.47 False
20.69 ns 15.90 ns 0.77 0.48 False
21.93 ns 15.61 ns 0.71 0.57 False
20.60 ns 15.51 ns 0.75 0.56 False
16.09 ns 9.82 ns 0.61 0.60 False
140.10 ns 117.27 ns 0.84 0.26 False
19.40 ns 14.09 ns 0.73 0.54 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Buffers.Text.Tests.Utf8ParserTests*'
### System.Buffers.Text.Tests.Utf8ParserTests.TryParseDouble(value: 1.7976931348623157e+308) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseSingle(value: -3.4028235E+38) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseInt16(value: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseInt16(value: 32767) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseBool(value: True ) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseByte(value: 255) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseSingle(value: 12345) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt32Hex(value: FFFFFFFFFFFFFFFF) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt32(value: 4294967295) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseSByte(value: 127) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt16(value: 12345) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt16(value: 65535) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseBool(value: false) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseSingle(value: 3.4028235E+38) #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Text.Tests.Utf8ParserTests.TryParseUInt32(value: 0) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Net.Primitives.Tests.CredentialCacheTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
528.82 ns 450.92 ns 0.85 0.20 False
2.67 μs 2.48 μs 0.93 0.19 False
405.76 ns 303.43 ns 0.75 0.21 False
1.23 μs 941.64 ns 0.77 0.25 False
3.18 μs 2.83 μs 0.89 0.18 False
407.22 ns 339.73 ns 0.83 0.22 False
487.98 ns 403.74 ns 0.83 0.14 False
663.31 ns 572.09 ns 0.86 0.11 False
1.41 μs 1.01 μs 0.72 0.24 False
2.10 μs 1.55 μs 0.74 0.25 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Net.Primitives.Tests.CredentialCacheTests*'
### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_HostPort(host: "name5", hostPortCount: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_Uri(uriString: "http://notfound", uriCount: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_HostPort(host: "notfound", hostPortCount: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.ForEach(uriCount: 10, hostPortCount: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_Uri(uriString: "http://name5", uriCount: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.ForEach(uriCount: 0, hostPortCount: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_HostPort(host: "notfound", hostPortCount: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.GetCredential_Uri(uriString: "http://notfound", uriCount: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.ForEach(uriCount: 0, hostPortCount: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.CredentialCacheTests.ForEach(uriCount: 10, hostPortCount: 10) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Diagnostics.Perf_Activity

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
612.06 ns 529.20 ns 0.86 0.14 False
220.18 ns 161.98 ns 0.74 0.28 False
850.15 ns 769.19 ns 0.90 0.10 False
812.94 ns 722.95 ns 0.89 0.10 False
837.77 ns 754.12 ns 0.90 0.13 False
719.65 ns 619.39 ns 0.86 0.14 False
149.97 μs 129.31 μs 0.86 0.18 False
154.84 μs 130.71 μs 0.84 0.14 False
755.27 ns 612.29 ns 0.81 0.15 False
23.30 μs 18.22 μs 0.78 0.36 False
151.61 μs 131.13 μs 0.86 0.17 False
145.95 μs 126.23 μs 0.86 0.18 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Diagnostics.Perf_Activity*'
### System.Diagnostics.Perf_Activity.ActivityAllocations(idFormat: Hierarchical) #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityTagsSmall #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityEventsSmall #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.ActivityAllocations(idFormat: W3C) #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityLinksSmall #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityTagObjectsSmall #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityLinksLarge #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityLinkTagsLarge #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityLinkTagsSmall #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityTagsLarge #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityEventsLarge #### ETL Files #### Histogram #### JIT Disasms ### System.Diagnostics.Perf_Activity.EnumerateActivityTagObjectsLarge #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Json_FromStream<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.37 ms 2.04 ms 0.86 0.14 False
1.77 ms 1.57 ms 0.89 0.10 False
2.32 ms 2.08 ms 0.89 0.16 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromStream&lt;CollectionsOfPrimitives&gt;*'
### MicroBenchmarks.Serializers.Json_FromStream<CollectionsOfPrimitives>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromStream<CollectionsOfPrimitives>.JsonNet_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromStream<CollectionsOfPrimitives>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
124.51 μs 113.06 μs 0.91 0.10 False
134.30 μs 115.33 μs 0.86 0.06 False
149.49 μs 139.05 μs 0.93 0.03 False
129.51 μs 117.10 μs 0.90 0.06 False
106.42 μs 93.57 μs 0.88 0.07 False
114.41 μs 94.57 μs 0.83 0.07 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;IndexViewModel&gt;*'
### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<IndexViewModel>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### 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 3ffa05f77509cd4c5eb1452ff49c0254a8bed905
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.ComponentModel.Tests.Perf_TypeDescriptorTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
466.34 ns 400.67 ns 0.86 0.34 False
856.43 ns 685.06 ns 0.80 0.23 False
577.68 ns 461.78 ns 0.80 0.27 False
578.90 ns 486.76 ns 0.84 0.30 False
592.93 ns 471.63 ns 0.80 0.30 False
924.56 ns 757.96 ns 0.82 0.18 False
891.99 ns 699.95 ns 0.78 0.24 False
913.39 ns 686.97 ns 0.75 0.24 False
1.07 μs 875.48 ns 0.82 0.30 False
927.53 ns 717.40 ns 0.77 0.24 False
956.34 ns 708.14 ns 0.74 0.27 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.ComponentModel.Tests.Perf_TypeDescriptorTests*'
### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.ComponentModel.Tests.IDerived)) #### ETL Files #### Histogram #### JIT Disasms ### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.Guid)) #### ETL Files #### Histogram #### JIT Disasms ### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.ComponentModel.Tests.ClassWithNoConverter)) #### ETL Files #### Histogram #### JIT Disasms ### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(string)) #### ETL Files #### Histogram #### JIT Disasms ### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.ComponentModel.Tests.ClassIDerived)) #### ETL Files #### Histogram #### JIT Disasms ### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.ComponentModel.Tests.DerivedClass)) #### ETL Files #### Histogram #### JIT Disasms ### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.Enum)) #### ETL Files #### Histogram #### JIT Disasms ### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.ComponentModel.Tests.SomeValueType?)) #### ETL Files #### Histogram #### JIT Disasms ### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(System.ComponentModel.Tests.SomeEnum)) #### ETL Files #### Histogram #### JIT Disasms ### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(int?)) #### ETL Files #### Histogram #### JIT Disasms ### System.ComponentModel.Tests.Perf_TypeDescriptorTests.GetConverter(typeToConvert: typeof(int)) #### ETL Files #### Histogram #### 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 month ago

Run Information

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

Improvements in MicroBenchmarks.Serializers.Xml_ToStream<XmlElement>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.10 μs 3.76 μs 0.92 0.10 False
1.28 μs 1.07 μs 0.84 0.16 False
693.44 ns 610.19 ns 0.88 0.22 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;XmlElement&gt;*'
### MicroBenchmarks.Serializers.Xml_ToStream<XmlElement>.XmlSerializer_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<XmlElement>.DataContractSerializer_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<XmlElement>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
46.63 ns 32.49 ns 0.70 0.52 False
52.03 ns 42.23 ns 0.81 0.46 False
43.05 ns 40.63 ns 0.94 0.51 False
1.24 μs 1.04 μs 0.84 0.02 False
43.64 ns 33.33 ns 0.76 0.61 False
15.88 ns 9.24 ns 0.58 0.71 False
27.34 ns 20.81 ns 0.76 0.65 False
35.21 ns 32.40 ns 0.92 0.59 False
146.07 ns 138.28 ns 0.95 0.19 False
52.06 ns 41.89 ns 0.80 0.43 False
72.08 ns 63.63 ns 0.88 0.30 False
58.22 ns 45.37 ns 0.78 0.48 False
66.05 ns 48.36 ns 0.73 0.49 False
75.02 ns 64.10 ns 0.85 0.45 False
48.07 ns 42.58 ns 0.89 0.48 False
77.63 ns 62.40 ns 0.80 0.43 False
30.91 ns 19.29 ns 0.62 0.66 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Tests.Perf_BitArray*'
### System.Collections.Tests.Perf_BitArray.BitArrayByteArrayCtor(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayXor(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayBoolArrayCtor(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArraySet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArraySetAll(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayNot(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayOr(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayCopyToByteArray(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayCopyToIntArray(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayOr(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayBoolArrayCtor(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArraySetLengthShrink(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayLengthValueCtor(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayCopyToIntArray(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayAnd(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayLengthValueCtor(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_BitArray.BitArrayAnd(Size: 4) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
9.95 μs 8.55 μs 0.86 0.24 False
83.84 ns 68.15 ns 0.81 0.26 False
237.39 μs 193.30 μs 0.81 0.22 False
242.82 μs 199.96 μs 0.82 0.22 False
108.60 ns 81.79 ns 0.75 0.31 False
81.99 ns 67.27 ns 0.82 0.28 False
424.25 ns 371.61 ns 0.88 0.12 False
9.45 μs 8.47 μs 0.90 0.25 False
80.56 ns 67.01 ns 0.83 0.22 False
81.18 ns 66.89 ns 0.82 0.34 False
83.43 ns 68.38 ns 0.82 0.28 False
237.12 ns 212.39 ns 0.90 0.02 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives&lt;Double&gt;*'
### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.Abs(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.AddMultiply_ScalarMultiplier(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.Abs(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.Negate(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.Divide_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.Add_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.BitwiseAnd_Scalar(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.Negate(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.BitwiseAnd_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.SumOfSquares(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.SumOfMagnitudes(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Double>.Max_Vector(BufferLength: 128) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
2.63 μs 2.12 μs 0.81 0.20 False
3.05 μs 2.66 μs 0.87 0.11 False
2.66 μs 2.39 μs 0.90 0.13 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_Basic*'
### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf8(Formatted: False, SkipValidation: True, DataSize: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf8(Formatted: True, SkipValidation: False, DataSize: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf16(Formatted: True, SkipValidation: False, DataSize: 10) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.70 μs 3.25 μs 0.88 0.07 False
3.10 μs 2.55 μs 0.82 0.14 False
1.96 μs 1.67 μs 0.86 0.12 False
818.59 ns 679.38 ns 0.83 0.18 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToStream&lt;LoginViewModel&gt;*'
### MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>.DataContractJsonSerializer_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>.JsonNet_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.68 μs 3.14 μs 0.85 0.10 False
3.90 μs 3.45 μs 0.88 0.14 False
1.06 μs 888.66 ns 0.84 0.20 False
4.67 μs 4.27 μs 0.91 0.10 False
1.98 μs 1.72 μs 0.87 0.12 False
752.50 ns 615.10 ns 0.82 0.19 False
1.22 μs 1.09 μs 0.90 0.17 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;ClassRecord&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ClassRecord>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.CtorFromCollection<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
20.93 μs 16.24 μs 0.78 0.27 False
1.69 ms 1.46 ms 0.86 0.09 False
163.60 μs 148.29 μs 0.91 0.12 False
802.56 μs 721.43 μs 0.90 0.18 False
112.65 μs 97.58 μs 0.87 0.22 False
22.05 μs 16.89 μs 0.77 0.21 False
132.45 μs 119.88 μs 0.91 0.09 False
757.59 μs 657.28 μs 0.87 0.13 False
9.74 μs 8.64 μs 0.89 0.33 False
47.61 μs 39.53 μs 0.83 0.25 False
1.41 ms 1.20 ms 0.85 0.12 False
1.60 ms 1.31 ms 0.82 0.11 False
23.44 μs 18.84 μs 0.80 0.26 False
38.86 μs 36.55 μs 0.94 0.20 False
1.62 ms 1.32 ms 0.82 0.13 False
42.89 μs 33.42 μs 0.78 0.30 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CtorFromCollection&lt;String&gt;*'
### System.Collections.CtorFromCollection<String>.ConcurrentQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.FrozenSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.SortedDictionaryDeepCopy(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.ConcurrentStack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.FrozenDictionaryOptimized(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.ImmutableQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.ImmutableStack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.ConcurrentBag(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollection<String>.HashSet(Size: 512) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline dc982632aa2b15123ba5d7ff76589cd6c8e660ba
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in PerfLabTests.DelegatePerf

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
16.06 ms 10.83 ms 0.67 0.44 False
2.67 ms 2.35 ms 0.88 0.44 False
167.77 ms 105.39 ms 0.63 0.35 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'PerfLabTests.DelegatePerf*'
### PerfLabTests.DelegatePerf.MulticastDelegateInvoke(length: 100) #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.DelegatePerf.DelegateInvoke #### ETL Files #### Histogram #### JIT Disasms ### PerfLabTests.DelegatePerf.MulticastDelegateInvoke(length: 1000) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
20.56 ns 13.12 ns 0.64 0.64 False
263.65 ns 215.01 ns 0.82 0.27 False
81.99 ns 69.17 ns 0.84 0.31 False
71.85 ns 65.53 ns 0.91 0.28 False
474.21 ns 434.33 ns 0.92 0.10 False
72.02 ns 62.62 ns 0.87 0.27 False
102.07 ns 88.06 ns 0.86 0.31 False
73.97 ns 53.10 ns 0.72 0.48 False
290.57 ns 235.39 ns 0.81 0.22 False
120.04 ns 108.36 ns 0.90 0.28 False
292.06 ns 221.86 ns 0.76 0.28 False
1.48 μs 1.33 μs 0.90 0.13 False
319.58 ns 251.10 ns 0.79 0.22 False
15.61 ns 12.58 ns 0.81 0.69 False
29.58 ns 25.47 ns 0.86 0.56 False
37.97 ns 22.97 ns 0.60 0.57 False
31.40 ns 22.40 ns 0.71 0.55 False
1.29 μs 1.08 μs 0.84 0.14 False
65.87 ns 55.19 ns 0.84 0.45 False
23.33 ns 19.17 ns 0.82 0.59 False
2.24 μs 2.02 μs 0.90 0.16 False
9.77 ns 7.44 ns 0.76 0.70 False
91.85 ns 82.93 ns 0.90 0.43 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_String*'
### System.Tests.Perf_String.Replace_Char(text: "This is a very nice sentence", oldChar: 'z', newChar: 'y') #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpperInvariant(s: "This is a much longer piece of text that might benefit more from vectorization.") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.CtorCharCount(size: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Substring_Int(s: "dzsdzsDDZSDZSDZSddsz", i: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Interpolation_MultipleArgs(c: '1', s: "Foo") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Substring_IntInt(s: "dzsdzsDDZSDZSDZSddsz", i1: 10, i2: 1) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Remove_IntInt(s: "dzsdzsDDZSDZSDZSddsz", i1: 7, i2: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToLower(s: "test") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpper(s: "This is a much longer piece of text that might benefit more from vectorization.") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Replace_Char(text: "yfesgj0sg1ijslnjsb3uofdz3tbzf6ysgblu3at20nfab2wei1kxfbvsbpzwhanjczcqa2psra3aacxb67qnwbnfp2tok6v0a58l", oldChar: 'b', newChar: '+') #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToLowerInvariant(s: "This is a much longer piece of text that might benefit more from vectorization.") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Join_Enumerable #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToLower(s: "This is a much longer piece of text that might benefit more from vectorization.") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Remove_Int(s: "dzsdzsDDZSDZSDZSddsz", i: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToLowerInvariant(s: "test") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.IndexOfAny #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Replace_String(text: "This is a very nice sentence", oldValue: "bad", newValue: "nice") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Format_OneArg(s: "Testing {0}, {0:C}, {0:D5}, {0:E} - {0:F4}{0:G}{0:N} {0:X} !!", o: 8) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.ToUpper(s: "TEST") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.TrimStart_CharArr(s: "Test", c: [' ', ' ']) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Split(s: "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z", arr: [' '], options: RemoveEmptyEntries) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Substring_Int(s: "dzsdzsDDZSDZSDZSddsz", i: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_String.Replace_Char(text: "Hello", oldChar: 'l', newChar: '!') #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
83.64 μs 73.11 μs 0.87 0.21 False
96.10 μs 81.13 μs 0.84 0.13 False
1.33 ms 1.22 ms 0.91 0.11 False
143.97 μs 127.84 μs 0.89 0.04 False
3.04 ms 2.58 ms 0.85 0.08 False
36.73 μs 28.36 μs 0.77 0.34 False
22.59 μs 19.86 μs 0.88 0.27 False
20.88 μs 15.76 μs 0.75 0.34 False
1.34 ms 1.10 ms 0.82 0.13 False

graph graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CreateAddAndRemove&lt;String&gt;*'
### System.Collections.CreateAddAndRemove<String>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<String>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<String>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<String>.List(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<String>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<String>.LinkedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<String>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<String>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<String>.SortedSet(Size: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Perf_Frozen<Int16>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
16.62 μs 14.11 μs 0.85 0.30 False
17.62 μs 15.37 μs 0.87 0.28 False
1.13 μs 865.41 ns 0.76 0.20 False
139.95 μs 123.25 μs 0.88 0.32 False
1.69 μs 1.49 μs 0.88 0.22 False
1.69 μs 1.38 μs 0.82 0.21 False
140.59 μs 113.07 μs 0.80 0.29 False
808.61 ns 702.55 ns 0.87 0.16 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Perf_Frozen&lt;Int16&gt;*'
### System.Collections.Perf_Frozen<Int16>.Contains_True(Count: 64) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.TryGetValue_True(Count: 64) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.ToFrozenSet(Count: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.TryGetValue_True(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.TryGetValue_True(Count: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.Contains_True(Count: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.Contains_True(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<Int16>.ToFrozenDictionary(Count: 4) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.IndexerSetReverse<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
16.13 μs 6.07 μs 0.38 0.38 False
12.80 μs 9.06 μs 0.71 0.43 False
3.61 μs 3.18 μs 0.88 0.27 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IndexerSetReverse&lt;String&gt;*'
### System.Collections.IndexerSetReverse<String>.List(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IndexerSetReverse<String>.IList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IndexerSetReverse<String>.Array(Size: 512) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
53.90 ns 44.63 ns 0.83 0.35 False
19.94 μs 18.23 μs 0.91 0.07 False
74.46 ns 62.20 ns 0.84 0.23 False
59.27 ns 49.08 ns 0.83 0.35 False
83.48 ns 71.23 ns 0.85 0.21 False
47.41 ns 39.53 ns 0.83 0.52 False
8.44 μs 7.64 μs 0.91 0.18 False
21.00 μs 19.37 μs 0.92 0.10 False
38.36 ns 30.88 ns 0.80 0.39 False
55.91 ns 50.86 ns 0.91 0.34 False
9.33 μs 7.79 μs 0.83 0.24 False
12.48 μs 11.79 μs 0.94 0.11 False
22.15 μs 19.90 μs 0.90 0.14 False
8.41 μs 7.62 μs 0.91 0.21 False
37.78 μs 34.82 μs 0.92 0.15 False
13.04 μs 11.52 μs 0.88 0.15 False
56.57 ns 44.56 ns 0.79 0.35 False
59.08 ns 46.48 ns 0.79 0.31 False
56.94 ns 45.21 ns 0.79 0.35 False
56.27 ns 45.55 ns 0.81 0.30 False
56.07 ns 47.99 ns 0.86 0.28 False
45.48 μs 41.57 μs 0.91 0.11 False
57.00 ns 46.88 ns 0.82 0.35 False
4.96 μs 4.22 μs 0.85 0.31 False
4.69 μs 4.18 μs 0.89 0.30 False
9.35 μs 7.66 μs 0.82 0.21 False
95.86 ns 85.29 ns 0.89 0.18 False
5.02 μs 4.17 μs 0.83 0.32 False
75.73 ns 67.36 ns 0.89 0.28 False
20.59 μs 18.14 μs 0.88 0.14 False
57.68 ns 47.46 ns 0.82 0.30 False
23.24 μs 21.16 μs 0.91 0.08 False
55.70 ns 47.80 ns 0.86 0.38 False
8.52 μs 7.56 μs 0.89 0.15 False
85.89 ns 73.28 ns 0.85 0.18 False
56.66 ns 44.65 ns 0.79 0.35 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Globalization.Tests.StringSearch*'
### System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (, None, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (en-US, IgnoreSymbols, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (en-US, Ordinal, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (en-US, IgnoreCase, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (en-US, Ordinal, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (en-US, OrdinalIgnoreCase, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, None, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (, None, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (en-US, Ordinal, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (, None, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (, IgnoreCase, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (en-US, None, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.LastIndexOf_Word_NotFound(Options: (, IgnoreCase, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (pl-PL, None, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (en-US, IgnoreSymbols, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (, IgnoreCase, True)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (en-US, None, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (en-US, Ordinal, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, Ordinal, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (en-US, IgnoreCase, False)) #### ETL Files #### Histogram #### JIT Disasms ### System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (, IgnoreCase
performanceautofiler[bot] commented 1 month ago

, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (en-US, IgnoreSymbols, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (en-US, None, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (en-US, IgnoreCase, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (en-US, None, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, IgnoreCase, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (en-US, OrdinalIgnoreCase, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (, None, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, OrdinalIgnoreCase, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (en-US, IgnoreSymbols, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (, IgnoreCase, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, IgnoreSymbols, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (en-US, IgnoreNonSpace, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (, None, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (en-US, Ordinal, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (en-US, IgnoreNonSpace, False))

ETL Files

Histogram

JIT Disasms

Docs

Profiling workflow for dotnet/runtime repository Benchmarking workflow for dotnet/runtime repository


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Perf_Frozen<ReferenceType>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
514.86 ns 330.52 ns 0.64 0.43 False
21.49 μs 18.50 μs 0.86 0.10 False
890.59 ns 705.57 ns 0.79 0.16 False
6.66 μs 4.47 μs 0.67 0.36 False
6.12 μs 4.04 μs 0.66 0.43 False
112.04 μs 100.37 μs 0.90 0.12 False
55.37 μs 41.33 μs 0.75 0.44 False
176.03 μs 163.30 μs 0.93 0.08 False
12.08 μs 10.81 μs 0.89 0.14 False
47.85 μs 31.85 μs 0.67 0.43 False
570.25 ns 368.35 ns 0.65 0.51 False
577.13 ns 415.79 ns 0.72 0.21 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Perf_Frozen&lt;ReferenceType&gt;*'
### System.Collections.Perf_Frozen<ReferenceType>.TryGetValue_True(Count: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.ToFrozenSet(Count: 64) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.ToFrozenSet(Count: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.TryGetValue_True(Count: 64) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.Contains_True(Count: 64) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.ToFrozenDictionary(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.TryGetValue_True(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.ToFrozenSet(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.ToFrozenDictionary(Count: 64) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.Contains_True(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.Contains_True(Count: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_Frozen<ReferenceType>.ToFrozenDictionary(Count: 4) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline dc982632aa2b15123ba5d7ff76589cd6c8e660ba
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.CreateAddAndClear<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.81 ms 2.48 ms 0.88 0.13 False
18.69 μs 14.91 μs 0.80 0.28 False
552.06 μs 457.51 μs 0.83 0.17 False
11.60 μs 9.40 μs 0.81 0.27 False
12.60 μs 9.11 μs 0.72 0.33 False
595.65 μs 536.33 μs 0.90 0.13 False
5.54 μs 4.34 μs 0.78 0.26 False
2.77 ms 2.35 ms 0.85 0.10 False
31.74 μs 27.40 μs 0.86 0.37 False
9.60 μs 7.71 μs 0.80 0.26 False
36.84 μs 32.70 μs 0.89 0.15 False
28.80 μs 25.57 μs 0.89 0.21 False
212.19 μs 196.41 μs 0.93 0.05 False
787.48 μs 686.54 μs 0.87 0.25 False
41.59 μs 36.24 μs 0.87 0.16 False
34.91 μs 31.64 μs 0.91 0.40 False
5.95 μs 5.15 μs 0.87 0.20 False
93.38 μs 78.31 μs 0.84 0.16 False
786.73 μs 612.57 μs 0.78 0.25 False
96.71 μs 84.87 μs 0.88 0.14 False
8.84 μs 6.41 μs 0.73 0.17 False
473.93 μs 401.95 μs 0.85 0.17 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CreateAddAndClear&lt;Int32&gt;*'
### System.Collections.CreateAddAndClear<Int32>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.LinkedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ConcurrentQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ImmutableStack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ImmutableQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ICollection(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ImmutableArray(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.IDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ConcurrentBag(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.List(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### 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 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.MathBenchmarks.Single

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
55.61 μs 52.25 μs 0.94 0.04 False
57.17 μs 48.41 μs 0.85 0.09 False
22.28 μs 17.80 μs 0.80 0.11 False
50.73 μs 47.36 μs 0.93 0.11 False
51.78 μs 48.07 μs 0.93 0.01 False
54.75 μs 45.77 μs 0.84 0.16 False
24.48 μs 20.19 μs 0.82 0.05 False
51.10 μs 46.86 μs 0.92 0.04 False
32.79 μs 26.29 μs 0.80 0.09 False
45.68 μs 39.24 μs 0.86 0.26 False
47.65 μs 40.08 μs 0.84 0.21 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.MathBenchmarks.Single*'
### System.MathBenchmarks.Single.Asin #### ETL Files #### Histogram #### JIT Disasms ### System.MathBenchmarks.Single.Tan #### ETL Files #### Histogram #### JIT Disasms ### System.MathBenchmarks.Single.Round #### ETL Files #### Histogram #### JIT Disasms ### System.MathBenchmarks.Single.CosPi #### ETL Files #### Histogram #### JIT Disasms ### System.MathBenchmarks.Single.Cbrt #### ETL Files #### Histogram #### JIT Disasms ### System.MathBenchmarks.Single.Atan #### ETL Files #### Histogram #### JIT Disasms ### System.MathBenchmarks.Single.ScaleB #### ETL Files #### Histogram #### JIT Disasms ### System.MathBenchmarks.Single.Acos #### ETL Files #### Histogram #### JIT Disasms ### System.MathBenchmarks.Single.Hypot #### ETL Files #### Histogram #### JIT Disasms ### System.MathBenchmarks.Single.Log #### ETL Files #### Histogram #### JIT Disasms ### System.MathBenchmarks.Single.LogP1 #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3ffa05f77509cd4c5eb1452ff49c0254a8bed905
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.63 μs 4.01 μs 0.87 0.16 False
2.80 μs 2.51 μs 0.90 0.13 False
1.29 μs 1.06 μs 0.82 0.16 False
1.14 μs 879.77 ns 0.77 0.15 False
6.92 μs 6.17 μs 0.89 0.13 False
5.40 μs 4.44 μs 0.82 0.13 False
796.25 ns 686.36 ns 0.86 0.18 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;StructRecord&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<StructRecord>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### 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 dc982632aa2b15123ba5d7ff76589cd6c8e660ba
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
11.24 μs 8.99 μs 0.80 0.28 False
80.96 μs 72.25 μs 0.89 0.11 False
224.58 μs 195.76 μs 0.87 0.33 False
230.08 μs 191.71 μs 0.83 0.21 False
24.62 μs 20.88 μs 0.85 0.17 False
9.15 μs 8.45 μs 0.92 0.38 False
80.92 μs 71.79 μs 0.89 0.06 False
10.03 μs 8.68 μs 0.87 0.26 False
3.47 μs 3.06 μs 0.88 0.14 False
22.80 μs 20.77 μs 0.91 0.21 False
660.73 μs 616.40 μs 0.93 0.17 False
339.28 μs 311.27 μs 0.92 0.27 False
8.79 μs 7.98 μs 0.91 0.43 False
1.81 μs 1.41 μs 0.78 0.29 False
21.33 μs 18.80 μs 0.88 0.17 False
221.52 μs 195.31 μs 0.88 0.27 False
546.06 μs 485.58 μs 0.89 0.20 False
16.07 μs 12.86 μs 0.80 0.30 False
2.32 μs 1.92 μs 0.83 0.21 False
54.97 μs 44.57 μs 0.81 0.15 False
593.65 μs 495.89 μs 0.84 0.17 False
9.60 μs 8.62 μs 0.90 0.29 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives&lt;Double&gt;*'
### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Pow_ScalarExponent(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.FusedMultiplyAdd_ScalarMultiplier(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Ieee754Remainder_ScalarDivisor(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Pow_ScalarExponent(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Sinh(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Ieee754Remainder_ScalarDivisor(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.FusedMultiplyAdd_ScalarAddend(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Sqrt(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.FusedMultiplyAdd_ScalarAddend(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Truncate(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Sigmoid(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.AtanPi(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Ieee754Remainder_ScalarDividend(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Exp(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Round(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Sqrt(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Truncate(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.AtanPi(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Log(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Log(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Sinh(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Pow_ScalarBase(BufferLength: 128) #### ETL Files #### Histogram #### 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 month ago

Run Information

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

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
108.64 μs 97.28 μs 0.90 0.07 False
120.11 μs 109.47 μs 0.91 0.06 False
110.95 μs 101.21 μs 0.91 0.07 False
113.03 μs 99.88 μs 0.88 0.08 False
118.91 μs 109.69 μs 0.92 0.08 False

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;Hashtable&gt;*'
### System.Text.Json.Serialization.Tests.ReadJson<Hashtable>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Hashtable>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Hashtable>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Hashtable>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Hashtable>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.CtorFromCollectionNonGeneric<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
302.14 μs 227.32 μs 0.75 0.29 False
116.22 μs 97.87 μs 0.84 0.17 False
116.69 μs 98.13 μs 0.84 0.17 False
199.26 μs 173.45 μs 0.87 0.15 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CtorFromCollectionNonGeneric&lt;Int32&gt;*'
### System.Collections.CtorFromCollectionNonGeneric<Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollectionNonGeneric<Int32>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollectionNonGeneric<Int32>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorFromCollectionNonGeneric<Int32>.Hashtable(Size: 512) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Linq.Tests.Perf_Enumerable

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
22.75 μs 17.38 μs 0.76 0.26 False
3.85 μs 2.94 μs 0.76 0.33 False
15.43 μs 12.60 μs 0.82 0.32 False
5.11 μs 3.89 μs 0.76 0.37 False
25.58 μs 22.68 μs 0.89 0.15 False
4.57 μs 3.60 μs 0.79 0.27 False
85.59 ns 63.46 ns 0.74 0.48 False
9.01 μs 7.84 μs 0.87 0.31 False
4.10 μs 2.99 μs 0.73 0.29 False
4.95 μs 3.36 μs 0.68 0.37 False
47.08 μs 42.19 μs 0.90 0.18 False
24.29 μs 21.51 μs 0.89 0.15 False
5.04 μs 3.60 μs 0.71 0.41 False
11.04 μs 8.10 μs 0.73 0.26 False
71.96 μs 63.06 μs 0.88 0.13 False
14.88 μs 12.27 μs 0.82 0.26 False
26.99 μs 22.96 μs 0.85 0.15 False
17.42 μs 13.17 μs 0.76 0.30 False
25.94 μs 23.37 μs 0.90 0.18 False
31.46 μs 26.56 μs 0.84 0.15 False
18.83 μs 16.07 μs 0.85 0.27 False
3.12 μs 2.32 μs 0.74 0.40 False
22.99 μs 18.50 μs 0.80 0.21 False
49.06 μs 36.93 μs 0.75 0.15 False
4.12 μs 3.24 μs 0.79 0.41 False
30.94 μs 26.32 μs 0.85 0.18 False
30.63 μs 26.95 μs 0.88 0.10 False
46.18 μs 36.02 μs 0.78 0.16 False
77.34 μs 62.50 μs 0.81 0.19 False
7.01 μs 4.77 μs 0.68 0.33 False
26.54 μs 21.84 μs 0.82 0.23 False
42.39 μs 33.02 μs 0.78 0.12 False
75.16 μs 60.98 μs 0.81 0.21 False
11.55 μs 8.89 μs 0.77 0.20 False
88.10 ns 75.21 ns 0.85 0.43 False
9.40 μs 7.58 μs 0.81 0.37 False
4.91 μs 3.94 μs 0.80 0.37 False
25.01 μs 21.09 μs 0.84 0.17 False
42.04 ns 33.62 ns 0.80 0.61 False
3.87 μs 2.97 μs 0.77 0.33 False
20.90 μs 19.74 μs 0.94 0.17 False
5.98 μs 5.12 μs 0.86 0.35 False
3.86 μs 3.47 μs 0.90 0.43 False
4.04 μs 3.15 μs 0.78 0.38 False
9.25 μs 7.92 μs 0.86 0.34 False
17.40 μs 13.23 μs 0.76 0.26 False
performanceautofiler[bot] commented 1 month ago

bCUFZXwPNvkHhNdWfv4EAAA=>) | 3.81 μs | 2.88 μs | 0.76 | 0.42 | False | | | |

| 10.80 μs | 9.02 μs | 0.84 | 0.17 | False | | | | | 738.67 ns | 529.86 ns | 0.72 | 0.27 | False | | | | | 78.26 μs | 65.32 μs | 0.83 | 0.18 | False | | | | | 1.29 μs | 958.94 ns | 0.74 | 0.26 | False | | | | | 25.82 μs | 23.57 μs | 0.91 | 0.16 | False | | | | | 22.71 μs | 20.11 μs | 0.89 | 0.14 | False | | | | | 4.12 μs | 2.90 μs | 0.70 | 0.40 | False | | | | | 82.95 ns | 62.27 ns | 0.75 | 0.43 | False | | | | | 3.60 μs | 2.71 μs | 0.75 | 0.34 | False | | | | | 4.95 μs | 3.38 μs | 0.68 | 0.39 | False | | | | | 8.73 μs | 7.74 μs | 0.89 | 0.30 | False | | | | | 3.45 μs | 2.38 μs | 0.69 | 0.35 | False | | | | | 4.12 μs | 3.19 μs | 0.77 | 0.41 | False | | | | | 27.13 μs | 23.23 μs | 0.86 | 0.17 | False | | | | | 48.53 ns | 28.57 ns | 0.59 | 0.54 | False | | | | | 5.66 μs | 5.07 μs | 0.90 | 0.43 | False | | | | | 3.80 μs | 2.88 μs | 0.76 | 0.30 | False | | | | | 4.28 μs | 2.99 μs | 0.70 | 0.34 | False | | | | | 4.92 μs | 3.39 μs | 0.69 | 0.36 | False | | | | | 2.69 μs | 2.08 μs | 0.77 | 0.31 | False | | | | | 44.43 μs | 36.97 μs | 0.83 | 0.10 | False | | | | | 4.47 μs | 3.38 μs | 0.76 | 0.27 | False | | | | | 29.28 μs | 22.28 μs | 0.76 | 0.26 | False | | | | | 4.04 μs | 3.16 μs | 0.78 | 0.36 | False | | | | | 27.39 μs | 22.77 μs | 0.83 | 0.12 | False | | | | | 16.69 μs | 13.03 μs | 0.78 | 0.25 | False | | | | | 4.30 μs | 3.52 μs | 0.82 | 0.41 | False | | | | | 14.19 μs | 13.18 μs | 0.93 | 0.22 | False | | | | | 28.70 μs | 25.72 μs | 0.90 | 0.21 | False | | | | | 102.64 μs | 65.57 μs | 0.64 | 0.31 | False | | | | | 21.02 μs | 17.19 μs | 0.82 | 0.23 | False | | | | | 4.74 μs | 3.73 μs | 0.79 | 0.38 | False | | | | | 4.65 μs | 3.47 μs | 0.75 | 0.33 | False | | | | | 21.88 μs | 17.17 μs | 0.78 | 0.23 | False | | | | | 22.41 μs | 17.35 μs | 0.77 | 0.23 | False | | | | | 3.37 μs | 2.58 μs | 0.76 | 0.29 | False | | | | | 113.18 μs | 88.82 μs | 0.78 | 0.19 | False | | | | | 6.08 μs | 5.27 μs | 0.87 | 0.31 | False | | | | | 24.65 μs | 20.78 μs | 0.84 | 0.18 | False | | | | | 6.19 μs | 5.22 μs | 0.84 | 0.37 | False | | |

graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph ![gr

performanceautofiler[bot] commented 1 month ago

aph](https://pvscmdupload.z22.web.core.windows.net/autofilereport/autofilereports/05_21_2024/refs/heads/main_x64_ubuntu%2022.04_AOT%3Dtrue_CompilationMode%3Dwasm_RunKind%3Dmicro_Improvement/System.Linq.Tests.Perf_Enumerable_44.png) graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Linq.Tests.Perf_Enumerable*'
### System.Linq.Tests.Perf_Enumerable.WhereSelect(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Aggregate_Seed(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Concat_Once(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.ToDictionary(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToList(input: Range) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.ToList(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.LastWithPredicate_FirstElementMatches(input: IList) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSingleOrDefault_LastElementMatches(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Contains_ElementNotFound(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_FirstElementMatches(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Zip(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: IList) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Repeat #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.CastToBaseClass(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.OrderByThenBy(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Select(input: IList) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Where(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Select(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSelect(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Max(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.LastWithPredicate_FirstElementMatches(input: IOrderedEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Append(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.AnyWithPredicate_LastElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.TakeLastHalf(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Distinct(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.AppendPrepend(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.FirstWithPredicate_LastElementMatches(input: IOrderedEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SequenceEqual(input1: IEnumerable, input2: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSelect(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Prepend(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.AnyWithPredicate_LastElementMatches(input: IOrderedEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Reverse(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Contains_ElementNotFound(input: ICollection) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereAny_LastElementMatches(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.ToDictionary(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Except(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Count(input: ICollection) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Aggregate(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SkipHalfTakeHalf(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereAny_LastElementMatches(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.FirstWithPredicate_LastElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.All_AllElementsMatch(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereFirst_LastElementMatches(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Select(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.FirstWithPredicate_LastElementMatches(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.ToDictionary(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.ElementAt(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.OrderBy(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Count(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToList(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.TakeLastHalf(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_FirstElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SequenceEqual(input1: Array, input2: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Sum(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.FirstWithPredicate_LastElementMatches(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSingle_LastElementMatches(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Min(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_LastElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToList(input: IList) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.ElementAt(input: IList) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereFirst_LastElementMatches(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.AnyWithPredicate_LastElementMatches(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.LastWithPredicate_FirstElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.AnyWithPredicate_LastElementMatches(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Average(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Intersect(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Range #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Take_All(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_FirstElementMatches(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Where(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToList(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_LastElementMatches(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSingleOrDefault_LastElementMatches(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Skip_One(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Concat_TenTimes(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Select(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_LastElementMatches(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.CastToSameType(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.Where(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToList(input: List) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.ToArray(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.OrderByDescending(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereSingleOrDefault_LastElementMatches(input: Array) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: IEnumerable) #### ETL Files #### Histogram #### JIT Disasms ### System.Linq.Tests.Perf_Enumerable.WhereLast_LastElementMatches(input: Array) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Perf_SubstringFrozenDictionary

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.98 μs 4.32 μs 0.87 0.13 False
4.32 μs 3.38 μs 0.78 0.38 False
768.80 μs 622.41 μs 0.81 0.30 False
3.02 ms 2.57 ms 0.85 0.10 False
63.12 μs 52.64 μs 0.83 0.34 False
243.88 μs 211.97 μs 0.87 0.12 False
686.40 ns 519.89 ns 0.76 0.46 False
502.30 ns 379.67 ns 0.76 0.42 False
46.41 μs 40.78 μs 0.88 0.35 False
6.55 μs 5.46 μs 0.83 0.38 False
471.35 μs 404.15 μs 0.86 0.20 False
29.06 μs 24.56 μs 0.85 0.13 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Perf_SubstringFrozenDictionary*'
### System.Collections.Perf_SubstringFrozenDictionary.ToFrozenDictionary(Count: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 10000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.ToFrozenDictionary(Count: 10000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 1000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.ToFrozenDictionary(Count: 1000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 1000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 10000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SubstringFrozenDictionary.ToFrozenDictionary(Count: 100) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tests.Perf_VectorConvert

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
14.30 μs 10.71 μs 0.75 0.40 False
6.00 μs 5.05 μs 0.84 0.19 False
6.91 μs 5.94 μs 0.86 0.26 False
6.56 μs 5.62 μs 0.86 0.29 False
6.64 μs 5.72 μs 0.86 0.14 False
14.36 μs 11.26 μs 0.78 0.39 False
6.34 μs 5.25 μs 0.83 0.20 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tests.Perf_VectorConvert*'
### System.Numerics.Tests.Perf_VectorConvert.Convert_int_float #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_VectorConvert.Widen_byte #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_VectorConvert.Narrow_uint #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_VectorConvert.Narrow_long #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_VectorConvert.Widen_ushort #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_VectorConvert.Convert_uint_float #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_VectorConvert.Widen_short #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 2ecc177a5fcfa5a1f7c9ab60125ade171fb4d750
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Tests.DictionarySequentialKeys

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
42.36 ns 37.62 ns 0.89 0.35 False
45.13 ns 34.50 ns 0.76 0.32 False
38.41 ns 30.11 ns 0.78 0.39 False
40.51 ns 28.93 ns 0.71 0.33 False
44.83 ns 35.87 ns 0.80 0.35 False
42.84 ns 32.63 ns 0.76 0.35 False
40.04 ns 29.81 ns 0.74 0.37 False
45.29 ns 31.61 ns 0.70 0.34 False
43.08 ns 32.12 ns 0.75 0.30 False
38.94 ns 32.15 ns 0.83 0.41 False
45.11 ns 31.39 ns 0.70 0.36 False
43.39 ns 31.60 ns 0.73 0.37 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Tests.DictionarySequentialKeys*'
### System.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_32ByteRefsValue #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.TryGetValue_17_Int_32ByteRefsValue #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.ContainsValue_3k_Int_Int #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.ContainsKey_3k_Int_32ByteRefsValue #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.TryGetValue_17_Int_32ByteValue #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.TryGetValue_17_Int_Int #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.ContainsKey_3k_Int_32ByteValue #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.ContainsKey_17_Int_32ByteValue #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.ContainsKey_17_Int_32ByteRefsValue #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_Int #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.TryGetValue_3k_Int_32ByteValue #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.DictionarySequentialKeys.ContainsValue_17_Int_Int #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
352.41 μs 314.80 μs 0.89 0.19 False
27.06 μs 22.49 μs 0.83 0.22 False
87.76 μs 67.27 μs 0.77 0.27 False
539.81 μs 457.27 μs 0.85 0.26 False
28.46 μs 23.05 μs 0.81 0.23 False
348.95 μs 316.07 μs 0.91 0.24 False
86.97 μs 66.17 μs 0.76 0.24 False
14.28 ms 13.27 ms 0.93 0.16 False
32.79 μs 23.04 μs 0.70 0.25 False

graph graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.IO.Tests.Perf_FileStream*'
### System.IO.Tests.Perf_FileStream.Read(fileSize: 1048576, userBufferSize: 512, options: Asynchronous) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.WriteByte(fileSize: 1024, options: Asynchronous) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.SeekForward(fileSize: 1024, options: Asynchronous) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.Flush(fileSize: 1024, options: Asynchronous) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.ReadByte(fileSize: 1024, options: None) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.Read(fileSize: 1048576, userBufferSize: 512, options: None) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.SeekForward(fileSize: 1024, options: None) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.Read(fileSize: 104857600, userBufferSize: 4096, options: None) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.Perf_FileStream.ReadByte(fileSize: 1024, options: Asynchronous) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in Microsoft.Extensions.DependencyInjection.GetService

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
237.58 ns 185.95 ns 0.78 0.28 False
3.02 μs 2.65 μs 0.88 0.07 False
728.26 ns 577.97 ns 0.79 0.18 False
147.16 ns 97.25 ns 0.66 0.38 False
151.55 ns 105.04 ns 0.69 0.37 False
145.15 ns 111.81 ns 0.77 0.39 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.DependencyInjection.GetService*'
### Microsoft.Extensions.DependencyInjection.GetService.ServiceScope #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.GetService.Transient #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.GetService.Scoped #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.GetService.Singleton #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.GetService.ServiceScopeProvider #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.DependencyInjection.GetService.EmptyEnumerable #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
173.97 μs 119.69 μs 0.69 0.36 False
16.93 μs 10.69 μs 0.63 0.44 False
370.26 μs 308.32 μs 0.83 0.25 False
18.28 μs 14.57 μs 0.80 0.43 False
25.05 μs 20.27 μs 0.81 0.32 False
114.91 μs 95.29 μs 0.83 0.18 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.TryGetValueFalse&lt;Int32, Int32&gt;*'
### System.Collections.TryGetValueFalse<Int32, Int32>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<Int32, Int32>.FrozenDictionaryOptimized(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<Int32, Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<Int32, Int32>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<Int32, Int32>.IDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<Int32, Int32>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
342.11 μs 287.96 μs 0.84 0.08 False
345.54 μs 283.43 μs 0.82 0.09 False
331.92 μs 279.70 μs 0.84 0.09 False
338.72 μs 273.31 μs 0.81 0.12 False
329.10 μs 276.93 μs 0.84 0.08 False
336.25 μs 276.88 μs 0.82 0.10 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;ImmutableDictionary&lt;String, String&gt;&gt;*'
### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ImmutableDictionary<String, String>>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.IterateFor<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
5.66 μs 4.46 μs 0.79 0.28 False
6.00 μs 4.68 μs 0.78 0.24 False
12.41 μs 9.05 μs 0.73 0.34 False
66.49 μs 48.50 μs 0.73 0.24 False
67.36 μs 48.28 μs 0.72 0.21 False

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IterateFor&lt;Int32&gt;*'
### System.Collections.IterateFor<Int32>.List(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateFor<Int32>.ImmutableArray(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateFor<Int32>.IList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateFor<Int32>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateFor<Int32>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Memory.ReadOnlySpan

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
6.96 ns 3.28 ns 0.47 0.62 False
60.41 ns 53.72 ns 0.89 0.35 False
25.17 ns 15.02 ns 0.60 0.64 False
21.51 ns 16.20 ns 0.75 0.46 False
64.58 ns 55.76 ns 0.86 0.38 False
39.06 ns 31.19 ns 0.80 0.41 False
37.97 ns 32.39 ns 0.85 0.25 False
35.89 ns 27.93 ns 0.78 0.45 False
  • [IndexOfString - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_ubuntu 22.04_AOT=true_CompilationMode=wasm_RunKind=micro/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0.html>)
  • 📝 - Benchmark Source
  • ADX - Test Multi Config Graph
61.21 ns 51.75 ns 0.85 0.28 False
  • [IndexOfString - Duration of single invocation](<https://pvscmdupload.z22.web.core.windows.net/reports/allTestHistory/refs/heads/main_x64_ubuntu 22.04_AOT=true_CompilationMode=wasm_RunKind=micro/System.Memory.ReadOnlySpan.IndexOfString(input%3a%20%22%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%99%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%e3%81%a0%22%2c%20value%3a%20%22%e3%81%99%22%2c%20comparisonType%3a%20Ordinal).html>)
  • 📝 - Benchmark Source
  • ADX - Test Multi Config Graph
22.35 ns 17.39 ns 0.78 0.48 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Memory.ReadOnlySpan*'
### System.Memory.ReadOnlySpan.StringAsSpan #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySpan.IndexOfString(input: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", value: "X", comparisonType: Ordinal) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySpan.Trim(input: "abcdefg") #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySpan.IndexOfString(input: "Hello Worldbbbbbbbbbbbbbbcbbbbbbbbbbbbbbbbbbba!", value: "y", comparisonType: Ordinal) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySpan.IndexOfString(input: "ABCDE", value: "c", comparisonType: InvariantCultureIgnoreCase) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySpan.Trim(input: " abcdefg ") #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySpan.IndexOfString(input: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", value: "x", comparisonType: OrdinalIgnoreCase) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySpan.IndexOfString(input: "Hello WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello WorldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylongHello Worldbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbareallyreallylong!xyz", value: "~", comparisonType: Ordinal) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySpan.IndexOfString(input: "だだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだxだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだ", value: "x", comparisonType: Ordinal) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySpan.IndexOfString(input: "だだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだすだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだだ", value: "す", comparisonType: Ordinal) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline dc982632aa2b15123ba5d7ff76589cd6c8e660ba
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in Benchmark.GetChildKeysTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.26 ms 1.91 ms 0.85 0.12 False
1.20 ms 1.03 ms 0.86 0.12 False
1.24 ms 1.04 ms 0.84 0.13 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Benchmark.GetChildKeysTests*'
### Benchmark.GetChildKeysTests.AddChainedConfigurationNoDelimiter #### ETL Files #### Histogram #### JIT Disasms ### Benchmark.GetChildKeysTests.AddChainedConfigurationWithCommonPaths #### ETL Files #### Histogram #### JIT Disasms ### Benchmark.GetChildKeysTests.AddChainedConfigurationWithSplitting #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
138.42 μs 111.77 μs 0.81 0.13 False
118.20 μs 97.67 μs 0.83 0.13 False
137.86 μs 116.93 μs 0.85 0.10 False
135.91 μs 119.88 μs 0.88 0.11 False
108.48 μs 90.48 μs 0.83 0.14 False
135.17 μs 109.25 μs 0.81 0.14 False
110.53 μs 88.19 μs 0.80 0.15 False
115.82 μs 95.67 μs 0.83 0.15 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;ImmutableDictionary&lt;String, String&gt;&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare a71a85a65f6527ca2754ccf336f1fc77f02c409b
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in GuardedDevirtualization.TwoClassInterface

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
12.11 ns 8.72 ns 0.72 0.41 False
13.60 ns 9.98 ns 0.73 0.34 False
12.29 ns 7.47 ns 0.61 0.48 False
11.63 ns 8.67 ns 0.75 0.31 False
15.19 ns 13.49 ns 0.89 0.31 False
10.39 ns 7.56 ns 0.73 0.40 False
16.02 ns 14.00 ns 0.87 0.27 False
14.98 ns 11.21 ns 0.75 0.34 False
16.64 ns 13.25 ns 0.80 0.24 False
13.19 ns 10.18 ns 0.77 0.32 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'GuardedDevirtualization.TwoClassInterface*'
### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.90) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.80) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 1.00) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.10) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.30) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.00) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.50) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.70) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.40) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.TwoClassInterface.Call(testInput: pB = 0.20) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.TryAddGiventSize<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
22.33 μs 18.88 μs 0.85 0.26 False
93.07 μs 78.86 μs 0.85 0.15 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.TryAddGiventSize&lt;Int32&gt;*'
### System.Collections.TryAddGiventSize<Int32>.Dictionary(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryAddGiventSize<Int32>.ConcurrentDictionary(Count: 512) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Text.Json.Tests.Perf_DateTimes

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
11.57 ms 8.72 ms 0.75 0.28 False
11.12 ms 9.39 ms 0.84 0.24 False
8.96 ms 7.65 ms 0.85 0.32 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_DateTimes*'
### System.Text.Json.Tests.Perf_DateTimes.WriteDateTimes(Formatted: True, SkipValidation: True) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_DateTimes.WriteDateTimes(Formatted: True, SkipValidation: False) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_DateTimes.WriteDateTimes(Formatted: False, SkipValidation: True) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.IterateForEachNonGeneric<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
15.29 μs 11.28 μs 0.74 0.27 False
18.23 μs 12.96 μs 0.71 0.29 False
17.58 μs 12.81 μs 0.73 0.31 False
28.13 μs 21.60 μs 0.77 0.34 False
32.41 μs 24.39 μs 0.75 0.31 False

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IterateForEachNonGeneric&lt;String&gt;*'
### System.Collections.IterateForEachNonGeneric<String>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEachNonGeneric<String>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEachNonGeneric<String>.ArrayList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEachNonGeneric<String>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEachNonGeneric<String>.Hashtable(Size: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
442.52 μs 402.49 μs 0.91 0.15 False
451.19 μs 425.45 μs 0.94 0.14 False
732.15 μs 608.89 μs 0.83 0.16 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Sort&lt;IntStruct&gt;*'
### System.Collections.Sort<IntStruct>.Array_ComparerClass(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<IntStruct>.Array_ComparerStruct(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<IntStruct>.Array_Comparison(Size: 512) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in GuardedDevirtualization.ThreeClassInterface

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
12.01 ns 8.14 ns 0.68 0.44 False
14.73 ns 11.79 ns 0.80 0.34 False
14.88 ns 11.95 ns 0.80 0.35 False
16.21 ns 12.23 ns 0.75 0.31 False
10.39 ns 8.29 ns 0.80 0.42 False
16.77 ns 14.25 ns 0.85 0.38 False
17.99 ns 15.30 ns 0.85 0.32 False
10.40 ns 7.73 ns 0.74 0.39 False
15.43 ns 12.40 ns 0.80 0.39 False
16.25 ns 12.96 ns 0.80 0.34 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'GuardedDevirtualization.ThreeClassInterface*'
### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.00 pD=0.00) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.67 pD=0.33) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.67 pD=0.00) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.33 pD=0.67) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.00 pD=1.00) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.33 pD=0.00) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.33 pD=0.33) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=1.00 pD=0.00) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.00 pD=0.67) #### ETL Files #### Histogram #### JIT Disasms ### GuardedDevirtualization.ThreeClassInterface.Call(testInput: pB=0.00 pD=0.33) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Memory.ReadOnlySequence

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
39.32 ns 33.04 ns 0.84 0.54 False
76.66 ns 58.79 ns 0.77 0.39 False
86.37 ns 60.59 ns 0.70 0.44 False
294.73 ns 224.41 ns 0.76 0.39 False
38.96 ns 33.06 ns 0.85 0.50 False
44.13 ns 35.43 ns 0.80 0.59 False
21.85 ns 18.70 ns 0.86 0.64 False
94.27 ns 69.67 ns 0.74 0.41 False
351.61 ns 285.27 ns 0.81 0.31 False
82.82 ns 64.03 ns 0.77 0.43 False
68.28 ns 53.16 ns 0.78 0.50 False
81.50 ns 58.17 ns 0.71 0.48 False
21.87 ns 15.83 ns 0.72 0.67 False
35.06 ns 29.93 ns 0.85 0.57 False
141.23 ns 127.44 ns 0.90 0.23 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Memory.ReadOnlySequence*'
### System.Memory.ReadOnlySequence.Slice_StartPosition(Segment: Single) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_Start_And_EndPosition(Segment: Single) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_Start_And_EndPosition(Segment: Multiple) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_Repeat(Segment: Single) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_StartPosition_And_EndPosition(Segment: Multiple) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_StartPosition(Segment: Multiple) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_Start(Segment: Multiple) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_Start_And_Length(Segment: Multiple) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_Repeat(Segment: Multiple) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_StartPosition_And_Length(Segment: Multiple) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_Start_And_Length(Segment: Single) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_StartPosition_And_Length(Segment: Single) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_Start(Segment: Single) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_StartPosition_And_EndPosition(Segment: Single) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.ReadOnlySequence.Slice_Repeat_StartPosition_And_EndPosition(Segment: Single) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline dc982632aa2b15123ba5d7ff76589cd6c8e660ba
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
42.61 ns 35.01 ns 0.82 0.52 False
40.79 ns 26.75 ns 0.66 0.56 False
33.05 ns 27.46 ns 0.83 0.57 False
35.28 ns 29.55 ns 0.84 0.50 False
27.25 ns 23.58 ns 0.87 0.61 False
1.67 μs 1.22 μs 0.73 0.01 False
944.87 ns 641.75 ns 0.68 0.01 False
40.81 ns 36.56 ns 0.90 0.54 False
36.70 ns 25.92 ns 0.71 0.58 False
28.53 ns 19.97 ns 0.70 0.57 False
968.84 μs 735.37 μs 0.76 0.01 False
1.45 ms 1.12 ms 0.77 0.01 False
28.76 ns 21.43 ns 0.74 0.56 False
43.50 ns 38.09 ns 0.88 0.44 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tests.Perf_BigInteger*'
### System.Numerics.Tests.Perf_BigInteger.Divide(arguments: 16,8 bits) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 16,8 bits) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Add(arguments: 16,16 bits) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Equals(arguments: 259 bytes, DiffMiddleByte) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Equals(arguments: 259 bytes, DiffFirstByte) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 1024,1024 bits) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 1024,512 bits) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.ToByteArray(numberString: -2147483648) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Ctor_ByteArray(numberString: -2147483648) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Equals(arguments: 67 bytes, DiffMiddleByte) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 65536,32768 bits) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 65536,65536 bits) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Equals(arguments: 67 bytes, DiffLastByte) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tests.Perf_BigInteger.Equals(arguments: 259 bytes, DiffLastByte) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare a71a85a65f6527ca2754ccf336f1fc77f02c409b
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.TryGetValueFalse<String, String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
50.18 μs 31.98 μs 0.64 0.33 False
38.78 μs 29.43 μs 0.76 0.29 False
133.55 μs 111.69 μs 0.84 0.15 False
38.06 μs 28.62 μs 0.75 0.27 False
31.14 μs 22.12 μs 0.71 0.34 False
785.94 μs 686.88 μs 0.87 0.16 False
1.42 ms 1.23 ms 0.87 0.11 False
729.08 μs 652.94 μs 0.90 0.16 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.TryGetValueFalse&lt;String, String&gt;*'
### System.Collections.TryGetValueFalse<String, String>.IDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<String, String>.FrozenDictionaryOptimized(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<String, String>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<String, String>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<String, String>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<String, String>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<String, String>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueFalse<String, String>.SortedList(Size: 512) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 2ecc177a5fcfa5a1f7c9ab60125ade171fb4d750
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
19.46 ns 15.86 ns 0.82 0.61 False
27.19 ns 16.43 ns 0.60 0.56 False
30.60 ns 20.23 ns 0.66 0.58 False
28.62 ns 23.85 ns 0.83 0.39 False
18.52 ns 16.17 ns 0.87 0.63 False
13.55 ns 8.74 ns 0.65 0.62 False
3.62 ns 2.52 ns 0.70 0.30 False
22.51 ns 18.30 ns 0.81 0.60 False
32.17 ns 26.20 ns 0.81 0.51 False
3.57 ns 2.53 ns 0.71 0.35 False
15.91 ns 8.27 ns 0.52 0.64 False
3.61 ns 2.52 ns 0.70 0.32 False
41.73 ns 35.40 ns 0.85 0.39 False
42.33 ns 34.26 ns 0.81 0.41 False
28.49 ns 22.02 ns 0.77 0.48 False
47.82 ns 35.15 ns 0.74 0.60 False
45.79 ns 42.96 ns 0.94 0.34 False
15.94 ns 7.14 ns 0.45 0.64 False
19.77 ns 13.56 ns 0.69 0.59 False
55.14 ns 49.63 ns 0.90 0.40 False
28.48 ns 16.28 ns 0.57 0.50 False
34.75 ns 23.33 ns 0.67 0.50 False
21.26 ns 11.52 ns 0.54 0.65 False
12.79 ns 8.67 ns 0.68 0.66 False

graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph graph 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;*'
### System.Memory.Span<Byte>.SequenceCompareToDifferent(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.SequenceCompareToDifferent(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.IndexOfValue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.StartsWith(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.BinarySearch(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.StartsWith(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.GetPinnableReference(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.SequenceCompareTo(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.LastIndexOfValue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.GetPinnableReference(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.IndexOfValue(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.GetPinnableReference(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.IndexOfAnyFourValues(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.IndexOfAnyFiveValues(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.SequenceCompareTo(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.Fill(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.SequenceEqual(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.IndexOfAnyTwoValues(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.LastIndexOfValue(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.SequenceCompareTo(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.SequenceCompareToDifferent(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.LastIndexOfAnyValues(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.BinarySearch(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Byte>.IndexOfAnyThreeValues(Size: 33) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
152.29 μs 141.61 μs 0.93 0.19 False
17.25 μs 15.97 μs 0.93 0.16 False
25.35 μs 20.66 μs 0.81 0.29 False
16.42 μs 14.61 μs 0.89 0.20 False
8.67 μs 7.96 μs 0.92 0.47 False
15.73 μs 13.92 μs 0.88 0.20 False
214.03 μs 186.56 μs 0.87 0.27 False
12.27 μs 11.22 μs 0.91 0.20 False
3.67 μs 2.85 μs 0.78 0.26 False
123.16 μs 107.69 μs 0.87 0.28 False
1.27 μs 1.01 μs 0.80 0.29 False
5.28 μs 4.58 μs 0.87 0.23 False
13.68 μs 12.31 μs 0.90 0.31 False
353.61 μs 285.82 μs 0.81 0.30 False
372.07 μs 338.01 μs 0.91 0.20 False
423.48 μs 379.64 μs 0.90 0.24 False
1.14 μs 1.00 μs 0.88 0.22 False
287.23 μs 256.96 μs 0.89 0.19 False
377.00 μs 330.81 μs 0.88 0.16 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives&lt;Single&gt;*'
### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Sin(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Round(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Log(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Truncate(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Ieee754Remainder_ScalarDividend(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Sinh(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Ieee754Remainder_ScalarDivisor(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Sigmoid(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Ieee754Remainder_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Sqrt(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Exp(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Sqrt(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.AtanPi(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.AtanPi(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Sinh(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Round(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Log(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Sigmoid(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Truncate(BufferLength: 3079) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Threading.Tests.Perf_CancellationToken

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
102.71 ns 83.14 ns 0.81 0.26 False
243.67 ns 221.12 ns 0.91 0.14 False
128.12 ns 116.14 ns 0.91 0.23 False
269.76 ns 253.14 ns 0.94 0.19 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Threading.Tests.Perf_CancellationToken*'
### System.Threading.Tests.Perf_CancellationToken.CreateTokenDispose #### ETL Files #### Histogram #### JIT Disasms ### System.Threading.Tests.Perf_CancellationToken.CreateRegisterDispose #### ETL Files #### Histogram #### JIT Disasms ### System.Threading.Tests.Perf_CancellationToken.RegisterAndUnregister_Serial #### ETL Files #### Histogram #### JIT Disasms ### System.Threading.Tests.Perf_CancellationToken.Cancel #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.IterateForEach<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
60.92 μs 51.99 μs 0.85 0.22 False
8.42 μs 6.79 μs 0.81 0.27 False
124.48 μs 93.70 μs 0.75 0.27 False
401.60 μs 325.07 μs 0.81 0.15 False
9.32 μs 7.55 μs 0.81 0.23 False
157.15 μs 111.07 μs 0.71 0.32 False
8.03 μs 6.60 μs 0.82 0.26 False
415.49 μs 328.23 μs 0.79 0.18 False
11.64 μs 9.35 μs 0.80 0.25 False
39.48 μs 27.48 μs 0.70 0.34 False
8.24 μs 6.65 μs 0.81 0.28 False
11.17 μs 8.96 μs 0.80 0.24 False
13.52 μs 11.30 μs 0.84 0.35 False
109.79 μs 91.62 μs 0.83 0.09 False
31.57 μs 23.34 μs 0.74 0.27 False
239.78 μs 201.74 μs 0.84 0.15 False
8.95 μs 7.18 μs 0.80 0.30 False
31.57 μs 23.34 μs 0.74 0.33 False
167.00 μs 117.21 μs 0.70 0.29 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IterateForEach&lt;Int32&gt;*'
### System.Collections.IterateForEach<Int32>.ConcurrentBag(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ConcurrentQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.FrozenSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.FrozenDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.List(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.IEnumerable(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableStack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<Int32>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.39 ms 1.22 ms 0.87 0.09 False
1.61 ms 1.44 ms 0.90 0.09 False
1.20 ms 1.05 ms 0.88 0.08 False
1.45 ms 1.32 ms 0.91 0.08 False
1.41 ms 1.25 ms 0.88 0.09 False
1.22 ms 1.11 ms 0.91 0.10 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;MyEventsListerViewModel&gt;*'
### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<MyEventsListerViewModel>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
41.03 ns 27.35 ns 0.67 0.57 False
119.53 ns 92.05 ns 0.77 0.38 False
52.25 ns 48.77 ns 0.93 0.55 False
55.44 ns 41.34 ns 0.75 0.50 False
44.98 ns 34.51 ns 0.77 0.57 False
39.36 ns 29.76 ns 0.76 0.50 False

graph graph graph graph graph graph Test Report

Repro

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

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;*'
### System.Collections.Concurrent.IsEmpty<Int32>.Queue(Size: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.IsEmpty<Int32>.Dictionary(Size: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.IsEmpty<Int32>.Bag(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.IsEmpty<Int32>.Bag(Size: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.IsEmpty<Int32>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.IsEmpty<Int32>.Queue(Size: 512) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 7ce5d0fdf728bb2ae213541b17c2e489d2b06d09
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.ContainsFalse<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
772.61 μs 674.05 μs 0.87 0.20 False
874.22 μs 691.08 μs 0.79 0.14 False
6.83 ms 4.59 ms 0.67 0.38 False
6.71 ms 4.64 ms 0.69 0.41 False
127.68 μs 107.93 μs 0.85 0.17 False
7.87 ms 4.77 ms 0.61 0.47 False
3.58 ms 2.77 ms 0.77 0.36 False
36.26 μs 27.54 μs 0.76 0.32 False
7.37 ms 4.67 ms 0.63 0.39 False
7.02 ms 4.75 ms 0.68 0.43 False
6.82 ms 4.57 ms 0.67 0.43 False
11.51 ms 8.67 ms 0.75 0.36 False
6.38 ms 4.54 ms 0.71 0.42 False
35.64 μs 25.71 μs 0.72 0.35 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsFalse&lt;String&gt;*'
### System.Collections.ContainsFalse<String>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.Array(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.List(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.Span(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.ICollection(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.ImmutableArray(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.LinkedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsFalse<String>.FrozenSet(Size: 512) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.80 ms 1.59 ms 0.88 0.06 False
1.04 ms 896.92 μs 0.87 0.08 False
956.25 μs 805.96 μs 0.84 0.12 False
1.70 ms 1.58 ms 0.92 0.06 False
1.65 ms 1.47 ms 0.89 0.07 False
1.81 ms 1.58 ms 0.87 0.09 False
1.04 ms 892.08 μs 0.86 0.09 False
980.49 μs 893.92 μs 0.91 0.07 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;MyEventsListerViewModel&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<MyEventsListerViewModel>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### 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 7ce5d0fdf728bb2ae213541b17c2e489d2b06d09
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Net.Primitives.Tests.IPAddressPerformanceTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
26.46 ns 23.44 ns 0.89 0.60 False
136.89 ns 115.29 ns 0.84 0.22 False
25.86 ns 19.68 ns 0.76 0.72 False
15.74 ns 10.68 ns 0.68 0.56 False
275.35 ns 242.93 ns 0.88 0.17 False
159.63 ns 131.16 ns 0.82 0.33 False
45.40 ns 38.97 ns 0.86 0.52 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Net.Primitives.Tests.IPAddressPerformanceTests*'
### System.Net.Primitives.Tests.IPAddressPerformanceTests.GetAddressBytes(address: 143.24.20.36) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.IPAddressPerformanceTests.CtorAndToString(address: [143, 24, 20, 36]) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.IPAddressPerformanceTests.Ctor_Bytes(address: [143, 24, 20, 36]) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.IPAddressPerformanceTests.TryWriteBytes(address: 143.24.20.36) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.IPAddressPerformanceTests.CtorAndToString(address: [16, 32, 48, 64, 80, ...]) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.IPAddressPerformanceTests.TryFormat(address: 1020:3040:5060:7080:9010:1112:1314:1516) #### ETL Files #### Histogram #### JIT Disasms ### System.Net.Primitives.Tests.IPAddressPerformanceTests.Ctor_Span(address: [16, 32, 48, 64, 80, ...]) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline dc982632aa2b15123ba5d7ff76589cd6c8e660ba
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
53.24 ns 39.10 ns 0.73 0.53 False
38.57 ns 29.36 ns 0.76 0.55 False
111.41 ns 80.27 ns 0.72 0.43 False
178.84 ns 124.76 ns 0.70 0.37 False
241.82 ns 190.44 ns 0.79 0.20 False
44.05 ns 30.77 ns 0.70 0.57 False
43.92 ns 37.78 ns 0.86 0.54 False
58.56 ns 40.11 ns 0.68 0.52 False
67.82 ns 43.34 ns 0.64 0.53 False
130.16 ns 88.03 ns 0.68 0.41 False
123.83 ns 85.75 ns 0.69 0.49 False
68.13 ns 57.46 ns 0.84 0.43 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Tests.Perf_Encoding*'
### System.Text.Tests.Perf_Encoding.GetByteCount(size: 16, encName: "utf-8") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetEncoder(size: 512, encName: "utf-8") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetBytes(size: 16, encName: "ascii") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetString(size: 16, encName: "ascii") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetBytes(size: 512, encName: "ascii") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetEncoder(size: 16, encName: "utf-8") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetEncoder(size: 16, encName: "ascii") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetByteCount(size: 16, encName: "ascii") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetByteCount(size: 512, encName: "ascii") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetChars(size: 16, encName: "ascii") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetChars(size: 16, encName: "utf-8") #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_Encoding.GetBytes(size: 16, encName: "utf-8") #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_UInt32

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
55.23 ns 40.57 ns 0.73 0.55 False
51.92 ns 38.88 ns 0.75 0.45 False
73.16 ns 47.29 ns 0.65 0.43 False
48.15 ns 33.28 ns 0.69 0.51 False
46.59 ns 34.32 ns 0.74 0.42 False
63.17 ns 49.05 ns 0.78 0.37 False
51.87 ns 37.13 ns 0.72 0.48 False
21.33 ns 14.53 ns 0.68 0.58 False
77.81 ns 60.74 ns 0.78 0.39 False
74.27 ns 52.15 ns 0.70 0.42 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_UInt32*'
### System.Tests.Perf_UInt32.ParseSpan(value: "12345") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt32.TryParse(value: "12345") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt32.ParseSpan(value: "4294967295") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt32.TryParseHex(value: "3039") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt32.TryParse(value: "0") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt32.TryParse(value: "4294967295") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt32.ParseSpan(value: "0") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt32.ToString(value: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt32.Parse(value: "4294967295") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt32.Parse(value: "12345") #### ETL Files #### Histogram #### 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 073e35e7e32624e0f841d94364d2f28c73662ff7
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_HashCode

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
124.91 μs 105.97 μs 0.85 0.30 False
61.32 μs 51.45 μs 0.84 0.26 False
114.59 μs 93.40 μs 0.82 0.24 False
104.58 μs 82.99 μs 0.79 0.23 False
10.30 μs 7.31 μs 0.71 0.34 False
71.23 μs 62.95 μs 0.88 0.21 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_HashCode*'
### System.Tests.Perf_HashCode.Combine_8 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_HashCode.Combine_1 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_HashCode.Combine_5 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_HashCode.Combine_4 #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_HashCode.Add #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_HashCode.Combine_2 #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
41.98 ms 38.44 ms 0.92 0.11 False
6.46 ms 5.60 ms 0.87 0.09 False
10.06 ms 9.13 ms 0.91 0.11 False
1.44 ms 1.25 ms 0.87 0.12 False
22.78 ms 20.26 ms 0.89 0.10 False
4.68 ms 4.03 ms 0.86 0.10 False
3.17 ms 2.68 ms 0.85 0.09 False
96.53 ms 85.03 ms 0.88 0.10 False
19.68 ms 17.61 ms 0.89 0.09 False

graph graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks*'
### Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks.Get(ConfigurationProvidersCount: 32, KeysCountPerProvider: 20) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks.Get(ConfigurationProvidersCount: 8, KeysCountPerProvider: 40) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks.Get(ConfigurationProvidersCount: 16, KeysCountPerProvider: 20) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks.Get(ConfigurationProvidersCount: 8, KeysCountPerProvider: 10) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks.Get(ConfigurationProvidersCount: 16, KeysCountPerProvider: 40) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks.Get(ConfigurationProvidersCount: 16, KeysCountPerProvider: 10) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks.Get(ConfigurationProvidersCount: 8, KeysCountPerProvider: 20) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks.Get(ConfigurationProvidersCount: 32, KeysCountPerProvider: 40) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Configuration.ConfigurationBinderBenchmarks.Get(ConfigurationProvidersCount: 32, KeysCountPerProvider: 10) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Perf_LengthBucketsFrozenDictionary

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
671.41 μs 544.24 μs 0.81 0.23 False
249.21 ns 170.98 ns 0.69 0.42 False
3.61 μs 3.41 μs 0.94 0.17 False
6.35 μs 5.05 μs 0.80 0.30 False
366.19 ns 300.05 ns 0.82 0.40 False
1.01 μs 811.77 ns 0.80 0.17 False
58.95 μs 55.29 μs 0.94 0.29 False
35.25 μs 29.21 μs 0.83 0.37 False
3.74 μs 2.83 μs 0.76 0.42 False
249.54 μs 198.63 μs 0.80 0.35 False
206.07 ns 161.29 ns 0.78 0.47 False
1.91 μs 1.51 μs 0.79 0.43 False
238.63 μs 196.06 μs 0.82 0.38 False
990.10 ns 881.80 ns 0.89 0.13 False
20.66 μs 15.48 μs 0.75 0.37 False
19.71 μs 15.36 μs 0.78 0.39 False
491.64 μs 452.32 μs 0.92 0.08 False
587.67 ns 498.92 ns 0.85 0.44 False
399.13 μs 331.62 μs 0.83 0.35 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Perf_LengthBucketsFrozenDictionary*'
### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 10000, ItemsPerBucket: 5) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 10, ItemsPerBucket: 5) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.ToFrozenDictionary(Count: 100, ItemsPerBucket: 1) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 100, ItemsPerBucket: 5) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 10, ItemsPerBucket: 1) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.ToFrozenDictionary(Count: 10, ItemsPerBucket: 5) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 1000, ItemsPerBucket: 5) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 1000, ItemsPerBucket: 1) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 100, ItemsPerBucket: 1) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 10000, ItemsPerBucket: 1) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 10, ItemsPerBucket: 1) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 100, ItemsPerBucket: 5) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 10000, ItemsPerBucket: 5) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.ToFrozenDictionary(Count: 10, ItemsPerBucket: 1) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 1000, ItemsPerBucket: 1) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 1000, ItemsPerBucket: 5) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.ToFrozenDictionary(Count: 10000, ItemsPerBucket: 5) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 10, ItemsPerBucket: 5) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_LengthBucketsFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 10000, ItemsPerBucket: 1) #### ETL Files #### Histogram #### 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 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
114.67 ns 80.43 ns 0.70 0.45 False
25.52 ns 18.08 ns 0.71 0.71 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.Runtime.Intrinsics.Tests.Perf_Vector128Of&lt;Int16&gt;*'
### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Int16>.GetHashCodeBenchmark #### ETL Files #### Histogram #### JIT Disasms ### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Int16>.SquareRootBenchmark #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 7ce5d0fdf728bb2ae213541b17c2e489d2b06d09
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
24.69 ns 19.03 ns 0.77 0.60 False
23.57 ns 15.83 ns 0.67 0.62 False
19.53 ns 14.11 ns 0.72 0.57 False
87.48 ns 74.85 ns 0.86 0.27 False
23.59 ns 14.57 ns 0.62 0.52 False
24.35 ns 15.67 ns 0.64 0.60 False
3.56 ns 2.51 ns 0.71 0.29 False
22.54 ns 15.54 ns 0.69 0.59 False
60.20 ns 52.03 ns 0.86 0.37 False
19.61 ns 14.76 ns 0.75 0.60 False
11.24 ns 7.06 ns 0.63 0.67 False
18.87 ns 12.77 ns 0.68 0.65 False
26.06 ns 19.53 ns 0.75 0.56 False
57.82 ns 44.46 ns 0.77 0.35 False
13.40 ns 9.83 ns 0.73 0.61 False
22.97 ns 18.10 ns 0.79 0.59 False
29.51 ns 15.48 ns 0.52 0.52 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Memory.Span&lt;Int32&gt;*'
### System.Memory.Span<Int32>.Fill(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.Fill(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.LastIndexOfValue(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.Reverse(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.SequenceCompareToDifferent(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.SequenceEqual(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.GetPinnableReference(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.SequenceCompareToDifferent(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.LastIndexOfValue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.LastIndexOfAnyValues(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.LastIndexOfAnyValues(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.LastIndexOfValue(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.SequenceCompareTo(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.SequenceCompareTo(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.BinarySearch(Size: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.Reverse(Size: 33) #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Span<Int32>.SequenceCompareToDifferent(Size: 512) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Json_ToString<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
182.05 μs 158.23 μs 0.87 0.06 False
118.52 μs 108.31 μs 0.91 0.04 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 'MicroBenchmarks.Serializers.Json_ToString&lt;IndexViewModel&gt;*'
### MicroBenchmarks.Serializers.Json_ToString<IndexViewModel>.JsonNet_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToString<IndexViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
91.80 μs 74.10 μs 0.81 0.31 False
181.76 μs 145.90 μs 0.80 0.33 False
199.62 μs 160.31 μs 0.80 0.33 False
100.38 μs 80.84 μs 0.81 0.35 False
341.42 μs 256.89 μs 0.75 0.29 False
217.22 μs 155.24 μs 0.71 0.41 False
336.47 μs 299.84 μs 0.89 0.35 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Sort&lt;IntClass&gt;*'
### System.Collections.Sort<IntClass>.List(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<IntClass>.Array_ComparerClass(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<IntClass>.Array_ComparerStruct(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<IntClass>.Array(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<IntClass>.LinqQuery(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<IntClass>.Array_Comparison(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<IntClass>.LinqOrderByExtension(Size: 512) #### ETL Files #### Histogram #### 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 month ago

Run Information

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

Improvements in System.Text.Json.Tests.Perf_Segment

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.50 ms 1.34 ms 0.89 0.22 False
159.14 μs 146.85 μs 0.92 0.27 False
16.39 μs 13.97 μs 0.85 0.26 False
171.53 μs 146.98 μs 0.86 0.27 False
15.86 μs 13.99 μs 0.88 0.23 False
15.06 μs 13.60 μs 0.90 0.23 False
1.53 ms 1.34 ms 0.88 0.25 False
148.17 μs 132.39 μs 0.89 0.27 False
146.90 μs 132.08 μs 0.90 0.21 False

graph graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_Segment*'
### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 4096, TestCase: Json400KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 4096, TestCase: Json40KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 8192, TestCase: Json4KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequence(segmentSize: 4096, TestCase: Json40KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 4096, TestCase: Json4KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequence(segmentSize: 8192, TestCase: Json4KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 8192, TestCase: Json400KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Segment.ReadSingleSegmentSequenceByN(numberOfBytes: 8192, TestCase: Json40KB) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Segment.ReadMultiSegmentSequenceUsingSpan(segmentSize: 8192, TestCase: Json40KB) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.IO.Tests.BinaryReaderTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
41.47 ns 30.58 ns 0.74 0.54 False
42.20 ns 30.14 ns 0.71 0.49 False
39.37 ns 32.06 ns 0.81 0.42 False
446.48 ns 359.92 ns 0.81 0.28 False
20.21 ns 12.74 ns 0.63 0.65 False
172.03 ns 138.10 ns 0.80 0.32 False
216.19 ns 172.40 ns 0.80 0.31 False
37.50 ns 31.33 ns 0.84 0.42 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.IO.Tests.BinaryReaderTests*'
### System.IO.Tests.BinaryReaderTests.ReadUInt64 #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryReaderTests.ReadDouble #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryReaderTests.ReadUInt32 #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryReaderTests.ReadNonAsciiChar #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryReaderTests.ReadBool #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryReaderTests.ReadAsciiChar #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryReaderTests.ReadSmallString #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryReaderTests.ReadHalf #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.TryGetValueTrue<Int32, Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
140.67 μs 101.20 μs 0.72 0.28 False
17.85 μs 14.40 μs 0.81 0.40 False
136.40 μs 113.64 μs 0.83 0.16 False
345.75 μs 311.62 μs 0.90 0.28 False
31.53 μs 25.59 μs 0.81 0.30 False
17.78 μs 12.82 μs 0.72 0.46 False
24.29 μs 20.84 μs 0.86 0.35 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.TryGetValueTrue&lt;Int32, Int32&gt;*'
### System.Collections.TryGetValueTrue<Int32, Int32>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueTrue<Int32, Int32>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueTrue<Int32, Int32>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueTrue<Int32, Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueTrue<Int32, Int32>.IDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueTrue<Int32, Int32>.FrozenDictionaryOptimized(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryGetValueTrue<Int32, Int32>.Dictionary(Size: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Xml_FromStream<IndexViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
355.17 μs 330.56 μs 0.93 0.12 False
324.66 μs 295.02 μs 0.91 0.16 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 'MicroBenchmarks.Serializers.Xml_FromStream&lt;IndexViewModel&gt;*'
### MicroBenchmarks.Serializers.Xml_FromStream<IndexViewModel>.XmlSerializer_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_FromStream<IndexViewModel>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### 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 month ago

Run Information

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

Improvements in Microsoft.Extensions.Primitives.StringSegmentBenchmark

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
27.29 ns 23.22 ns 0.85 0.53 False
22.21 ns 15.84 ns 0.71 0.63 False
49.56 ns 38.23 ns 0.77 0.44 False
30.36 ns 25.32 ns 0.83 0.46 False
29.16 ns 23.30 ns 0.80 0.54 False
23.82 ns 13.94 ns 0.59 0.60 False
103.74 ns 70.24 ns 0.68 0.24 False
21.03 ns 15.01 ns 0.71 0.62 False
23.85 ns 18.30 ns 0.77 0.61 False
28.21 ns 20.06 ns 0.71 0.57 False
28.64 ns 20.15 ns 0.70 0.49 False
35.74 ns 32.41 ns 0.91 0.45 False
24.66 ns 16.31 ns 0.66 0.64 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Primitives.StringSegmentBenchmark*'
### Microsoft.Extensions.Primitives.StringSegmentBenchmark.StartsWith #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.IndexOfAny #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.Equals_Object_Valid #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.Equals_String #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.GetSegmentHashCode #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.Ctor_String #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.Indexer #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.GetValue #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.SubSegment #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.LastIndexOf #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.EndsWith #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.Equals_Valid #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Primitives.StringSegmentBenchmark.IndexOf #### ETL Files #### Histogram #### 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 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
13.25 μs 11.13 μs 0.84 0.42 False
161.87 μs 130.44 μs 0.81 0.35 False
19.11 μs 14.08 μs 0.74 0.45 False
14.97 μs 12.77 μs 0.85 0.50 False
27.57 μs 19.92 μs 0.72 0.42 False
365.98 μs 326.34 μs 0.89 0.21 False
114.44 μs 97.68 μs 0.85 0.16 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsKeyFalse&lt;Int32, Int32&gt;*'
### System.Collections.ContainsKeyFalse<Int32, Int32>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<Int32, Int32>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<Int32, Int32>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<Int32, Int32>.FrozenDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<Int32, Int32>.IDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<Int32, Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<Int32, Int32>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
33.04 μs 24.97 μs 0.76 0.19 False
16.09 μs 12.03 μs 0.75 0.26 False
15.10 μs 11.49 μs 0.76 0.24 False
28.41 μs 21.17 μs 0.74 0.28 False
19.19 μs 12.94 μs 0.67 0.24 False

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IterateForEachNonGeneric&lt;Int32&gt;*'
### System.Collections.IterateForEachNonGeneric<Int32>.Hashtable(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEachNonGeneric<Int32>.ArrayList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEachNonGeneric<Int32>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEachNonGeneric<Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEachNonGeneric<Int32>.Queue(Size: 512) #### ETL Files #### Histogram #### 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 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
116.91 μs 106.84 μs 0.91 0.05 False
110.04 μs 98.12 μs 0.89 0.07 False
104.26 μs 94.66 μs 0.91 0.05 False
121.17 μs 108.16 μs 0.89 0.05 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;IndexViewModel&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
961.01 ns 836.57 ns 0.87 0.18 False
651.99 ns 581.10 ns 0.89 0.25 False
817.85 ns 643.06 ns 0.79 0.27 False
668.08 ns 553.96 ns 0.83 0.27 False
819.29 ns 660.63 ns 0.81 0.22 False
985.61 ns 818.87 ns 0.83 0.19 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;Int32&gt;*'
### System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.CreateAddAndRemove<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
232.33 μs 183.90 μs 0.79 0.19 False
932.83 μs 809.77 μs 0.87 0.07 False
48.19 μs 39.17 μs 0.81 0.15 False
121.61 μs 113.75 μs 0.94 0.04 False
40.56 μs 29.27 μs 0.72 0.33 False
1.76 ms 1.44 ms 0.81 0.12 False
10.61 μs 8.56 μs 0.81 0.18 False
55.81 μs 49.37 μs 0.88 0.12 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CreateAddAndRemove&lt;Int32&gt;*'
### System.Collections.CreateAddAndRemove<Int32>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<Int32>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<Int32>.List(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<Int32>.LinkedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<Int32>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<Int32>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndRemove<Int32>.Dictionary(Size: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in Microsoft.Extensions.Logging.ScopesOverheadBenchmark

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
162.39 ns 133.18 ns 0.82 0.36 False
736.95 ns 646.56 ns 0.88 0.18 False
211.60 ns 175.49 ns 0.83 0.26 False
164.31 ns 122.75 ns 0.75 0.34 False
442.87 ns 383.27 ns 0.87 0.23 False
158.63 ns 130.57 ns 0.82 0.31 False
210.49 ns 172.08 ns 0.82 0.33 False
417.72 ns 350.02 ns 0.84 0.16 False
525.26 ns 470.31 ns 0.90 0.20 False
522.61 ns 447.57 ns 0.86 0.18 False
469.09 ns 384.95 ns 0.82 0.22 False
529.01 ns 435.42 ns 0.82 0.20 False
470.57 ns 381.18 ns 0.81 0.22 False
238.95 ns 193.17 ns 0.81 0.22 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Logging.ScopesOverheadBenchmark*'
### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel(HasISupportLoggingScopeLogger: True, CaptureScopes: False) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered_InsideScope(HasISupportLoggingScopeLogger: True, CaptureScopes: True) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel_InsideScope(HasISupportLoggingScopeLogger: False, CaptureScopes: False) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel(HasISupportLoggingScopeLogger: False, CaptureScopes: False) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered(HasISupportLoggingScopeLogger: True, CaptureScopes: False) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel(HasISupportLoggingScopeLogger: True, CaptureScopes: True) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel_InsideScope(HasISupportLoggingScopeLogger: True, CaptureScopes: False) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel_InsideScope(HasISupportLoggingScopeLogger: True, CaptureScopes: True) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered_InsideScope(HasISupportLoggingScopeLogger: False, CaptureScopes: True) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered_InsideScope(HasISupportLoggingScopeLogger: False, CaptureScopes: False) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered(HasISupportLoggingScopeLogger: False, CaptureScopes: True) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered_InsideScope(HasISupportLoggingScopeLogger: True, CaptureScopes: False) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.NotFiltered(HasISupportLoggingScopeLogger: True, CaptureScopes: True) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.ScopesOverheadBenchmark.FilteredByLevel_InsideScope(HasISupportLoggingScopeLogger: False, CaptureScopes: True) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
387.19 μs 318.97 μs 0.82 0.13 False
30.08 μs 22.91 μs 0.76 0.25 False
16.49 μs 13.60 μs 0.82 0.29 False
22.30 μs 15.68 μs 0.70 0.30 False
139.46 μs 115.80 μs 0.83 0.35 False
14.52 μs 11.71 μs 0.81 0.27 False
9.89 μs 7.97 μs 0.81 0.33 False
14.44 μs 9.98 μs 0.69 0.35 False
146.43 μs 106.92 μs 0.73 0.31 False
10.18 μs 9.32 μs 0.92 0.34 False
122.94 μs 103.25 μs 0.84 0.28 False
271.21 μs 206.99 μs 0.76 0.16 False
9.38 μs 7.78 μs 0.83 0.22 False
9.19 μs 7.50 μs 0.82 0.36 False
24.01 μs 18.40 μs 0.77 0.25 False
9.35 μs 7.68 μs 0.82 0.25 False
8.25 μs 6.51 μs 0.79 0.25 False
394.26 μs 311.86 μs 0.79 0.17 False
28.88 μs 25.73 μs 0.89 0.21 False
15.57 μs 11.78 μs 0.76 0.26 False
20.22 μs 15.84 μs 0.78 0.18 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.IterateForEach&lt;String&gt;*'
### System.Collections.IterateForEach<String>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.ConcurrentQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.FrozenDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.IEnumerable(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.LinkedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.ImmutableList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.ImmutableStack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.List(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.FrozenSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.ConcurrentStack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.IterateForEach<String>.ConcurrentBag(Size: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
99.09 μs 87.79 μs 0.89 0.13 False
44.30 μs 37.08 μs 0.84 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.Collections.TryAddGiventSize&lt;String&gt;*'
### System.Collections.TryAddGiventSize<String>.ConcurrentDictionary(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.TryAddGiventSize<String>.Dictionary(Count: 512) #### ETL Files #### Histogram #### 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 7ce5d0fdf728bb2ae213541b17c2e489d2b06d09
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
58.42 ns 38.84 ns 0.66 0.54 False
32.27 ns 29.84 ns 0.92 0.49 False
31.65 ns 20.58 ns 0.65 0.54 False
30.95 ns 20.49 ns 0.66 0.56 False
78.97 ns 69.85 ns 0.88 0.28 False
59.41 ns 37.65 ns 0.63 0.51 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Concurrent.IsEmpty&lt;String&gt;*'
### System.Collections.Concurrent.IsEmpty<String>.Bag(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.IsEmpty<String>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.IsEmpty<String>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.IsEmpty<String>.Queue(Size: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.IsEmpty<String>.Dictionary(Size: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Concurrent.IsEmpty<String>.Bag(Size: 0) #### ETL Files #### Histogram #### 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 month ago

Run Information

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

Improvements in System.Collections.Tests.Add_Remove_SteadyState<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
293.40 ns 175.25 ns 0.60 0.25 False
29.56 ns 20.82 ns 0.70 0.54 False
36.49 ns 26.69 ns 0.73 0.59 False
67.49 ns 55.12 ns 0.82 0.41 False
130.61 ns 95.51 ns 0.73 0.42 False
53.27 ns 32.28 ns 0.61 0.54 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Tests.Add_Remove_SteadyState&lt;Int32&gt;*'
### System.Collections.Tests.Add_Remove_SteadyState<Int32>.ImmutableQueue(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Add_Remove_SteadyState<Int32>.Queue(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Add_Remove_SteadyState<Int32>.ConcurrentStack(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Add_Remove_SteadyState<Int32>.ImmutableStack(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Add_Remove_SteadyState<Int32>.ConcurrentBag(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Add_Remove_SteadyState<Int32>.ConcurrentQueue(Count: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Json_ToString<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
631.17 μs 580.42 μs 0.92 0.08 False
2.33 ms 2.13 ms 0.91 0.15 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 'MicroBenchmarks.Serializers.Json_ToString&lt;CollectionsOfPrimitives&gt;*'
### MicroBenchmarks.Serializers.Json_ToString<CollectionsOfPrimitives>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToString<CollectionsOfPrimitives>.JsonNet_ #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
1.03 ms 937.55 μs 0.91 0.11 False
790.37 μs 690.10 μs 0.87 0.12 False
107.74 μs 98.47 μs 0.91 0.17 False
2.79 ms 2.34 ms 0.84 0.11 False
16.66 μs 12.20 μs 0.73 0.38 False
59.70 μs 52.34 μs 0.88 0.13 False
732.75 μs 586.41 μs 0.80 0.18 False
4.95 μs 4.24 μs 0.86 0.24 False
15.43 μs 13.38 μs 0.87 0.31 False
55.76 μs 49.49 μs 0.89 0.13 False
25.80 μs 20.84 μs 0.81 0.25 False
37.68 μs 32.65 μs 0.87 0.28 False
9.29 μs 8.15 μs 0.88 0.36 False
12.20 μs 9.50 μs 0.78 0.22 False
45.29 μs 41.49 μs 0.92 0.13 False
2.80 ms 2.48 ms 0.88 0.09 False
1.11 ms 998.39 μs 0.90 0.14 False
1.35 ms 1.19 ms 0.88 0.11 False
12.64 μs 10.19 μs 0.81 0.34 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CreateAddAndClear&lt;String&gt;*'
### System.Collections.CreateAddAndClear<String>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.ICollection(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.IDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.Array(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.LinkedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.ImmutableQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.ConcurrentBag(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.ImmutableStack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.ConcurrentQueue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.SortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CreateAddAndClear<String>.Queue(Size: 512) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 073e35e7e32624e0f841d94364d2f28c73662ff7
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.AddGivenSize<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
70.57 μs 58.36 μs 0.83 0.27 False
745.77 μs 655.64 μs 0.88 0.15 False
102.18 μs 87.62 μs 0.86 0.11 False
14.71 μs 10.70 μs 0.73 0.32 False
42.88 μs 37.11 μs 0.87 0.16 False
11.62 μs 8.84 μs 0.76 0.34 False
32.49 μs 26.09 μs 0.80 0.24 False
45.62 μs 38.33 μs 0.84 0.15 False
10.51 μs 8.11 μs 0.77 0.36 False
9.23 μs 8.37 μs 0.91 0.42 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.AddGivenSize&lt;String&gt;*'
### System.Collections.AddGivenSize<String>.ObservableCollection(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<String>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<String>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<String>.ICollection(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<String>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<String>.Queue(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<String>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<String>.IDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<String>.Stack(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<String>.List(Size: 512) #### ETL Files #### Histogram #### 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 073e35e7e32624e0f841d94364d2f28c73662ff7
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Text.Json.Tests.Perf_Get

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.62 μs 2.13 μs 0.81 0.27 False
11.52 μs 8.95 μs 0.78 0.26 False
597.65 ns 505.78 ns 0.85 0.23 False
2.47 μs 2.03 μs 0.82 0.36 False
18.31 μs 14.88 μs 0.81 0.26 False
2.59 μs 2.06 μs 0.79 0.42 False
2.62 μs 2.07 μs 0.79 0.35 False
2.61 μs 2.15 μs 0.82 0.32 False
2.60 μs 2.38 μs 0.92 0.31 False

graph graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_Get*'
### System.Text.Json.Tests.Perf_Get.GetSByte #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Get.GetDouble #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Get.GetBoolean #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Get.GetUInt64 #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Get.GetString #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Get.GetInt64 #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Get.GetUInt16 #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Get.GetInt32 #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Perf_Get.GetInt16 #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Xml_ToStream<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.26 ms 1.17 ms 0.93 0.12 False
1.87 ms 1.60 ms 0.85 0.15 False
2.70 ms 2.27 ms 0.84 0.13 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;CollectionsOfPrimitives&gt;*'
### MicroBenchmarks.Serializers.Xml_ToStream<CollectionsOfPrimitives>.XmlSerializer_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<CollectionsOfPrimitives>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<CollectionsOfPrimitives>.DataContractSerializer_ #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_UInt64

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
65.93 ns 48.92 ns 0.74 0.54 False
25.96 ns 15.66 ns 0.60 0.65 False
59.69 ns 56.55 ns 0.95 0.55 False
27.27 ns 18.65 ns 0.68 0.61 False
65.10 ns 55.65 ns 0.85 0.34 False
40.81 ns 29.13 ns 0.71 0.56 False
82.23 ns 68.73 ns 0.84 0.42 False
51.68 ns 38.51 ns 0.75 0.57 False
48.04 ns 42.15 ns 0.88 0.40 False
53.16 ns 45.82 ns 0.86 0.57 False
21.28 ns 15.11 ns 0.71 0.64 False
79.12 ns 60.28 ns 0.76 0.49 False
41.79 ns 39.21 ns 0.94 0.47 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_UInt64*'
### System.Tests.Perf_UInt64.Parse(value: "12345") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.ToString(value: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.Parse(value: "0") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.TryFormat(value: 12345) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.TryParse(value: "18446744073709551615") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.TryParseHex(value: "0") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.Parse(value: "18446744073709551615") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.ParseSpan(value: "0") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.TryParse(value: "12345") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.ParseSpan(value: "12345") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.TryFormat(value: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.ParseSpan(value: "18446744073709551615") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt64.TryParse(value: "0") #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
112.08 ns 90.28 ns 0.81 0.42 False
63.04 ns 51.14 ns 0.81 0.54 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.BinaryWriterExtendedTests*'
### System.IO.Tests.BinaryWriterExtendedTests.WriteAsciiCharArray(StringLengthInChars: 32) #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryWriterExtendedTests.WriteAsciiString(StringLengthInChars: 32) #### ETL Files #### Histogram #### 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 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
29.31 μs 24.01 μs 0.82 0.17 False
30.17 μs 25.76 μs 0.85 0.15 False
30.66 μs 27.72 μs 0.90 0.12 False
29.87 μs 25.97 μs 0.87 0.15 False
28.30 μs 24.67 μs 0.87 0.15 False
30.29 μs 24.05 μs 0.79 0.12 False
29.44 μs 24.70 μs 0.84 0.12 False

graph graph graph graph graph graph graph Test Report

Repro

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

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;ArrayList&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 073e35e7e32624e0f841d94364d2f28c73662ff7
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Int32

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
62.42 ns 39.37 ns 0.63 0.46 False
66.45 ns 44.92 ns 0.68 0.43 False
80.40 ns 52.78 ns 0.66 0.46 False
45.09 ns 38.22 ns 0.85 0.50 False
63.55 ns 46.41 ns 0.73 0.41 False
57.41 ns 47.96 ns 0.84 0.40 False
65.34 ns 51.85 ns 0.79 0.47 False
46.56 ns 40.59 ns 0.87 0.50 False
55.47 ns 44.84 ns 0.81 0.52 False
66.87 ns 54.50 ns 0.82 0.51 False
22.71 ns 18.76 ns 0.83 0.61 False
81.57 ns 59.39 ns 0.73 0.46 False
75.77 ns 65.02 ns 0.86 0.41 False
31.98 ns 22.71 ns 0.71 0.60 False
63.31 ns 56.47 ns 0.89 0.40 False
84.28 ns 77.10 ns 0.91 0.38 False
67.12 ns 56.43 ns 0.84 0.44 False
50.59 ns 45.97 ns 0.91 0.49 False
78.08 ns 57.73 ns 0.74 0.46 False
80.88 ns 49.99 ns 0.62 0.44 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Int32*'
### System.Tests.Perf_Int32.TryParseSpan(value: "12345") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.TryParseSpan(value: "-2147483648") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.ParseHex(value: "3039") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.TryParse(value: "4") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.TryParseSpan(value: "2147483647") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.TryParse(value: "2147483647") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.TryParse(value: "-2147483648") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.TryParseSpan(value: "4") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.ParseSpan(value: "12345") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.ParseSpan(value: "-2147483648") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.ToString(value: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.Parse(value: "2147483647") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.Parse(value: "-2147483648") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.TryFormat(value: 4) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.Parse(value: "4") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.ToString(value: 2147483647) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.ParseSpan(value: "2147483647") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.TryParse(value: "12345") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.ParseHex(value: "4") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int32.Parse(value: "12345") #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3de068c2be232960f4cb3b233dd2b4014e2ce7c3
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Buffers.Tests.ReadOnlySequenceTests<Char>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
94.37 ns 76.83 ns 0.81 0.35 False
491.71 ns 441.95 ns 0.90 0.42 False
86.23 ns 66.49 ns 0.77 0.27 False
26.45 ns 20.36 ns 0.77 0.43 False
42.41 ns 31.49 ns 0.74 0.46 False
34.84 ns 24.43 ns 0.70 0.36 False
28.84 ns 22.08 ns 0.77 0.41 False
639.91 ns 450.44 ns 0.70 0.41 False
26.93 ns 20.26 ns 0.75 0.46 False
197.96 ns 143.30 ns 0.72 0.33 False
130.16 ns 101.20 ns 0.78 0.31 False
564.30 ns 401.20 ns 0.71 0.32 False
485.64 ns 405.93 ns 0.84 0.33 False
122.21 ns 96.94 ns 0.79 0.33 False
97.38 ns 67.94 ns 0.70 0.40 False
35.97 ns 27.00 ns 0.75 0.43 False
138.00 ns 104.00 ns 0.75 0.34 False
34.08 ns 24.69 ns 0.72 0.43 False
91.88 ns 70.31 ns 0.77 0.29 False
148.83 ns 111.57 ns 0.75 0.42 False
87.29 ns 65.75 ns 0.75 0.33 False
47.05 ns 28.78 ns 0.61 0.43 False
484.22 ns 366.73 ns 0.76 0.31 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Buffers.Tests.ReadOnlySequenceTests&lt;Char&gt;*'
### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateTryGetSingleSegment #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateForEachTenSegments #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.SliceArray #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstSpanTenSegments #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstMemory #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstTenSegments #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstSingleSegment #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateGetPositionTenSegments #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstSpanSingleSegment #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateForEachMemory #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.SliceTenSegments #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateGetPositionMemory #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateGetPositionArray #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateForEachArray #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateTryGetArray #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstSpanMemory #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateForEachSingleSegment #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstSpanArray #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.SliceMemory #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateTryGetMemory #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.SliceSingleSegment #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstArray #### ETL Files #### Histogram #### JIT Disasms ### System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateGetPositionSingleSegment #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
33.24 ns 26.41 ns 0.79 0.55 False
220.47 ns 163.74 ns 0.74 0.37 False
21.63 ns 18.44 ns 0.85 0.54 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Runtime.Intrinsics.Tests.Perf_Vector128Of&lt;SByte&gt;*'
### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<SByte>.SquareRootBenchmark #### ETL Files #### Histogram #### JIT Disasms ### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<SByte>.GetHashCodeBenchmark #### ETL Files #### Histogram #### JIT Disasms ### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<SByte>.DotBenchmark #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
22.75 ns 14.20 ns 0.62 0.58 False
21.97 ns 13.45 ns 0.61 0.62 False
22.90 ns 15.96 ns 0.70 0.64 False
27.38 ns 21.14 ns 0.77 0.54 False
20.85 ns 11.96 ns 0.57 0.57 False
22.64 ns 15.75 ns 0.70 0.63 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.IO.Tests.BinaryWriterTests*'
### System.IO.Tests.BinaryWriterTests.WriteUInt16 #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryWriterTests.WriteDouble #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryWriterTests.WriteUInt32 #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryWriterTests.WriteAsciiChar #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryWriterTests.WriteBool #### ETL Files #### Histogram #### JIT Disasms ### System.IO.Tests.BinaryWriterTests.WriteUInt64 #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3ffa05f77509cd4c5eb1452ff49c0254a8bed905
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in Microsoft.Extensions.Logging.LoggingOverhead

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
426.83 ns 361.33 ns 0.85 0.13 False
546.66 ns 444.10 ns 0.81 0.15 False
378.88 ns 319.43 ns 0.84 0.22 False
297.72 ns 256.44 ns 0.86 0.24 False
157.06 ns 137.19 ns 0.87 0.35 False
48.90 ns 33.15 ns 0.68 0.53 False
456.95 ns 360.80 ns 0.79 0.25 False
482.36 ns 392.29 ns 0.81 0.23 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Logging.LoggingOverhead*'
### Microsoft.Extensions.Logging.LoggingOverhead.TwoArguments_FilteredByLevel #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.LoggingOverhead.TwoArguments #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.LoggingOverhead.NoArguments #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.LoggingOverhead.NoArguments_FilteredByLevel #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.LoggingOverhead.TwoArguments_DefineMessage_FilteredByLevel #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.LoggingOverhead.NoArguments_DefineMessage_FilteredByLevel #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.LoggingOverhead.NoArguments_DefineMessage #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.LoggingOverhead.TwoArguments_DefineMessage #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
10.76 μs 9.36 μs 0.87 0.15 False
11.37 μs 10.00 μs 0.88 0.16 False
10.91 μs 9.37 μs 0.86 0.15 False
12.47 μs 11.06 μs 0.89 0.12 False
11.75 μs 10.27 μs 0.87 0.17 False
10.10 μs 8.75 μs 0.87 0.16 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;LargeStructWithProperties&gt;*'
### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LargeStructWithProperties>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### 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 073e35e7e32624e0f841d94364d2f28c73662ff7
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Byte

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
61.46 ns 47.95 ns 0.78 0.48 False
23.72 ns 14.12 ns 0.60 0.64 False
77.93 ns 62.95 ns 0.81 0.38 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Byte*'
### System.Tests.Perf_Byte.Parse(value: "0") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Byte.ToString(value: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Byte.ToString(value: 255) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
47.10 μs 40.24 μs 0.85 0.12 False
48.20 μs 44.40 μs 0.92 0.11 False
52.03 μs 48.71 μs 0.94 0.10 False
56.53 μs 47.50 μs 0.84 0.08 False
47.56 μs 42.94 μs 0.90 0.11 False
46.22 μs 39.94 μs 0.86 0.11 False
53.15 μs 48.84 μs 0.92 0.13 False
54.14 μs 48.85 μs 0.90 0.08 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

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;Hashtable&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 2ecc177a5fcfa5a1f7c9ab60125ade171fb4d750
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_UInt16

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
20.28 ns 13.69 ns 0.68 0.60 False
51.18 ns 42.25 ns 0.83 0.40 False
68.26 ns 59.63 ns 0.87 0.44 False
60.12 ns 52.93 ns 0.88 0.42 False
57.57 ns 43.96 ns 0.76 0.45 False
41.43 ns 38.04 ns 0.92 0.44 False
76.13 ns 55.41 ns 0.73 0.42 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_UInt16*'
### System.Tests.Perf_UInt16.ToString(value: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt16.TryParse(value: "12345") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt16.Parse(value: "65535") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt16.Parse(value: "0") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt16.TryParse(value: "65535") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt16.TryParse(value: "0") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_UInt16.Parse(value: "12345") #### ETL Files #### Histogram #### 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 7ce5d0fdf728bb2ae213541b17c2e489d2b06d09
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
12.46 μs 11.41 μs 0.92 0.10 False
11.84 μs 10.88 μs 0.92 0.12 False
7.95 μs 7.16 μs 0.90 0.16 False
11.31 μs 10.33 μs 0.91 0.13 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ColdStartSerialization&lt;SimpleStructWithProperties&gt;*'
### System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>.NewCachedCustomConverter #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>.NewCustomizedOptions #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>.CachedDefaultOptions #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>.NewDefaultOptions #### ETL Files #### Histogram #### 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 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
769.84 μs 637.80 μs 0.83 0.30 False
154.93 μs 142.67 μs 0.92 0.24 False
260.50 μs 211.58 μs 0.81 0.21 False
699.62 μs 506.65 μs 0.72 0.34 False
138.36 μs 116.25 μs 0.84 0.29 False

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsTrueComparer&lt;Int32&gt;*'
### System.Collections.ContainsTrueComparer<Int32>.ImmutableSortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrueComparer<Int32>.FrozenSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrueComparer<Int32>.ImmutableHashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrueComparer<Int32>.SortedSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsTrueComparer<Int32>.HashSet(Size: 512) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.AddGivenSize<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
22.31 μs 19.06 μs 0.85 0.27 False
27.98 μs 22.26 μs 0.80 0.28 False
456.95 μs 402.11 μs 0.88 0.11 False
94.10 μs 82.18 μs 0.87 0.21 False
70.85 μs 59.37 μs 0.84 0.25 False
17.60 μs 15.07 μs 0.86 0.26 False
8.79 μs 6.22 μs 0.71 0.37 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.AddGivenSize&lt;Int32&gt;*'
### System.Collections.AddGivenSize<Int32>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<Int32>.IDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<Int32>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<Int32>.ObservableCollection(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<Int32>.HashSet(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.AddGivenSize<Int32>.ICollection(Size: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
7.47 μs 6.67 μs 0.89 0.20 False
7.96 μs 7.05 μs 0.89 0.22 False
8.73 μs 7.49 μs 0.86 0.15 False
8.54 μs 7.54 μs 0.88 0.12 False
7.79 μs 7.02 μs 0.90 0.18 False
7.58 μs 6.47 μs 0.85 0.13 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;StructRecord&gt;*'
### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<StructRecord>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### 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 month ago

Run Information

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

Improvements in System.Tests.Perf_Random

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
25.10 ns 21.08 ns 0.84 0.58 False
30.72 ns 20.56 ns 0.67 0.59 False
31.49 ns 22.11 ns 0.70 0.60 False
35.97 ns 28.18 ns 0.78 0.55 False
26.61 ns 15.60 ns 0.59 0.58 False
50.10 ns 30.72 ns 0.61 0.57 False
30.51 ns 21.83 ns 0.72 0.54 False
36.04 ns 22.48 ns 0.62 0.58 False
33.66 ns 30.63 ns 0.91 0.51 False
33.17 ns 25.66 ns 0.77 0.52 False
29.30 ns 21.18 ns 0.72 0.54 False
27.94 ns 17.03 ns 0.61 0.53 False
113.87 ns 91.90 ns 0.81 0.38 False
118.93 ns 91.25 ns 0.77 0.43 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Random*'
### System.Tests.Perf_Random.Next_unseeded #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.NextDouble_unseeded #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.NextDouble #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.Next_int #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.NextSingle_unseeded #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.Next_long_unseeded #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.NextSingle #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.Next_long_long_unseeded #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.Next_int_int #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.Next_int_unseeded #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.Next #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.Next_int_int_unseeded #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.Next_long_long #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Random.Next_long #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
75.43 ns 62.51 ns 0.83 0.34 False
42.35 ns 33.59 ns 0.79 0.36 False
63.64 ns 54.94 ns 0.86 0.41 False
63.53 ns 53.74 ns 0.85 0.29 False
51.30 ns 36.63 ns 0.71 0.46 False
348.86 ns 299.62 ns 0.86 0.19 False
6.55 μs 6.08 μs 0.93 0.14 False
87.67 ns 73.05 ns 0.83 0.26 False
68.63 ns 52.74 ns 0.77 0.27 False
365.16 ns 300.58 ns 0.82 0.16 False
272.15 ns 252.11 ns 0.93 0.05 False
4.44 μs 3.85 μs 0.87 0.19 False
70.85 ns 56.41 ns 0.80 0.35 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives&lt;Int32&gt;*'
### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.AddMultiply_ScalarAddend(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.Max(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.BitwiseAnd_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.Max_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.SumOfSquares(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.Add_Scalar(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.Abs(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.AddMultiply_Vectors(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.Add_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.BitwiseAnd_Scalar(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.SumOfSquares(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.Negate(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Int32>.AddMultiply_ScalarMultiplier(BufferLength: 128) #### ETL Files #### Histogram #### 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 3de068c2be232960f4cb3b233dd2b4014e2ce7c3
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.IO.Tests.UnmanagedMemoryStreamTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
282.33 μs 239.97 μs 0.85 0.20 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.UnmanagedMemoryStreamTests*'
### System.IO.Tests.UnmanagedMemoryStreamTests.ReadAsBytes #### ETL Files #### Histogram #### 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 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Json_ToStream<CollectionsOfPrimitives>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
707.05 μs 602.57 μs 0.85 0.14 False
2.30 ms 2.07 ms 0.90 0.13 False
724.67 μs 599.26 μs 0.83 0.17 False
4.84 ms 4.17 ms 0.86 0.06 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToStream&lt;CollectionsOfPrimitives&gt;*'
### MicroBenchmarks.Serializers.Json_ToStream<CollectionsOfPrimitives>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<CollectionsOfPrimitives>.JsonNet_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<CollectionsOfPrimitives>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<CollectionsOfPrimitives>.DataContractJsonSerializer_ #### ETL Files #### Histogram #### 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 month ago

Run Information

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

Improvements in System.Text.RegularExpressions.Tests.Perf_Regex_Cache

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
23.20 ms 20.47 ms 0.88 0.06 False
215.77 ms 196.00 ms 0.91 0.07 False
130.13 ms 114.80 ms 0.88 0.10 False
132.51 ms 123.49 ms 0.93 0.11 False
311.32 ms 289.54 ms 0.93 0.08 False

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.RegularExpressions.Tests.Perf_Regex_Cache*'
### System.Text.RegularExpressions.Tests.Perf_Regex_Cache.IsMatch(total: 40000, unique: 1600, cacheSize: 3200) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.RegularExpressions.Tests.Perf_Regex_Cache.IsMatch(total: 40000, unique: 1600, cacheSize: 800) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.RegularExpressions.Tests.Perf_Regex_Cache.IsMatch(total: 400000, unique: 7, cacheSize: 15) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.RegularExpressions.Tests.Perf_Regex_Cache.IsMatch(total: 40000, unique: 7, cacheSize: 0) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.RegularExpressions.Tests.Perf_Regex_Cache.IsMatch(total: 40000, unique: 1600, cacheSize: 15) #### ETL Files #### Histogram #### 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 3ffa05f77509cd4c5eb1452ff49c0254a8bed905
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Perf_SingleCharFrozenDictionary

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
157.92 μs 141.99 μs 0.90 0.13 False
3.66 μs 2.75 μs 0.75 0.48 False
502.26 μs 395.43 μs 0.79 0.37 False
16.12 μs 13.32 μs 0.83 0.17 False
604.70 ns 392.87 ns 0.65 0.43 False
57.26 μs 38.81 μs 0.68 0.36 False
1.53 ms 1.33 ms 0.87 0.12 False
34.00 μs 30.44 μs 0.90 0.39 False
369.21 μs 304.27 μs 0.82 0.45 False
2.88 μs 2.33 μs 0.81 0.13 False
5.54 μs 3.82 μs 0.69 0.45 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Perf_SingleCharFrozenDictionary*'
### System.Collections.Perf_SingleCharFrozenDictionary.ToFrozenDictionary(Count: 1000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SingleCharFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SingleCharFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 10000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SingleCharFrozenDictionary.ToFrozenDictionary(Count: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SingleCharFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SingleCharFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 1000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SingleCharFrozenDictionary.ToFrozenDictionary(Count: 10000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SingleCharFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 1000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SingleCharFrozenDictionary.TryGetValue_False_FrozenDictionary(Count: 10000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SingleCharFrozenDictionary.ToFrozenDictionary(Count: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Perf_SingleCharFrozenDictionary.TryGetValue_True_FrozenDictionary(Count: 100) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.66 μs 4.28 μs 0.92 0.23 False
105.35 μs 94.36 μs 0.90 0.21 False
4.14 μs 3.81 μs 0.92 0.19 False
115.23 μs 105.49 μs 0.92 0.32 False
297.96 μs 227.19 μs 0.76 0.37 False
4.87 μs 4.26 μs 0.88 0.26 False
94.96 μs 87.61 μs 0.92 0.22 False
11.01 μs 9.38 μs 0.85 0.39 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives&lt;Int32&gt;*'
### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.TrailingZeroCount(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.PopCount(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.OnesComplement(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.TrailingZeroCount(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.LeadingZeroCount(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.PopCount(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.OnesComplement(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Int32>.LeadingZeroCount(BufferLength: 128) #### ETL Files #### Histogram #### 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 42c2362ca7d6030a4f665bb309fe49ce6552502b
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Tests.Add_Remove_SteadyState<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
52.55 ns 33.06 ns 0.63 0.53 False
47.53 ns 28.77 ns 0.61 0.46 False
127.76 ns 119.53 ns 0.94 0.39 False
42.24 ns 32.03 ns 0.76 0.56 False
149.08 ns 131.54 ns 0.88 0.22 False
46.51 ns 36.45 ns 0.78 0.52 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Tests.Add_Remove_SteadyState&lt;String&gt;*'
### System.Collections.Tests.Add_Remove_SteadyState<String>.ConcurrentQueue(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Add_Remove_SteadyState<String>.ConcurrentStack(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Add_Remove_SteadyState<String>.ConcurrentBag(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Add_Remove_SteadyState<String>.Stack(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Add_Remove_SteadyState<String>.ImmutableQueue(Count: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Add_Remove_SteadyState<String>.Queue(Count: 512) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 073e35e7e32624e0f841d94364d2f28c73662ff7
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Memory.Slice<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.35 ns 3.20 ns 0.73 0.43 False
4.40 ns 3.19 ns 0.72 0.31 False
4.44 ns 3.29 ns 0.74 0.36 False
5.73 ns 3.44 ns 0.60 0.35 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Memory.Slice&lt;Byte&gt;*'
### System.Memory.Slice<Byte>.SpanStartLength #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Slice<Byte>.ReadOnlySpanStartLength #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Slice<Byte>.SpanStart #### ETL Files #### Histogram #### JIT Disasms ### System.Memory.Slice<Byte>.ReadOnlySpanStart #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Xml.Linq.Perf_XDocument

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
128.25 ns 113.74 ns 0.89 0.26 False
192.16 ns 170.67 ns 0.89 0.32 False
35.26 ns 29.35 ns 0.83 0.60 False
8.78 μs 7.99 μs 0.91 0.05 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Xml.Linq.Perf_XDocument*'
### System.Xml.Linq.Perf_XDocument.CreateWithRootlEement #### ETL Files #### Histogram #### JIT Disasms ### System.Xml.Linq.Perf_XDocument.GetElement #### ETL Files #### Histogram #### JIT Disasms ### System.Xml.Linq.Perf_XDocument.GetRootElement #### ETL Files #### Histogram #### JIT Disasms ### System.Xml.Linq.Perf_XDocument.Parse #### ETL Files #### Histogram #### 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 3de068c2be232960f4cb3b233dd2b4014e2ce7c3
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
280.11 μs 264.71 μs 0.95 0.15 False
59.58 ns 50.95 ns 0.86 0.42 False
82.62 ns 70.47 ns 0.85 0.28 False
64.82 ns 56.32 ns 0.87 0.26 False
61.31 ns 39.92 ns 0.65 0.31 False
69.97 ns 57.66 ns 0.82 0.41 False
363.67 ns 302.68 ns 0.83 0.12 False
5.24 μs 4.84 μs 0.92 0.24 False
71.00 ns 51.14 ns 0.72 0.37 False
67.51 ns 59.92 ns 0.89 0.26 False
127.69 ns 112.50 ns 0.88 0.15 False
119.27 ns 104.21 ns 0.87 0.18 False
361.46 ns 303.77 ns 0.84 0.14 False
346.60 ns 311.66 ns 0.90 0.19 False
68.89 ns 53.01 ns 0.77 0.39 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives&lt;Single&gt;*'
### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Abs(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.SumOfMagnitudes(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.AddMultiply_Vectors(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.BitwiseAnd_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.SumOfSquares(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.AddMultiply_ScalarAddend(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Add_Scalar(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Negate(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Divide_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.AddMultiply_ScalarMultiplier(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Max_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.MaxMagnitude_Vector(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.BitwiseAnd_Scalar(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Divide_Scalar(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Add_Vector(BufferLength: 128) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.IndexerSetReverse<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
7.56 μs 5.48 μs 0.72 0.44 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.IndexerSetReverse&lt;Int32&gt;*'
### System.Collections.IndexerSetReverse<Int32>.IList(Size: 512) #### ETL Files #### Histogram #### 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 073e35e7e32624e0f841d94364d2f28c73662ff7
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
29.74 μs 27.13 μs 0.91 0.07 False
28.03 μs 25.37 μs 0.91 0.10 False
37.41 μs 34.18 μs 0.91 0.06 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;Dictionary&lt;String, String&gt;&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### 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 2ecc177a5fcfa5a1f7c9ab60125ade171fb4d750
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in Struct.GSeq

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
214.19 μs 144.16 μs 0.67 0.37 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 'Struct.GSeq*'
### Struct.GSeq.FilterSkipMapSum #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline dc982632aa2b15123ba5d7ff76589cd6c8e660ba
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.24 μs 1.16 μs 0.94 0.14 False
12.20 μs 10.21 μs 0.84 0.42 False
265.36 μs 232.50 μs 0.88 0.38 False
1.28 μs 1.12 μs 0.87 0.15 False
205.68 ns 162.93 ns 0.79 0.20 False
25.09 μs 22.92 μs 0.91 0.21 False
1.34 μs 1.15 μs 0.86 0.19 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives&lt;Byte&gt;*'
### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.PopCount(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.LeadingZeroCount(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.LeadingZeroCount(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.OnesComplement(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.ShiftLeft(BufferLength: 128) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.PopCount(BufferLength: 3079) #### ETL Files #### Histogram #### JIT Disasms ### System.Numerics.Tensors.Tests.Perf_BinaryIntegerTensorPrimitives<Byte>.TrailingZeroCount(BufferLength: 128) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in Devirtualization.EqualityComparer

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
290.93 ns 230.13 ns 0.79 0.20 False
272.69 ns 213.17 ns 0.78 0.21 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 'Devirtualization.EqualityComparer*'
### Devirtualization.EqualityComparer.ValueTupleCompareWrapped #### ETL Files #### Histogram #### JIT Disasms ### Devirtualization.EqualityComparer.ValueTupleCompareCached #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Uri

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
555.33 ns 483.28 ns 0.87 0.18 False
17.46 ns 12.19 ns 0.70 0.68 False
573.46 ns 487.94 ns 0.85 0.17 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Uri*'
### System.Tests.Perf_Uri.UriBuilderReplacePort #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Uri.PathAndQuery #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Uri.BuilderToString #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Sort<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
502.69 μs 422.76 μs 0.84 0.27 False
77.74 μs 65.69 μs 0.85 0.15 False
792.54 μs 682.44 μs 0.86 0.19 False
780.66 μs 684.58 μs 0.88 0.23 False
78.11 μs 65.90 μs 0.84 0.16 False

graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Sort&lt;Int32&gt;*'
### System.Collections.Sort<Int32>.Array_Comparison(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<Int32>.Array_ComparerStruct(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<Int32>.LinqQuery(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<Int32>.LinqOrderByExtension(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Sort<Int32>.Array_ComparerClass(Size: 512) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Reflection.Invoke

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
370.40 ns 303.54 ns 0.82 0.12 False
499.27 ns 467.26 ns 0.94 0.08 False
600.66 ns 528.87 ns 0.88 0.06 False
358.41 ns 309.81 ns 0.86 0.10 False
416.71 ns 383.32 ns 0.92 0.07 False
556.81 ns 513.13 ns 0.92 0.07 False
220.21 ns 197.34 ns 0.90 0.16 False
308.46 ns 252.61 ns 0.82 0.20 False
477.19 ns 424.28 ns 0.89 0.14 False
292.10 ns 261.01 ns 0.89 0.18 False
289.63 ns 235.05 ns 0.81 0.21 False
456.22 ns 414.18 ns 0.91 0.15 False
355.86 ns 283.07 ns 0.80 0.20 False
509.54 ns 405.40 ns 0.80 0.18 False
411.62 ns 344.28 ns 0.84 0.26 False
582.58 ns 516.19 ns 0.89 0.05 False
389.59 ns 362.14 ns 0.93 0.07 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Reflection.Invoke*'
### System.Reflection.Invoke.Method0_NoParms #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Field_Get_class #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Field_Get_struct #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Field_GetStatic_class #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Field_SetStatic_struct #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Field_Get_int #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Property_Get_int #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Ctor4_int_string_struct_class #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Field_SetStatic_class #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Property_Get_class #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.StaticMethod4_int_string_struct_class #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Property_Set_class #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.StaticMethod4_arrayNotCached_int_string_struct_class #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Property_Set_int #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Ctor0_ActivatorCreateInstance_NoParams #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Field_Set_int #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Invoke.Field_SetStatic_int #### ETL Files #### Histogram #### 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 2ecc177a5fcfa5a1f7c9ab60125ade171fb4d750
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.26 μs 2.80 μs 0.86 0.14 False
3.34 μs 2.95 μs 0.88 0.14 False
3.98 μs 3.42 μs 0.86 0.12 False
2.97 μs 2.46 μs 0.83 0.12 False
3.08 μs 2.58 μs 0.84 0.13 False
4.15 μs 3.51 μs 0.85 0.11 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;ClassRecord&gt;*'
### System.Text.Json.Serialization.Tests.ReadJson<ClassRecord>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ClassRecord>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ClassRecord>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ClassRecord>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ClassRecord>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<ClassRecord>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### 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 2ecc177a5fcfa5a1f7c9ab60125ade171fb4d750
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
22.88 μs 17.69 μs 0.77 0.45 False
347.34 μs 297.87 μs 0.86 0.23 False
16.63 μs 11.49 μs 0.69 0.44 False
31.29 μs 22.89 μs 0.73 0.29 False
140.27 μs 101.58 μs 0.72 0.29 False
23.47 μs 20.93 μs 0.89 0.32 False
128.94 μs 111.44 μs 0.86 0.21 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsKeyTrue&lt;Int32, Int32&gt;*'
### System.Collections.ContainsKeyTrue<Int32, Int32>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyTrue<Int32, Int32>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyTrue<Int32, Int32>.FrozenDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyTrue<Int32, Int32>.IDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyTrue<Int32, Int32>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyTrue<Int32, Int32>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyTrue<Int32, Int32>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
240.40 ns 191.95 ns 0.80 0.30 False
1.58 μs 1.30 μs 0.83 0.35 False
16.49 μs 12.73 μs 0.77 0.42 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Tests.Perf_PriorityQueue&lt;Guid, Guid&gt;*'
### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.Enumerate(Size: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.Enumerate(Size: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<Guid, Guid>.Enumerate(Size: 1000) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 3de068c2be232960f4cb3b233dd2b4014e2ce7c3
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Json_ToStream<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.51 ms 2.20 ms 0.88 0.07 False
1.74 ms 1.52 ms 0.87 0.08 False
1.54 ms 1.33 ms 0.86 0.06 False
3.24 ms 2.89 ms 0.89 0.13 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToStream&lt;MyEventsListerViewModel&gt;*'
### MicroBenchmarks.Serializers.Json_ToStream<MyEventsListerViewModel>.JsonNet_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<MyEventsListerViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<MyEventsListerViewModel>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_ToStream<MyEventsListerViewModel>.DataContractJsonSerializer_ #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Xml_ToStream<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.41 ms 2.95 ms 0.86 0.11 False
1.38 ms 1.24 ms 0.90 0.14 False
2.64 ms 2.21 ms 0.84 0.10 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Xml_ToStream&lt;MyEventsListerViewModel&gt;*'
### MicroBenchmarks.Serializers.Xml_ToStream<MyEventsListerViewModel>.DataContractSerializer_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<MyEventsListerViewModel>.XmlSerializer_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Xml_ToStream<MyEventsListerViewModel>.DataContractSerializer_BinaryXml_ #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Int16

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
60.72 ns 48.90 ns 0.81 0.49 False
81.58 ns 61.85 ns 0.76 0.51 False
86.64 ns 59.59 ns 0.69 0.44 False
61.14 ns 48.94 ns 0.80 0.42 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Int16*'
### System.Tests.Perf_Int16.TryParse(value: "32767") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int16.Parse(value: "32767") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int16.Parse(value: "-32768") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Int16.TryParse(value: "-32768") #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.ContainsKeyFalse<String, String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
36.15 μs 27.56 μs 0.76 0.30 False
36.94 μs 27.61 μs 0.75 0.30 False
32.46 μs 25.25 μs 0.78 0.41 False
744.69 μs 665.81 μs 0.89 0.20 False
45.85 μs 30.10 μs 0.66 0.29 False
136.00 μs 109.54 μs 0.81 0.20 False
882.34 μs 679.13 μs 0.77 0.15 False

graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.ContainsKeyFalse&lt;String, String&gt;*'
### System.Collections.ContainsKeyFalse<String, String>.Dictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<String, String>.FrozenDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<String, String>.ConcurrentDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<String, String>.SortedList(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<String, String>.IDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<String, String>.ImmutableDictionary(Size: 512) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.ContainsKeyFalse<String, String>.ImmutableSortedDictionary(Size: 512) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in Microsoft.Extensions.Configuration.Xml.XmlConfigurationProviderBenchmarks

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
337.62 μs 291.12 μs 0.86 0.05 False
153.72 μs 136.20 μs 0.89 0.07 False
442.69 μs 384.11 μs 0.87 0.07 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Configuration.Xml.XmlConfigurationProviderBenchmarks*'
### Microsoft.Extensions.Configuration.Xml.XmlConfigurationProviderBenchmarks.Load(FileName: "repeated.xml") #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Configuration.Xml.XmlConfigurationProviderBenchmarks.Load(FileName: "simple.xml") #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Configuration.Xml.XmlConfigurationProviderBenchmarks.Load(FileName: "names.xml") #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Char

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
83.91 ns 72.35 ns 0.86 0.34 False
82.91 ns 74.97 ns 0.90 0.34 False
40.51 ns 30.92 ns 0.76 0.40 False
41.60 ns 30.79 ns 0.74 0.45 False
54.92 ns 30.92 ns 0.56 0.47 False
85.25 ns 76.90 ns 0.90 0.37 False
84.79 ns 69.74 ns 0.82 0.31 False
45.27 ns 32.63 ns 0.72 0.44 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Char*'
### System.Tests.Perf_Char.Char_ToUpperInvariant(input: "Hello World!") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Char.Char_ToLower(c: '你', cultureName: zh-Hans) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Char.Char_ToUpper(c: 'A', cultureName: en-US) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Char.Char_ToUpper(c: 'a', cultureName: en-US) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Char.Char_ToLower(c: 'A', cultureName: en-US) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Char.Char_ToLower(c: 'İ', cultureName: en-US) #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Char.Char_ToLowerInvariant(input: "Hello World!") #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Char.Char_ToLower(c: 'a', cultureName: en-US) #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, 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
2.32 μs 2.05 μs 0.88 0.26 False
250.79 ns 218.65 ns 0.87 0.24 False
232.15 ns 216.00 ns 0.93 0.27 False
198.58 ns 173.76 ns 0.87 0.23 False
206.72 ns 170.88 ns 0.83 0.29 False
2.63 μs 2.11 μs 0.80 0.25 False
24.38 μs 21.66 μs 0.89 0.12 False
23.94 μs 21.70 μs 0.91 0.15 False
265.22 ns 226.24 ns 0.85 0.20 False

graph graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Utf8JsonReaderCommentsTests*'
### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Skip, SegmentSize: 100, TestCase: LongSingleLine) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Skip, SegmentSize: 100, TestCase: ShortMultiLine) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Allow, SegmentSize: 100, TestCase: ShortSingleLine) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Allow, SegmentSize: 0, TestCase: ShortSingleLine) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Skip, SegmentSize: 0, TestCase: ShortSingleLine) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Allow, SegmentSize: 100, TestCase: LongSingleLine) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Allow, SegmentSize: 100, TestCase: LongMultiLine) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Skip, SegmentSize: 100, TestCase: LongMultiLine) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Tests.Utf8JsonReaderCommentsTests.Utf8JsonReaderCommentParsing(CommentHandling: Allow, SegmentSize: 100, TestCase: ShortMultiLine) #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare a71a85a65f6527ca2754ccf336f1fc77f02c409b
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in Microsoft.Extensions.Logging.EventSourceLogger

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
969.11 ns 852.01 ns 0.88 0.16 False
994.16 ns 846.04 ns 0.85 0.19 False
1.00 μs 843.30 ns 0.84 0.18 False
969.73 ns 864.30 ns 0.89 0.19 False

graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Logging.EventSourceLogger*'
### Microsoft.Extensions.Logging.EventSourceLogger.NestedScopes_TwoMessages(HasSubscribers: True, Json: True) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.EventSourceLogger.NestedScopes_TwoMessages(HasSubscribers: False, Json: True) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.EventSourceLogger.NestedScopes_TwoMessages(HasSubscribers: True, Json: False) #### ETL Files #### Histogram #### JIT Disasms ### Microsoft.Extensions.Logging.EventSourceLogger.NestedScopes_TwoMessages(HasSubscribers: False, Json: False) #### ETL Files #### Histogram #### 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 3de068c2be232960f4cb3b233dd2b4014e2ce7c3
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.15 μs 1.86 μs 0.86 0.17 False
3.07 μs 2.54 μs 0.83 0.15 False
2.31 μs 2.03 μs 0.88 0.14 False
3.43 μs 3.07 μs 0.89 0.11 False
2.66 μs 2.38 μs 0.89 0.14 False
2.57 μs 2.18 μs 0.85 0.19 False

graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;LoginViewModel&gt;*'
### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromReader(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromReader(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.ReadJson<LoginViewModel>.DeserializeFromUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### 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 bdfbed6de953957fd4dbba9c8cba0a3c47dde1f8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Json_FromString<MyEventsListerViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
1.22 ms 1.11 ms 0.91 0.07 False
2.65 ms 2.40 ms 0.90 0.14 False
1.50 ms 1.30 ms 0.86 0.09 False

graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_FromString&lt;MyEventsListerViewModel&gt;*'
### MicroBenchmarks.Serializers.Json_FromString<MyEventsListerViewModel>.SystemTextJson_SourceGen_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromString<MyEventsListerViewModel>.JsonNet_ #### ETL Files #### Histogram #### JIT Disasms ### MicroBenchmarks.Serializers.Json_FromString<MyEventsListerViewModel>.SystemTextJson_Reflection_ #### ETL Files #### Histogram #### 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 34e65b9e6c3100bbbebcd78fd03f3b2e88cdc9f0
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.CtorDefaultSize<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
120.37 ns 106.76 ns 0.89 0.32 False
30.91 ns 26.60 ns 0.86 0.54 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.CtorDefaultSize&lt;Int32&gt;*'
### System.Collections.CtorDefaultSize<Int32>.ConcurrentDictionary #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.CtorDefaultSize<Int32>.Dictionary #### ETL Files #### Histogram #### 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 month ago

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 2ecc177a5fcfa5a1f7c9ab60125ade171fb4d750
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Collections.Tests.Perf_PriorityQueue<String, String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
175.32 μs 148.72 μs 0.85 0.17 False
192.43 μs 159.10 μs 0.83 0.23 False
292.26 ns 239.29 ns 0.82 0.35 False
405.69 μs 361.52 μs 0.89 0.23 False
2.84 ms 2.54 ms 0.90 0.17 False
3.49 μs 2.88 μs 0.82 0.20 False
7.43 μs 6.77 μs 0.91 0.19 False
20.96 μs 17.92 μs 0.86 0.25 False
3.70 μs 1.85 μs 0.50 0.34 False
18.54 μs 16.08 μs 0.87 0.14 False

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

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.Tests.Perf_PriorityQueue&lt;String, String&gt;*'
### System.Collections.Tests.Perf_PriorityQueue<String, String>.HeapSort(Size: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<String, String>.K_Max_Elements(Size: 1000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<String, String>.Enumerate(Size: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<String, String>.Dequeue_And_Enqueue(Size: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<String, String>.HeapSort(Size: 1000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<String, String>.K_Max_Elements(Size: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<String, String>.HeapSort(Size: 10) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<String, String>.Enumerate(Size: 1000) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<String, String>.Enumerate(Size: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Collections.Tests.Perf_PriorityQueue<String, String>.Dequeue_And_Enqueue(Size: 10) #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Tests.Perf_Decimal

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
31.81 ns 26.86 ns 0.84 0.47 False
19.42 ns 16.80 ns 0.87 0.61 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.Tests.Perf_Decimal*'
### System.Tests.Perf_Decimal.Mod #### ETL Files #### Histogram #### JIT Disasms ### System.Tests.Perf_Decimal.Add #### ETL Files #### Histogram #### 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 1d622621b6bc254fbd777921c70a3f5d57fbd6b8
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.33 μs 2.74 μs 0.82 0.10 False
1.11 μs 972.89 ns 0.88 0.21 False
1.42 μs 1.22 μs 0.86 0.21 False
7.30 μs 5.99 μs 0.82 0.17 False
1.63 μs 1.41 μs 0.86 0.12 False
7.14 μs 6.51 μs 0.91 0.13 False
8.91 μs 7.93 μs 0.89 0.14 False
6.76 μs 5.70 μs 0.84 0.11 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson&lt;LargeStructWithProperties&gt;*'
### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeObjectProperty(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToWriter(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToUtf8Bytes(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToUtf8Bytes(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToString(Mode: SourceGen) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToString(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeObjectProperty(Mode: Reflection) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToWriter(Mode: Reflection) #### ETL Files #### Histogram #### 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 3de068c2be232960f4cb3b233dd2b4014e2ce7c3
Compare 778cc8436260736c1ca5393abb27414ea42ad8a7
Diff Diff
Configs AOT:true, CompilationMode:wasm, RunKind:micro

Improvements in System.Text.Tests.Perf_StringBuilder

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
746.64 μs 614.62 μs 0.82 0.32 False
8.16 μs 6.84 μs 0.84 0.14 False
82.52 ns 66.50 ns 0.81 0.40 False
763.23 μs 624.27 μs 0.82 0.27 False
5.74 μs 4.93 μs 0.86 0.09 False
684.22 ns 621.44 ns 0.91 0.18 False
809.27 ns 644.38 ns 0.80 0.22 False
120.36 ns 101.19 ns 0.84 0.32 False

graph graph graph graph graph graph graph graph Test Report

Repro

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Tests.Perf_StringBuilder*'
### System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity(length: 100000) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_StringBuilder.Append_ValueTypes_Interpolated #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_StringBuilder.ctor_capacity(length: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_StringBuilder.Append_Char(length: 100000) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_StringBuilder.Append_ValueTypes #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_StringBuilder.AppendLine_Strings #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity(length: 100) #### ETL Files #### Histogram #### JIT Disasms ### System.Text.Tests.Perf_StringBuilder.ctor_string(length: 100) #### ETL Files #### Histogram #### 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)