dotnet / dotnet/perf-autofiling-issues

[Perf] Linux/arm64: 4 Improvements on 7/2/2026 8:33:06 PM +00:00

Open
#75,947 1 comment 0 reactions 0 assignees View on GitHub
arch-arm64 branch-refs/heads/main compilationmode-tiered kind-micro Noise os-linux perf-improvement runkind-micro runtime-coreclr untriaged
Dominant language
No language data
Stars
10
Forks
8
PR merge metrics
PR metrics pending

Description

### Run Information

Name | Value
-- | --
Architecture | arm64
OS | azurelinux 3.0
Queue | CobaltAzureLinux
Baseline | [217c785e48d2156c6feec72b3d1b31d4c93f3dd1](https://github.com/dotnet/runtime/commit/217c785e48d2156c6feec72b3d1b31d4c93f3dd1)
Compare | [fe5e47348f86013bbe8f3041e56f5208cd632e53](https://github.com/dotnet/runtime/commit/fe5e47348f86013bbe8f3041e56f5208cd632e53)
Diff | [Diff](https://github.com/dotnet/runtime/compare/217c785e48d2156c6feec72b3d1b31d4c93f3dd1...fe5e47348f86013bbe8f3041e56f5208cd632e53)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in System.Linq.Tests.Perf_Enumerable

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

  • [Max - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 294.29 ns | 77.68 ns | 0.26 | 0.29 | False | | |
|
  • [Min - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 287.58 ns | 75.97 ns | 0.26 | 0.18 | False | | |
|
  • [SelectToArray - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 145.53 ns | 133.94 ns | 0.92 | 0.23 | False | | |
|
  • [SelectToList - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 154.23 ns | 142.77 ns | 0.93 | 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

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

### System.Linq.Tests.Perf_Enumerable.Max(input: IEnumerable)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Linq.Tests.Perf_Enumerable.Min(input: IEnumerable)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Linq.Tests.Perf_Enumerable.SelectToArray(input: Range)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Linq.Tests.Perf_Enumerable.SelectToList(input: Range)

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

Research direction

Start with the benchmark source at src/benchmarks/micro/libraries/System.Linq/Perf.Enumerable.cs, especially lines 250-264 and 319-327, then review the linked test reports and the benchmarking workflow documentation. Run the provided benchmarks_ci.py command with the System.Linq.Tests.Perf_Enumerable* filter; done means the reported ARM64 AzureLinux performance changes are understood and any needed follow-up is identified.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.