dotnet / dotnet/perf-autofiling-issues

[Perf] Linux/x64: 7 Improvements on 8/2/2026 11:04:49 PM +00:00

Open
#77,255 1 comment 0 reactions 0 assignees View on GitHub
arch-x64 branch-refs/heads/main compilationmode-tiered kind-micro os-linux 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 | x64
OS | ubuntu 22.04
Queue | ViperUbuntu
Baseline | [a2f953fe266dc72602436e77614a9e10f60a7128](https://github.com/dotnet/runtime/commit/a2f953fe266dc72602436e77614a9e10f60a7128)
Compare | [abcd6eb3137ac133ef7f73eae95e7928160386c9](https://github.com/dotnet/runtime/commit/abcd6eb3137ac133ef7f73eae95e7928160386c9)
Diff | [Diff](https://github.com/dotnet/runtime/compare/a2f953fe266dc72602436e77614a9e10f60a7128...abcd6eb3137ac133ef7f73eae95e7928160386c9)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in System.IO.Tests.StreamReaderReadToEndTests

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

  • [ReadToEndAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 74.83 ms | 64.85 ms | 0.87 | 0.02 | False | | |
|
  • [ReadToEnd - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 76.38 ms | 67.67 ms | 0.89 | 0.03 | False | | |
|
  • [ReadToEnd - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 76.73 ms | 68.47 ms | 0.89 | 0.04 | False | | |
|
  • [ReadToEnd - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 74.25 ms | 67.34 ms | 0.91 | 0.04 | False | | |
|
  • [ReadToEndAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 74.74 ms | 68.30 ms | 0.91 | 0.02 | False | | |
|
  • [ReadToEndAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 76.20 ms | 70.29 ms | 0.92 | 0.02 | False | | |

![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
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.IO.Tests.StreamReaderReadToEndTests*'
```

### System.IO.Tests.StreamReaderReadToEndTests.ReadToEndAsync(LineLengthRange: [ 1, 1])

#### ETL Files

#### Histogram

#### JIT Disasms

### System.IO.Tests.StreamReaderReadToEndTests.ReadToEnd(LineLengthRange: [ 1, 1])

#### ETL Files

#### Histogram

#### JIT Disasms

### System.IO.Tests.StreamReaderReadToEndTests.ReadToEnd(LineLengthRange: [ 1, 8])

#### ETL Files

#### Histogram

#### JIT Disasms

### System.IO.Tests.StreamReaderReadToEndTests.ReadToEnd(LineLengthRange: [ 9, 32])

#### ETL Files

#### Histogram

#### JIT Disasms

### System.IO.Tests.StreamReaderReadToEndTests.ReadToEndAsync(LineLengthRange: [ 9, 32])

#### ETL Files

#### Histogram

#### JIT Disasms

### System.IO.Tests.StreamReaderReadToEndTests.ReadToEndAsync(LineLengthRange: [ 1, 8])

#### 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 | ubuntu 22.04
Queue | ViperUbuntu
Baseline | [a2f953fe266dc72602436e77614a9e10f60a7128](https://github.com/dotnet/runtime/commit/a2f953fe266dc72602436e77614a9e10f60a7128)
Compare | [abcd6eb3137ac133ef7f73eae95e7928160386c9](https://github.com/dotnet/runtime/commit/abcd6eb3137ac133ef7f73eae95e7928160386c9)
Diff | [Diff](https://github.com/dotnet/runtime/compare/a2f953fe266dc72602436e77614a9e10f60a7128...abcd6eb3137ac133ef7f73eae95e7928160386c9)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in System.Tests.Perf_Random

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

  • [NextSingle - Duration of single invocation]()
  • [ADX - Test Multi Config Graph]()
| 8.74 ns | 4.62 ns | 0.53 | 0.05 | 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
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Random*'
```

### System.Tests.Perf_Random.NextSingle

#### 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 source at src/benchmarks/micro/libraries/System.IO/StreamReaderReadToEndTests.cs and the reported comparison and test report. Run the documented benchmarks_ci.py command for System.IO.Tests.StreamReaderReadToEndTests, then compare the results with the linked history and graphs. Done means the improvement is reproduced and its cause or follow-up is documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, python
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.