dotnet / dotnet/perf-autofiling-issues

[Perf] Linux/x64: 15 Improvements on 8/28/2026 11:31:31 PM +00:00

Open
#79,083 1 comment 0 reactions 0 assignees View on GitHub
arch-x64 branch-refs/heads/main compilationmode-tiered kind-micro Look Again 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 | [100da3f94464f99616ee4a401670bec491ebc787](https://github.com/dotnet/runtime/commit/100da3f94464f99616ee4a401670bec491ebc787)
Compare | [aa036afce592ad80e938a35bd376222fb232cba9](https://github.com/dotnet/runtime/commit/aa036afce592ad80e938a35bd376222fb232cba9)
Diff | [Diff](https://github.com/dotnet/runtime/compare/100da3f94464f99616ee4a401670bec491ebc787...aa036afce592ad80e938a35bd376222fb232cba9)
Configs | CompilationMode:tiered, RunKind:micro

### Improvements in System.Buffers.Tests.RentReturnArrayPoolTests<Object>

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

  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.84 μs | 1.70 μs | 0.29 | 0.76 | False | | |
|
  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.91 μs | 1.92 μs | 0.33 | 0.70 | False | | |
|
  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.39 μs | 2.25 μs | 0.42 | 0.61 | False | | |
|
  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.43 μs | 2.33 μs | 0.43 | 0.59 | False | | |
|
  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 3.71 μs | 1.76 μs | 0.48 | 0.48 | False | | |
|
  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 2.99 μs | 1.42 μs | 0.48 | 0.22 | 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.Buffers.Tests.RentReturnArrayPoolTests*'
```

### System.Buffers.Tests.RentReturnArrayPoolTests<Object>.ProducerConsumer(RentalSize: 4096, ManipulateArray: True, Async: False, UseSharedPool: False)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Buffers.Tests.RentReturnArrayPoolTests<Object>.ProducerConsumer(RentalSize: 4096, ManipulateArray: True, Async: False, UseSharedPool: True)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Buffers.Tests.RentReturnArrayPoolTests<Object>.ProducerConsumer(RentalSize: 4096, ManipulateArray: False, Async: False, UseSharedPool: False)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Buffers.Tests.RentReturnArrayPoolTests<Object>.ProducerConsumer(RentalSize: 4096, ManipulateArray: False, Async: False, UseSharedPool: True)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Buffers.Tests.RentReturnArrayPoolTests<Object>.ProducerConsumer(RentalSize: 4096, ManipulateArray: True, Async: True, UseSharedPool: True)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Buffers.Tests.RentReturnArrayPoolTests<Object>.ProducerConsumer(RentalSize: 4096, ManipulateArray: True, Async: True, UseSharedPool: False)

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

### Improvements in System.Buffers.Tests.RentReturnArrayPoolTests<Byte>

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

  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.70 μs | 1.42 μs | 0.25 | 0.67 | False | | |
|
  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 6.58 μs | 1.99 μs | 0.30 | 0.74 | False | | |
|
  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 3.27 μs | 1.40 μs | 0.43 | 0.21 | False | | |
|
  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.36 μs | 2.25 μs | 0.51 | 0.61 | False | | |
|
  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.23 μs | 2.27 μs | 0.54 | 0.59 | False | | |
|
  • [ProducerConsumer - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 3.46 μs | 3.10 μs | 0.90 | 0.50 | 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.Buffers.Tests.RentReturnArrayPoolTests*'
```

### System.Buffers.Tests.RentReturnArrayPoolTests<Byte>.ProducerConsumer(RentalSize: 4096, ManipulateArray: True, Async: False, UseSharedPool: False)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Buffers.Tests.RentReturnArrayPoolTests<Byte>.ProducerConsumer(RentalSize: 4096, ManipulateArray: True, Async: False, UseSharedPool: True)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Buffers.Tests.RentReturnArrayPoolTests<Byte>.ProducerConsumer(RentalSize: 4096, ManipulateArray: True, Async: True, UseSharedPool: False)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Buffers.Tests.RentReturnArrayPoolTests<Byte>.ProducerConsumer(RentalSize: 4096, ManipulateArray: False, Async: False, UseSharedPool: False)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Buffers.Tests.RentReturnArrayPoolTests<Byte>.ProducerConsumer(RentalSize: 4096, ManipulateArray: False, Async: False, UseSharedPool: True)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Buffers.Tests.RentReturnArrayPoolTests<Byte>.ProducerConsumer(RentalSize: 4096, ManipulateArray: True, Async: True, UseSharedPool: True)

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

### Improvements in System.Net.Security.Tests.SslStreamTests

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

  • [WriteReadAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 13.78 μs | 12.47 μs | 0.91 | 0.08 | False | | |
|
  • [LargeWriteReadAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 15.95 μs | 14.98 μs | 0.94 | 0.18 | 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
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Net.Security.Tests.SslStreamTests*'
```

### System.Net.Security.Tests.SslStreamTests.WriteReadAsync

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Net.Security.Tests.SslStreamTests.LargeWriteReadAsync

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

### Improvements in System.IO.Tests.Perf_FileStream

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

  • [CopyToFileAsync - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.68 ms | 3.61 ms | 0.64 | 0.23 | 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.IO.Tests.Perf_FileStream*'
```

### System.IO.Tests.Perf_FileStream.CopyToFileAsync(fileSize: 1024, options: Asynchronous)

#### 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.Buffers/ArrayPoolTests.cs:106-149 and run the provided benchmarks_ci.py command for the RentReturnArrayPoolTests filter. Review the linked test report and comparison data to determine whether the reported improvement indicates an actionable issue; the payload does not identify a requested code change.

Written by the indexing model from the issue text.

Assessment

Tech stack
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.