dotnet / dotnet/perf-autofiling-issues

[Perf] Linux/x64: 15 Improvements on 5/5/2026 12:34:03 PM +00:00

Open
#72,666 1 comment 0 reactions 0 assignees View on GitHub
arch-wasm arch-x64 branch-refs/heads/main compilationmode-wasm kind-micro os-linux perf-improvement runkind-micro runtimetype-coreclr untriaged
Dominant language
No language data
Stars
10
Forks
8
PR merge metrics
PR metrics pending

Description

### Run Information

Name | Value
-- | --
Architecture | x64
OS | ubuntu 22.04
Queue | ViperUbuntu
Baseline | [5761661dc931d1f14531b8c91bf88344d2a1dc09](https://github.com/dotnet/runtime/commit/5761661dc931d1f14531b8c91bf88344d2a1dc09)
Compare | [cb67209148787d94ee4b4c550a09a037dedd40f3](https://github.com/dotnet/runtime/commit/cb67209148787d94ee4b4c550a09a037dedd40f3)
Diff | [Diff](https://github.com/dotnet/runtime/compare/5761661dc931d1f14531b8c91bf88344d2a1dc09...cb67209148787d94ee4b4c550a09a037dedd40f3)
Configs | CompilationMode:wasm, RunKind:micro, RuntimeType:coreclr

### Improvements in System.Reflection.Attributes

Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|

  • [IsDefinedMethodOverrideMissInherit - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 11.37 μs | 9.36 μs | 0.82 | 0.25 | False | | |
|
  • [GetCustomAttributesMethodOverrideHitInherit - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 39.88 μs | 32.89 μs | 0.82 | 0.25 | False | | |
|
  • [IsDefinedMethodBaseMissInherit - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.99 μs | 4.26 μs | 0.85 | 0.24 | False | | |
|
  • [GetCustomAttributesMethodBaseMissInherit - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 7.55 μs | 6.50 μs | 0.86 | 0.17 | False | | |
|
  • [IsDefinedMethodBaseMiss - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 3.58 μs | 3.17 μs | 0.89 | 0.16 | False | | |
|
  • [GetCustomAttributesClassMiss - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.74 μs | 5.12 μs | 0.89 | 0.18 | False | | |
|
  • [IsDefinedMethodBaseHitInherit - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 10.54 μs | 9.50 μs | 0.90 | 0.18 | False | | |
|
  • [IsDefinedMethodOverrideMiss - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 10.41 μs | 9.42 μs | 0.90 | 0.25 | False | | |
|
  • [IsDefinedClassHitInherit - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 10.72 μs | 9.76 μs | 0.91 | 0.17 | False | | |
|
  • [IsDefinedMethodBaseHit - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 10.48 μs | 9.63 μs | 0.92 | 0.24 | False | | |
|
  • [GetCustomAttributesClassMissInherit - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 9.29 μs | 8.56 μs | 0.92 | 0.16 | False | | |
|
  • [IsDefinedClassHit - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 10.68 μs | 9.86 μs | 0.92 | 0.21 | False | | |
|
  • [GetCustomAttributesMethodBaseMiss - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.82 μs | 5.47 μs | 0.94 | 0.14 | False | | |
|
  • [GetCustomAttributesMethodBaseHitInherit - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 20.01 μs | 18.97 μs | 0.95 | 0.30 | 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

```cmd
git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Reflection.Attributes*'
```

### System.Reflection.Attributes.IsDefinedMethodOverrideMissInherit

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.GetCustomAttributesMethodOverrideHitInherit

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.IsDefinedMethodBaseMissInherit

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.GetCustomAttributesMethodBaseMissInherit

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.IsDefinedMethodBaseMiss

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.GetCustomAttributesClassMiss

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.IsDefinedMethodBaseHitInherit

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.IsDefinedMethodOverrideMiss

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.IsDefinedClassHitInherit

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.IsDefinedMethodBaseHit

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.GetCustomAttributesClassMissInherit

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.IsDefinedClassHit

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.GetCustomAttributesMethodBaseMiss

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Reflection.Attributes.GetCustomAttributesMethodBaseHitInherit

#### 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 | ViperUbuntu
Baseline | [5761661dc931d1f14531b8c91bf88344d2a1dc09](https://github.com/dotnet/runtime/commit/5761661dc931d1f14531b8c91bf88344d2a1dc09)
Compare | [cb67209148787d94ee4b4c550a09a037dedd40f3](https://github.com/dotnet/runtime/commit/cb67209148787d94ee4b4c550a09a037dedd40f3)
Diff | [Diff](https://github.com/dotnet/runtime/compare/5761661dc931d1f14531b8c91bf88344d2a1dc09...cb67209148787d94ee4b4c550a09a037dedd40f3)
Configs | CompilationMode:wasm, RunKind:micro, RuntimeType:coreclr

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

Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|

  • [AddThenRemove_RelativeExpiration - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 789.80 μs | 706.42 μs | 0.89 | 0.33 | False | | |

![graph]()
[Test Report]()

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

```cmd
git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests*'
```

### Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests.AddThenRemove_RelativeExpiration

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

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.