dotnet / dotnet/perf-autofiling-issues

[Perf] Windows/x64: 4 Regressions on 8/31/2026 2:56:30 PM +00:00

Open
#79,055 1 comment 0 reactions 0 assignees View on GitHub
arch-x64 branch-refs/heads/main compilationmode-tiered kind-micro os-windows perf-regression 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 | x64
OS | Windows 10.0.22631
Queue | ViperWindows
Baseline | [5b11923ecac20a8367b4ca60a9b9739479319e9a](https://github.com/dotnet/runtime/commit/5b11923ecac20a8367b4ca60a9b9739479319e9a)
Compare | [ef3efe5e020e412e4f6453781d59443e975010a4](https://github.com/dotnet/runtime/commit/ef3efe5e020e412e4f6453781d59443e975010a4)
Diff | [Diff](https://github.com/dotnet/runtime/compare/5b11923ecac20a8367b4ca60a9b9739479319e9a...ef3efe5e020e412e4f6453781d59443e975010a4)
Configs | CompilationMode:tiered, RunKind:micro

### Regressions in System.IO.Tests.Perf_File

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

  • [WriteAllTextAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 128.84 μs | 151.88 μs | 1.18 | 0.54 | False | | |
|
  • [WriteAllTextAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 284.86 μs | 329.18 μs | 1.16 | 0.48 | False | | |

![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.IO.Tests.Perf_File*'
```

### System.IO.Tests.Perf_File.WriteAllTextAsync(size: 10000)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.IO.Tests.Perf_File.WriteAllTextAsync(size: 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 | [5b11923ecac20a8367b4ca60a9b9739479319e9a](https://github.com/dotnet/runtime/commit/5b11923ecac20a8367b4ca60a9b9739479319e9a)
Compare | [ef3efe5e020e412e4f6453781d59443e975010a4](https://github.com/dotnet/runtime/commit/ef3efe5e020e412e4f6453781d59443e975010a4)
Diff | [Diff](https://github.com/dotnet/runtime/compare/5b11923ecac20a8367b4ca60a9b9739479319e9a...ef3efe5e020e412e4f6453781d59443e975010a4)
Configs | CompilationMode:tiered, RunKind:micro

### Regressions in System.Reflection.Invoke

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

  • [Ctor4_ActivatorCreateInstance - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 277.92 ns | 303.09 ns | 1.09 | 0.15 | 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.Reflection.Invoke*'
```

### System.Reflection.Invoke.Ctor4_ActivatorCreateInstance

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

### Regressions in Span.Sorting

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

  • [BubbleSortSpan - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 93.92 μs | 107.73 μs | 1.15 | 0.69 | 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 'Span.Sorting*'
```

### Span.Sorting.BubbleSortSpan(Size: 512)

#### 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 src/benchmarks/micro/libraries/System.IO.FileSystem/Perf.File.cs, src/benchmarks/micro/runtime/System.Reflection/Invoke.cs, and src/benchmarks/micro/runtime/Span/Sorting.cs. Reproduce the reported cases with the provided benchmarks_ci.py commands, then compare the baseline and test results to identify and address the regression. Done means the affected benchmarks no longer show the reported Windows/x64 slowdown.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, python
Domain
performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.