dotnet / dotnet/perf-autofiling-issues

[Perf] Linux/arm64: 5 Improvements on 7/11/2026 2:08:14 PM +00:00

Open
#76,360 1 comment 0 reactions 0 assignees View on GitHub
arch-arm64 branch-refs/heads/main compilationmode-tiered kind-micro Look Again os-linux perf-improvement r2rtype-r2r_interpreter 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 | [26b900856a2f12c4c7126827cb3019accba8f17c](https://github.com/dotnet/runtime/commit/26b900856a2f12c4c7126827cb3019accba8f17c)
Compare | [b185cb0db7b255bb99551253e215916b592bf1da](https://github.com/dotnet/runtime/commit/b185cb0db7b255bb99551253e215916b592bf1da)
Diff | [Diff](https://github.com/dotnet/runtime/compare/26b900856a2f12c4c7126827cb3019accba8f17c...b185cb0db7b255bb99551253e215916b592bf1da)
Configs | CompilationMode:tiered, R2RType:r2r_interpreter, RunKind:micro

### Improvements in System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>

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

  • [SerializeToString - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 3.33 μs | 2.84 μs | 0.85 | 0.11 | False | | |
|
  • [SerializeToWriter - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 3.07 μs | 2.63 μs | 0.86 | 0.13 | False | | |
|
  • [SerializeToStream - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 3.77 μs | 3.38 μs | 0.90 | 0.12 | False | | |
|
  • [SerializeObjectProperty - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.03 μs | 3.62 μs | 0.90 | 0.13 | False | | |
|
  • [SerializeToUtf8Bytes - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 3.17 μs | 2.85 μs | 0.90 | 0.12 | False | | |

![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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson*'
```

### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToString(Mode: Reflection)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToWriter(Mode: Reflection)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToStream(Mode: Reflection)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeObjectProperty(Mode: Reflection)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Text.Json.Serialization.Tests.WriteJson<LargeStructWithProperties>.SerializeToUtf8Bytes(Mode: Reflection)

#### 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 in dotnet/performance at src/benchmarks/micro/libraries/System.Text.Json/Serializer/WriteJson.cs lines 75-98, then run the provided benchmarks_ci.py command for the LargeStructWithProperties filter. Compare the arm64 AzureLinux results with the linked baseline and test commits; done means the reported performance changes are explained and any confirmed issue has a reproducible validation.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, linux
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.