dotnet / dotnet/perf-autofiling-issues

[Perf] Windows/x86: 10 Improvements on 8/25/2026 10:44:15 PM +00:00

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

### Improvements in System.Tests.Perf_Single

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

  • [ToStringWithFormat - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 87.93 ns | 80.02 ns | 0.91 | 0.01 | False | | |
|
  • [ToString - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 88.13 ns | 80.68 ns | 0.92 | 0.02 | False | | |
|
  • [ToStringWithFormat - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 88.20 ns | 81.09 ns | 0.92 | 0.01 | False | | |
|
  • [ToStringWithFormat - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 87.80 ns | 81.46 ns | 0.93 | 0.00 | False | | |
|
  • [ToStringWithFormat - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 107.62 ns | 100.13 ns | 0.93 | 0.01 | False | | |
|
  • [ToStringWithCultureInfo - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 85.66 ns | 80.73 ns | 0.94 | 0.02 | False | | |
|
  • [ToStringWithFormat - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 145.57 ns | 137.80 ns | 0.95 | 0.01 | False | | |
|
  • [ToStringWithFormat - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 148.04 ns | 140.32 ns | 0.95 | 0.01 | False | | |

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

### System.Tests.Perf_Single.ToStringWithFormat(value: 12345, format: "G")

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Tests.Perf_Single.ToString(value: 12345)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Tests.Perf_Single.ToStringWithFormat(value: 12345, format: "E")

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Tests.Perf_Single.ToStringWithFormat(value: 12345, format: "R")

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Tests.Perf_Single.ToStringWithFormat(value: 12345, format: "G17")

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Tests.Perf_Single.ToStringWithCultureInfo(value: 12345, culture: zh)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Tests.Perf_Single.ToStringWithFormat(value: 3.4028235E+38, format: "G")

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Tests.Perf_Single.ToStringWithFormat(value: -3.4028235E+38, format: "G")

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

### Improvements in System.Tests.Perf_Double

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

  • [ToStringWithFormat - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 94.88 ns | 88.77 ns | 0.94 | 0.02 | 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.Tests.Perf_Double*'
```

### System.Tests.Perf_Double.ToStringWithFormat(value: 12345, format: "R")

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

### Improvements in System.Tests.Perf_Version

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

  • [TryFormat2 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 11.07 ns | 9.39 ns | 0.85 | 0.01 | 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.Tests.Perf_Version*'
```

### System.Tests.Perf_Version.TryFormat2

#### 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 src/benchmarks/micro/libraries/System.Runtime/Perf.Single.cs, especially the ToString and ToStringWithFormat benchmarks linked in the report. Reproduce the Windows/x86 comparison using the listed baseline and test commits, then determine whether the reported improvements indicate a change worth investigating; completion criteria are not specified by the issue.

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
Active
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.