dotnet / dotnet/perf-autofiling-issues

[Perf] Windows/x86: 5 Improvements on 8/4/2026 8:53:30 PM +00:00

Open
#77,646 1 comment 0 reactions 0 assignees View on GitHub
arch-x86 bdn-update branch-refs/heads/main compilationmode-tiered kind-micro Look Again os-windows 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 | x86
OS | Windows 10.0.22631
Queue | ViperWindows
Baseline | [2dd5330804f9d4f49599d82c90a67892d4dd8af0](https://github.com/dotnet/runtime/commit/2dd5330804f9d4f49599d82c90a67892d4dd8af0)
Compare | [173e6b40e02cd1652102c09e07bd4cf7320b3d4d](https://github.com/dotnet/runtime/commit/173e6b40e02cd1652102c09e07bd4cf7320b3d4d)
Diff | [Diff](https://github.com/dotnet/runtime/compare/2dd5330804f9d4f49599d82c90a67892d4dd8af0...173e6b40e02cd1652102c09e07bd4cf7320b3d4d)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in System.Threading.Tests.Perf_CancellationToken

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

  • [CreateRegisterDispose - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 35.66 ns | 25.87 ns | 0.73 | 0.04 | False | | |
|
  • [RegisterAndUnregister_Serial - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 18.89 ns | 15.32 ns | 0.81 | 0.21 | False | | |
|
  • [CreateLinkedTokenSource1 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 23.23 ns | 18.95 ns | 0.82 | 0.04 | 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Threading.Tests.Perf_CancellationToken*'
```

### System.Threading.Tests.Perf_CancellationToken.CreateRegisterDispose

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Threading.Tests.Perf_CancellationToken.RegisterAndUnregister_Serial

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Threading.Tests.Perf_CancellationToken.CreateLinkedTokenSource1

#### 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 | x86
OS | Windows 10.0.22631
Queue | ViperWindows
Baseline | [2dd5330804f9d4f49599d82c90a67892d4dd8af0](https://github.com/dotnet/runtime/commit/2dd5330804f9d4f49599d82c90a67892d4dd8af0)
Compare | [173e6b40e02cd1652102c09e07bd4cf7320b3d4d](https://github.com/dotnet/runtime/commit/173e6b40e02cd1652102c09e07bd4cf7320b3d4d)
Diff | [Diff](https://github.com/dotnet/runtime/compare/2dd5330804f9d4f49599d82c90a67892d4dd8af0...173e6b40e02cd1652102c09e07bd4cf7320b3d4d)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in System.Text.Json.Document.Tests.Perf_EnumerateObject

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

  • [EnumerateProperties - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 809.53 ns | 744.82 ns | 0.92 | 0.09 | False | | |

![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.Document.Tests.Perf_EnumerateObject*'
```

### System.Text.Json.Document.Tests.Perf_EnumerateObject.EnumerateProperties(TestCase: ObjectProperties)

#### 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 | x86
OS | Windows 10.0.22631
Queue | ViperWindows
Baseline | [2dd5330804f9d4f49599d82c90a67892d4dd8af0](https://github.com/dotnet/runtime/commit/2dd5330804f9d4f49599d82c90a67892d4dd8af0)
Compare | [173e6b40e02cd1652102c09e07bd4cf7320b3d4d](https://github.com/dotnet/runtime/commit/173e6b40e02cd1652102c09e07bd4cf7320b3d4d)
Diff | [Diff](https://github.com/dotnet/runtime/compare/2dd5330804f9d4f49599d82c90a67892d4dd8af0...173e6b40e02cd1652102c09e07bd4cf7320b3d4d)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in BenchmarksGame.BinaryTrees_2

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

  • [RunBench - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 111.01 ms | 64.43 ms | 0.58 | 0.24 | False | | |

![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 'BenchmarksGame.BinaryTrees_2*'
```

### BenchmarksGame.BinaryTrees_2.RunBench

#### 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 sources named in the report: src/benchmarks/micro/libraries/System.Threading/Perf.CancellationToken.cs, src/benchmarks/micro/libraries/System.Text.Json/Document/EnumerateObject.cs, and src/benchmarks/micro/runtime/BenchmarksGame/binarytrees-2.cs. Run the provided benchmarks_ci.py filters and compare the linked reports to determine whether the improvements need follow-up; done requires a validated explanation or actionable result for the reported changes.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
performance, testing
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.