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] Windows/x86: 12 Improvements on 11/18/2024 8:23:46 PM #45452

Open performanceautofiler[bot] opened 3 days ago

performanceautofiler[bot] commented 3 days ago

Run Information

Name Value
Architecture x86
OS Windows 10.0.22621
Queue TigerWindows
Baseline 234e2f7ec5dd315014f31574719900c0715f9477
Compare e33be4d53ab951272c9161c50b549e5e7db60262
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.ComponentModel.Tests.Perf_TypeDescriptorTests

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
170.11 ns 151.52 ns 0.89 0.02 True
125.44 ns 114.51 ns 0.91 0.02 False
124.26 ns 116.90 ns 0.94 0.01 False
173.28 ns 155.17 ns 0.90 0.01 True
171.68 ns 152.69 ns 0.89 0.01 True
181.66 ns 155.96 ns 0.86 0.02 False
174.44 ns 153.33 ns 0.88 0.01 True
170.25 ns 151.05 ns 0.89 0.01 True
125.42 ns 113.77 ns 0.91 0.01 True
196.09 ns 171.61 ns 0.88 0.01 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
py .\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.DerivedClass)) #### 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.Guid)) #### 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(int?)) #### 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(int)) #### 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.SomeEnum)) #### 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 x86
OS Windows 10.0.22621
Queue TigerWindows
Baseline 234e2f7ec5dd315014f31574719900c0715f9477
Compare e33be4d53ab951272c9161c50b549e5e7db60262
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Reflection.Attributes

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
143.75 ns 133.80 ns 0.93 0.07 False
115.93 ns 104.34 ns 0.90 0.06 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Reflection.Attributes*'
### System.Reflection.Attributes.GetCustomAttributesMethodBaseMissInherit #### ETL Files #### Histogram #### JIT Disasms ### System.Reflection.Attributes.IsDefinedMethodBaseMissInherit #### 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)