dotnet / dotnet/perf-autofiling-issues
[Perf] Windows/x64: 31 Improvements on 6/25/2026 3:50:04 PM +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 | [818cfd5edcda78ac3eb201af392fd301ab9ad46b](https://github.com/dotnet/runtime/commit/818cfd5edcda78ac3eb201af392fd301ab9ad46b)
Compare | [4e28c96c3bd32ce2811ef7128641e8926874020e](https://github.com/dotnet/runtime/commit/4e28c96c3bd32ce2811ef7128641e8926874020e)
Diff | [Diff](https://github.com/dotnet/runtime/compare/818cfd5edcda78ac3eb201af392fd301ab9ad46b...4e28c96c3bd32ce2811ef7128641e8926874020e)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in System.Text.Json.Serialization.Tests.WriteJson<Hashtable>
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [SerializeToUtf8Bytes - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeObjectProperty - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToString - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToStream - 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]()
|
- [SerializeToString - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToStream - 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<Hashtable>.SerializeToUtf8Bytes(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeObjectProperty(Mode: SourceGen)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToString(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToStream(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToUtf8Bytes(Mode: SourceGen)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeObjectProperty(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToString(Mode: SourceGen)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Hashtable>.SerializeToStream(Mode: SourceGen)
#### 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 | [818cfd5edcda78ac3eb201af392fd301ab9ad46b](https://github.com/dotnet/runtime/commit/818cfd5edcda78ac3eb201af392fd301ab9ad46b)
Compare | [4e28c96c3bd32ce2811ef7128641e8926874020e](https://github.com/dotnet/runtime/commit/4e28c96c3bd32ce2811ef7128641e8926874020e)
Diff | [Diff](https://github.com/dotnet/runtime/compare/818cfd5edcda78ac3eb201af392fd301ab9ad46b...4e28c96c3bd32ce2811ef7128641e8926874020e)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>
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]()
|
- [SerializeToStream - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToUtf8Bytes - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToWriter - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeObjectProperty - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToString - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeObjectProperty - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToString - 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<ImmutableSortedDictionary<String, String>>.SerializeToStream(Mode: SourceGen)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToStream(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToUtf8Bytes(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToWriter(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeObjectProperty(Mode: SourceGen)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToString(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeObjectProperty(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableSortedDictionary<String, String>>.SerializeToString(Mode: SourceGen)
#### 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 | [818cfd5edcda78ac3eb201af392fd301ab9ad46b](https://github.com/dotnet/runtime/commit/818cfd5edcda78ac3eb201af392fd301ab9ad46b)
Compare | [4e28c96c3bd32ce2811ef7128641e8926874020e](https://github.com/dotnet/runtime/commit/4e28c96c3bd32ce2811ef7128641e8926874020e)
Diff | [Diff](https://github.com/dotnet/runtime/compare/818cfd5edcda78ac3eb201af392fd301ab9ad46b...4e28c96c3bd32ce2811ef7128641e8926874020e)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [SerializeToWriter - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToWriter - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToStream - 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]()
|
- [SerializeToString - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config 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<Dictionary<String, String>>.SerializeToWriter(Mode: SourceGen)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>.SerializeToWriter(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>.SerializeToStream(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>.SerializeToUtf8Bytes(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>.SerializeObjectProperty(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<Dictionary<String, String>>.SerializeToString(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 | [cd27dcec16016aa54be6a09962d1b509150cf99b](https://github.com/dotnet/runtime/commit/cd27dcec16016aa54be6a09962d1b509150cf99b)
Compare | [4e28c96c3bd32ce2811ef7128641e8926874020e](https://github.com/dotnet/runtime/commit/4e28c96c3bd32ce2811ef7128641e8926874020e)
Diff | [Diff](https://github.com/dotnet/runtime/compare/cd27dcec16016aa54be6a09962d1b509150cf99b...4e28c96c3bd32ce2811ef7128641e8926874020e)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [SerializeToUtf8Bytes - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToStream - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeObjectProperty - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [SerializeToString - 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.Serialization.Tests.WriteJson>*'
```
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToUtf8Bytes(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToStream(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeObjectProperty(Mode: Reflection)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Serialization.Tests.WriteJson<ImmutableDictionary<String, String>>.SerializeToString(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 | [818cfd5edcda78ac3eb201af392fd301ab9ad46b](https://github.com/dotnet/runtime/commit/818cfd5edcda78ac3eb201af392fd301ab9ad46b)
Compare | [4e28c96c3bd32ce2811ef7128641e8926874020e](https://github.com/dotnet/runtime/commit/4e28c96c3bd32ce2811ef7128641e8926874020e)
Diff | [Diff](https://github.com/dotnet/runtime/compare/818cfd5edcda78ac3eb201af392fd301ab9ad46b...4e28c96c3bd32ce2811ef7128641e8926874020e)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in System.Text.Json.Tests.Perf_Basic
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [WriteBasicUtf8 - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [WriteBasicUtf8 - 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Tests.Perf_Basic*'
```
### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf8(Formatted: False, SkipValidation: True, DataSize: 10)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Text.Json.Tests.Perf_Basic.WriteBasicUtf8(Formatted: False, SkipValidation: True, DataSize: 100000)
#### 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 | [818cfd5edcda78ac3eb201af392fd301ab9ad46b](https://github.com/dotnet/runtime/commit/818cfd5edcda78ac3eb201af392fd301ab9ad46b)
Compare | [4e28c96c3bd32ce2811ef7128641e8926874020e](https://github.com/dotnet/runtime/commit/4e28c96c3bd32ce2811ef7128641e8926874020e)
Diff | [Diff](https://github.com/dotnet/runtime/compare/818cfd5edcda78ac3eb201af392fd301ab9ad46b...4e28c96c3bd32ce2811ef7128641e8926874020e)
Configs | CompilationMode:tiered, RunKind:micro
### Improvements in System.Text.Json.Serialization.Tests.WriteJson<IndexViewModel>
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]()
![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<IndexViewModel>.SerializeToString(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 at src/benchmarks/micro/libraries/System.Text.Json/Serializer/WriteJson.cs, especially lines 75-98, and review the linked Windows/x64 performance reports for the listed serialization cases. Compare the baseline and test results, then identify the relevant runtime or benchmark entry point; done means an agreed performance change is implemented and validated against these benchmarks.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- performance
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100