dotnet / dotnet/perf-autofiling-issues

[Perf] Windows/x86: 4 Regressions on 7/6/2026 7:38:21 AM +00:00

Open
#76,127 1 comment 0 reactions 0 assignees View on GitHub
arch-x86 branch-refs/heads/main compilationmode-tiered kind-micro Look Again 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 | x86
OS | Windows 10.0.22631
Queue | ViperWindows
Baseline | [8f365c934088b8ae21a4dfce8073da0d3eb22a54](https://github.com/dotnet/runtime/commit/8f365c934088b8ae21a4dfce8073da0d3eb22a54)
Compare | [c473d80e67a0e090fa4a3e67fbc5bc9d122b172a](https://github.com/dotnet/runtime/commit/c473d80e67a0e090fa4a3e67fbc5bc9d122b172a)
Diff | [Diff](https://github.com/dotnet/runtime/compare/8f365c934088b8ae21a4dfce8073da0d3eb22a54...c473d80e67a0e090fa4a3e67fbc5bc9d122b172a)
Configs | CompilationMode:tiered, RunKind:micro

### Regressions in System.Linq.Tests.Perf_Enumerable

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

  • [AnyWithPredicate_LastElementMatches - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 164.75 ns | 192.59 ns | 1.17 | 0.04 | False | | |
|
  • [AnyWithPredicate_LastElementMatches - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 165.31 ns | 192.09 ns | 1.16 | 0.03 | False | | |
|
  • [FirstWithPredicate_LastElementMatches - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 165.41 ns | 191.89 ns | 1.16 | 0.08 | 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.Linq.Tests.Perf_Enumerable*'
```

### System.Linq.Tests.Perf_Enumerable.AnyWithPredicate_LastElementMatches(input: Array)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Linq.Tests.Perf_Enumerable.AnyWithPredicate_LastElementMatches(input: List)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Linq.Tests.Perf_Enumerable.FirstWithPredicate_LastElementMatches(input: List)

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

### Regressions in System.Collections.IterateFor<String>

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

  • [ImmutableSortedSet - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.76 μs | 5.04 μs | 1.06 | 0.03 | 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.Collections.IterateFor*'
```

### System.Collections.IterateFor<String>.ImmutableSortedSet(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 entries in src/benchmarks/micro/libraries/System.Linq/Perf.Enumerable.cs and src/benchmarks/micro/libraries/System.Collections/Iterate/IterateFor.cs, then run the provided benchmarks_ci.py commands on the stated Windows x86 configuration. Compare the reported results with the linked baseline and regression reports; done means the regressions are explained and a rerun no longer shows the affected performance drop.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.