dotnet / dotnet/perf-autofiling-issues

[Perf] Linux/arm64: 13 Improvements on 6/16/2026 10:02:06 PM +00:00

Open
#74,990 2 comments 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 triage-error 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 | [07b0630df574261c916a708a2f72297fb30c77be](https://github.com/dotnet/runtime/commit/07b0630df574261c916a708a2f72297fb30c77be)
Compare | [ac88c726cae695b842efcaf81a7964fbbdff7a84](https://github.com/dotnet/runtime/commit/ac88c726cae695b842efcaf81a7964fbbdff7a84)
Diff | [Diff](https://github.com/dotnet/runtime/compare/07b0630df574261c916a708a2f72297fb30c77be...ac88c726cae695b842efcaf81a7964fbbdff7a84)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in System.Net.Security.Tests.SslStreamTests

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

  • [DefaultMutualHandshakeContextIPv4Async - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.86 ms | 3.77 ms | 0.77 | 0.33 | False | | |
|
  • [DefaultMutualHandshakeContextIPv6Async - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.73 ms | 3.68 ms | 0.78 | 0.30 | False | | |
|
  • [DefaultHandshakePipeAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.61 ms | 3.63 ms | 0.79 | 0.16 | False | | |
|
  • [DefaultHandshakeIPv6Async - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.77 ms | 3.78 ms | 0.79 | 0.35 | False | | |
|
  • [DefaultHandshakeIPv4Async - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.65 ms | 3.73 ms | 0.80 | 0.32 | False | | |
|
  • [HandshakeECDSA256CertAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.67 ms | 4.69 ms | 0.83 | 0.02 | False | | |
|
  • [DefaultMutualHandshakeIPv6Async - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 7.77 ms | 6.76 ms | 0.87 | 0.03 | False | | |
|
  • [DefaultHandshakeContextIPv6Async - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 3.40 ms | 2.96 ms | 0.87 | 0.37 | False | | |
|
  • [DefaultMutualHandshakeIPv4Async - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 7.82 ms | 6.83 ms | 0.87 | 0.01 | False | | |
|
  • [DefaultHandshakeContextIPv4Async - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 3.31 ms | 2.90 ms | 0.88 | 0.39 | False | | |
|
  • [HandshakeECDSA256CertAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 6.08 ms | 5.33 ms | 0.88 | 0.00 | False | | |

![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.Net.Security.Tests.SslStreamTests*'
```

### System.Net.Security.Tests.SslStreamTests.DefaultMutualHandshakeContextIPv4Async

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.DefaultMutualHandshakeContextIPv6Async

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.DefaultHandshakePipeAsync

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.DefaultHandshakeIPv6Async

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.DefaultHandshakeIPv4Async

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.HandshakeECDSA256CertAsync(protocol: Tls12)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.DefaultMutualHandshakeIPv6Async

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.DefaultHandshakeContextIPv6Async

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.DefaultMutualHandshakeIPv4Async

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.DefaultHandshakeContextIPv4Async

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.HandshakeECDSA256CertAsync(protocol: Tls13)

#### 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 | [07b0630df574261c916a708a2f72297fb30c77be](https://github.com/dotnet/runtime/commit/07b0630df574261c916a708a2f72297fb30c77be)
Compare | [ac88c726cae695b842efcaf81a7964fbbdff7a84](https://github.com/dotnet/runtime/commit/ac88c726cae695b842efcaf81a7964fbbdff7a84)
Diff | [Diff](https://github.com/dotnet/runtime/compare/07b0630df574261c916a708a2f72297fb30c77be...ac88c726cae695b842efcaf81a7964fbbdff7a84)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in System.Security.Cryptography.X509Certificates.Tests.X509ChainTests

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

  • [BuildX509ChainContoso - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 538.58 μs | 364.99 μs | 0.68 | 0.00 | False | | |
|
  • [BuildX509ChainSelfSigned - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 805.45 μs | 638.59 μs | 0.79 | 0.00 | False | | |

![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.Security.Cryptography.X509Certificates.Tests.X509ChainTests*'
```

### System.Security.Cryptography.X509Certificates.Tests.X509ChainTests.BuildX509ChainContoso

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Security.Cryptography.X509Certificates.Tests.X509ChainTests.BuildX509ChainSelfSigned

#### 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 linked benchmark sources in performance/src/benchmarks/micro/libraries/System.Net.Security/SslStreamTests.cs and SslStreamTests.Context.cs, then compare the baseline and test results in the ARM64 Ubuntu reports. The issue does not define a change or expected outcome; done would require a concrete diagnosis and a separately scoped fix or follow-up.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, linux
Domain
performance
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.