dotnet / dotnet/perf-autofiling-issues

[Perf] Windows/x86: 4 Improvements on 8/7/2026 7:09:09 PM +00:00

Open
#77,648 1 comment 0 reactions 0 assignees View on GitHub
arch-x86 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 | [9bf3be3ad48e77e97436fa96825cb713a6964389](https://github.com/dotnet/runtime/commit/9bf3be3ad48e77e97436fa96825cb713a6964389)
Compare | [4c86c57ac3a6569063da4cb0a7245aadbc276f00](https://github.com/dotnet/runtime/commit/4c86c57ac3a6569063da4cb0a7245aadbc276f00)
Diff | [Diff](https://github.com/dotnet/runtime/compare/9bf3be3ad48e77e97436fa96825cb713a6964389...4c86c57ac3a6569063da4cb0a7245aadbc276f00)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in System.Net.Http.Tests.SocketsHttpHandlerPerfTest

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

  • [Get_EnumerateHeaders_Validated - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 36.50 μs | 23.30 μs | 0.64 | 0.31 | False | | |
|
  • [Get_EnumerateHeaders_Validated - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 42.98 μs | 29.10 μs | 0.68 | 0.59 | False | | |
|
  • [Get_EnumerateHeaders_Validated - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 41.16 μs | 28.68 μs | 0.70 | 0.38 | 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.Net.Http.Tests.SocketsHttpHandlerPerfTest*'
```

### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get_EnumerateHeaders_Validated(ssl: False, chunkedResponse: True, responseLength: 1)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get_EnumerateHeaders_Validated(ssl: True, chunkedResponse: False, responseLength: 1)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get_EnumerateHeaders_Validated(ssl: True, chunkedResponse: True, responseLength: 1)

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

### Improvements in System.Threading.Tests.Perf_Interlocked

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

  • [CompareExchange_long - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 876.66 ns | 3.82 ns | 0.00 | 0.18 | 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.Threading.Tests.Perf_Interlocked*'
```

### System.Threading.Tests.Perf_Interlocked.CompareExchange_long

#### 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, src/benchmarks/micro/libraries/System.Net.Http/Perf.SocketsHttpHandler.cs and src/benchmarks/micro/libraries/System.Threading/Perf.Interlocked.cs, then reproduce the listed filters using benchmarks_ci.py. Compare the results with the supplied baseline and test commits; done means the reported improvements are explained and validated for the affected benchmarks.

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
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.