dotnet / dotnet/perf-autofiling-issues

[Perf] Linux/arm64: 3 Improvements on 7/2/2026 12:34:14 AM +00:00

Open
#75,926 1 comment 0 reactions 0 assignees View on GitHub
ampere arch-arm64 branch-refs/heads/main compilationmode-tiered kind-micro Look Again 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 | ubuntu 22.04
Queue | AmpereUbuntu
Baseline | [334e58b27c47867efd8e25639133f4386f4ee8d2](https://github.com/dotnet/runtime/commit/334e58b27c47867efd8e25639133f4386f4ee8d2)
Compare | [280bf4d75fa341d90f7218915ab5402046f74f43](https://github.com/dotnet/runtime/commit/280bf4d75fa341d90f7218915ab5402046f74f43)
Diff | [Diff](https://github.com/dotnet/runtime/compare/334e58b27c47867efd8e25639133f4386f4ee8d2...280bf4d75fa341d90f7218915ab5402046f74f43)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in System.Globalization.Tests.StringSearch

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

  • [IsPrefix_FirstHalf - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 42.68 ns | 34.41 ns | 0.81 | 0.01 | False | | |
|
  • [IsSuffix_DifferentLastChar - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 78.69 ns | 64.21 ns | 0.82 | 0.00 | False | | |
|
  • [IsSuffix_SecondHalf - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 42.32 ns | 35.21 ns | 0.83 | 0.01 | False | | |

![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.Globalization.Tests.StringSearch*'
```

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

#### ETL Files

#### Histogram

#### JIT Disasms

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

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, OrdinalIgnoreCase, 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)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the System.Globalization.Tests.StringSearch benchmarks in dotnet/performance/src/benchmarks/micro/libraries/System.Globalization/StringSearch.cs at the linked lines, then review the baseline and comparison commits. Run benchmarks_ci.py with the provided filter and inspect the linked test report; done requires determining the appropriate follow-up for the reported ARM64 performance change.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.