dotnet / dotnet/perf-autofiling-issues
[Perf] Linux/arm64: 186 Improvements on 1/23/2026 10:32:11 PM +00:00
- Dominant language
- No language data
- Stars
- 10
- Forks
- 8
- PR merge metrics
- PR metrics pending
Description
### Run Information
Name | Value
-- | --
Architecture | arm64
OS | ubuntu 22.04
Queue | AmpereUbuntu
Baseline | [b1d2e4aa8af89cfa795015e30ef70d24ec92f67f](https://github.com/dotnet/runtime/commit/b1d2e4aa8af89cfa795015e30ef70d24ec92f67f)
Compare | [9baed28a0526f4c164ba1043edeeb8718df7aabb](https://github.com/dotnet/runtime/commit/9baed28a0526f4c164ba1043edeeb8718df7aabb)
Diff | [Diff](https://github.com/dotnet/runtime/compare/b1d2e4aa8af89cfa795015e30ef70d24ec92f67f...9baed28a0526f4c164ba1043edeeb8718df7aabb)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in System.Collections.Concurrent.IsEmpty<Int32>
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [Dictionary - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Queue - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Bag - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Bag - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config 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.Collections.Concurrent.IsEmpty*'
```
### 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
### 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
### 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 | arm64
OS | ubuntu 22.04
Queue | AmpereUbuntu
Baseline | [b1d2e4aa8af89cfa795015e30ef70d24ec92f67f](https://github.com/dotnet/runtime/commit/b1d2e4aa8af89cfa795015e30ef70d24ec92f67f)
Compare | [9baed28a0526f4c164ba1043edeeb8718df7aabb](https://github.com/dotnet/runtime/commit/9baed28a0526f4c164ba1043edeeb8718df7aabb)
Diff | [Diff](https://github.com/dotnet/runtime/compare/b1d2e4aa8af89cfa795015e30ef70d24ec92f67f...9baed28a0526f4c164ba1043edeeb8718df7aabb)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in Microsoft.Extensions.Logging.EventSourceLogger
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [NestedScopes_TwoMessages - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [NestedScopes_TwoMessages - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config 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 '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: True, 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 | arm64
OS | ubuntu 22.04
Queue | AmpereUbuntu
Baseline | [b1d2e4aa8af89cfa795015e30ef70d24ec92f67f](https://github.com/dotnet/runtime/commit/b1d2e4aa8af89cfa795015e30ef70d24ec92f67f)
Compare | [9baed28a0526f4c164ba1043edeeb8718df7aabb](https://github.com/dotnet/runtime/commit/9baed28a0526f4c164ba1043edeeb8718df7aabb)
Diff | [Diff](https://github.com/dotnet/runtime/compare/b1d2e4aa8af89cfa795015e30ef70d24ec92f67f...9baed28a0526f4c164ba1043edeeb8718df7aabb)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in System.Memory.Span<Int32>
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [SequenceEqual - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Fill - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Reverse - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [LastIndexOfValue - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [EndsWith - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [IndexOfAnyThreeValues - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Reverse - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [BinarySearch - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Clear - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SequenceEqual - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [LastIndexOfAnyValues - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Clear - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config 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.Memory.Span*'
```
### System.Memory.Span<Int32>.SequenceEqual(Size: 33)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.Fill(Size: 4)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.Reverse(Size: 33)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.LastIndexOfValue(Size: 33)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.EndsWith(Size: 33)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.IndexOfAnyThreeValues(Size: 33)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.Reverse(Size: 4)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.BinarySearch(Size: 33)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.Clear(Size: 33)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.SequenceEqual(Size: 4)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.LastIndexOfAnyValues(Size: 33)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Memory.Span<Int32>.Clear(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 | arm64
OS | ubuntu 22.04
Queue | AmpereUbuntu
Baseline | [b1d2e4aa8af89cfa795015e30ef70d24ec92f67f](https://github.com/dotnet/runtime/commit/b1d2e4aa8af89cfa795015e30ef70d24ec92f67f)
Compare | [9baed28a0526f4c164ba1043edeeb8718df7aabb](https://github.com/dotnet/runtime/commit/9baed28a0526f4c164ba1043edeeb8718df7aabb)
Diff | [Diff](https://github.com/dotnet/runtime/compare/b1d2e4aa8af89cfa795015e30ef70d24ec92f67f...9baed28a0526f4c164ba1043edeeb8718df7aabb)
Configs | CompilationMode:tiered, 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
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [Add_Scalar - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Max_Vector - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Max_Scalar - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Add_Vector - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [AddMultiply_ScalarAddend - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [BitwiseAnd_Scalar - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Abs - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [BitwiseAnd_Vector - Duration of single invocation]()
- π - [Benchmark Source]()
- [ADX - Test Multi Config 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.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives*'
```
### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Add_Scalar(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>.Max_Scalar(BufferLength: 128)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Add_Vector(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>.BitwiseAnd_Scalar(BufferLength: 128)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.Abs(BufferLength: 128)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Numerics.Tensors.Tests.Perf_NumberTensorPrimitives<Single>.BitwiseAnd_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)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the benchmark sources named in the report: src/benchmarks/micro/libraries/System.Collections/Concurrent/IsEmpty.cs and src/benchmarks/micro/libraries/Microsoft.Extensions.Logging/EventSourceBenchmark.cs. Read docs/benchmarking-workflow-dotnet-runtime.md, then run the supplied scripts/benchmarks_ci.py command to verify the arm64 results. The issue does not define a code change or completion criteria beyond investigating the reported improvements.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, python
- Domain
- performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100