dotnet / dotnet/perf-autofiling-issues
[Perf] Windows/x64: 12 Improvements on 6/24/2026 7:31:32 AM +00:00
- Dominant language
- No language data
- Stars
- 10
- Forks
- 8
- PR merge metrics
- PR metrics pending
Description
### Run Information
Name | Value
-- | --
Architecture | x64
OS | Windows 10.0.22631
Queue | ViperWindows
Baseline | [0d1a20fb14109f277df06ebee3f83c964f9dcc61](https://github.com/dotnet/runtime/commit/0d1a20fb14109f277df06ebee3f83c964f9dcc61)
Compare | [e3cbc00cd3e0b511ad36dc240010eb2b9eefc3b7](https://github.com/dotnet/runtime/commit/e3cbc00cd3e0b511ad36dc240010eb2b9eefc3b7)
Diff | [Diff](https://github.com/dotnet/runtime/compare/0d1a20fb14109f277df06ebee3f83c964f9dcc61...e3cbc00cd3e0b511ad36dc240010eb2b9eefc3b7)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in System.Text.Json.Serialization.Tests.WriteJson<ArrayList>
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [SerializeToStream - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToWriter - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToWriter - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToUtf8Bytes - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToStream - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToString - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToUtf8Bytes - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeObjectProperty - 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.WriteJson*'
```
### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToStream(Mode: SourceGen)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToWriter(Mode: SourceGen)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToWriter(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToUtf8Bytes(Mode: SourceGen)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToStream(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToString(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeToUtf8Bytes(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ArrayList>.SerializeObjectProperty(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)
---
### Run Information
Name | Value
-- | --
Architecture | x64
OS | Windows 10.0.22631
Queue | ViperWindows
Baseline | [0d1a20fb14109f277df06ebee3f83c964f9dcc61](https://github.com/dotnet/runtime/commit/0d1a20fb14109f277df06ebee3f83c964f9dcc61)
Compare | [e3cbc00cd3e0b511ad36dc240010eb2b9eefc3b7](https://github.com/dotnet/runtime/commit/e3cbc00cd3e0b511ad36dc240010eb2b9eefc3b7)
Diff | [Diff](https://github.com/dotnet/runtime/compare/0d1a20fb14109f277df06ebee3f83c964f9dcc61...e3cbc00cd3e0b511ad36dc240010eb2b9eefc3b7)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in System.Text.Json.Tests.Perf_Reader
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [ReadSingleSpanSequenceEmptyLoop - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadSpanEmptyLoop - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadReturnBytes - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadMultiSpanSequenceEmptyLoop - 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_Reader*'
```
### System.Text.Json.Tests.Perf_Reader.ReadSingleSpanSequenceEmptyLoop(IsDataCompact: False, TestCase: DeepTree)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Tests.Perf_Reader.ReadSpanEmptyLoop(IsDataCompact: False, TestCase: DeepTree)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Tests.Perf_Reader.ReadReturnBytes(IsDataCompact: False, TestCase: DeepTree)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Tests.Perf_Reader.ReadMultiSpanSequenceEmptyLoop(IsDataCompact: True, TestCase: LotsOfNumbers)
#### 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.Text.Json.Serialization.Tests.WriteJson benchmark source at src/benchmarks/micro/libraries/System.Text.Json/Serializer/WriteJson.cs, lines 78-98. Compare the baseline and test commits and review the linked benchmark reports; done is identifying whether the reported Windows/x64 measurements require triage or a code change.
Written by the indexing model from the issue text.
Assessment
- Domain
- performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100