dotnet / dotnet/perf-autofiling-issues
[Perf] Linux/arm64: 55 Improvements on 7/13/2026 8:32:42 PM +00:00
- Dominant language
- No language data
- Stars
- 10
- Forks
- 8
- PR merge metrics
- PR metrics pending
Description
### Run Information
Name | Value
-- | --
Architecture | arm64
OS | azurelinux 3.0
Queue | CobaltAzureLinux
Baseline | [a90733cc40d6c7037a37d9c2b5c2403b8cac490f](https://github.com/dotnet/runtime/commit/a90733cc40d6c7037a37d9c2b5c2403b8cac490f)
Compare | [f2b30309fd488f1c3fd41c18723a7c80a81f4c67](https://github.com/dotnet/runtime/commit/f2b30309fd488f1c3fd41c18723a7c80a81f4c67)
Diff | [Diff](https://github.com/dotnet/runtime/compare/a90733cc40d6c7037a37d9c2b5c2403b8cac490f...f2b30309fd488f1c3fd41c18723a7c80a81f4c67)
Configs | CompilationMode:tiered, R2RType:r2r_interpreter, RunKind:micro
### Improvements in System.IO.Tests.Perf_FileStream
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync_NoBuffering - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync_NoBuffering - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync_NoBuffering - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [WriteAsync_NoBuffering_PreallocationSize - Duration of single invocation]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [WriteAsync_NoBuffering_PreallocationSize - Duration of single invocation]()
- [ADX - Test Multi Config Graph]()
|
- [AppendAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [WriteAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [WriteAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
![graph]()
![graph]()
![graph]()
![graph]()
![graph]()
![graph]()
![graph]()
![graph]()
![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.IO.Tests.Perf_FileStream*'
```
### System.IO.Tests.Perf_FileStream.ReadAsync(fileSize: 104857600, userBufferSize: 4096, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.ReadAsync(fileSize: 1048576, userBufferSize: 4096, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.ReadAsync(fileSize: 1048576, userBufferSize: 512, options: None)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.ReadAsync_NoBuffering(fileSize: 104857600, userBufferSize: 16384, options: None)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.ReadAsync(fileSize: 104857600, userBufferSize: 4096, options: None)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.ReadAsync(fileSize: 1048576, userBufferSize: 4096, options: None)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.ReadAsync(fileSize: 1024, userBufferSize: 1024, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.ReadAsync(fileSize: 1024, userBufferSize: 1024, options: None)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.ReadAsync_NoBuffering(fileSize: 104857600, userBufferSize: 16384, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.ReadAsync_NoBuffering(fileSize: 1048576, userBufferSize: 16384, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.WriteAsync_NoBuffering_PreallocationSize(fileSize: 1048576, userBufferSize: 16384, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.ReadAsync(fileSize: 1048576, userBufferSize: 512, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.WriteAsync_NoBuffering_PreallocationSize(fileSize: 104857600, userBufferSize: 16384, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.AppendAsync(fileSize: 1048576, userBufferSize: 4096, options: DeleteOnClose, Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.WriteAsync(fileSize: 104857600, userBufferSize: 4096, options: None)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_FileStream.WriteAsync(fileSize: 104857600, userBufferSize: 4096, 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)
---
### Run Information
Name | Value
-- | --
Architecture | arm64
OS | azurelinux 3.0
Queue | CobaltAzureLinux
Baseline | [a90733cc40d6c7037a37d9c2b5c2403b8cac490f](https://github.com/dotnet/runtime/commit/a90733cc40d6c7037a37d9c2b5c2403b8cac490f)
Compare | [f2b30309fd488f1c3fd41c18723a7c80a81f4c67](https://github.com/dotnet/runtime/commit/f2b30309fd488f1c3fd41c18723a7c80a81f4c67)
Diff | [Diff](https://github.com/dotnet/runtime/compare/a90733cc40d6c7037a37d9c2b5c2403b8cac490f...f2b30309fd488f1c3fd41c18723a7c80a81f4c67)
Configs | CompilationMode:tiered, R2RType:r2r_interpreter, RunKind:micro
### Improvements in System.IO.Tests.Perf_RandomAccess
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadScatterAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadScatterAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [WriteAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [ReadScatterAsync - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
![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.IO.Tests.Perf_RandomAccess*'
```
### System.IO.Tests.Perf_RandomAccess.ReadAsync(fileSize: 1048576, bufferSize: 4096, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_RandomAccess.ReadAsync(fileSize: 1048576, bufferSize: 4096, options: None)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_RandomAccess.ReadAsync(fileSize: 104857600, bufferSize: 16384, options: None)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_RandomAccess.ReadAsync(fileSize: 104857600, bufferSize: 16384, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_RandomAccess.ReadScatterAsync(fileSize: 104857600, buffersSize: 65536, options: None)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_RandomAccess.ReadScatterAsync(fileSize: 104857600, buffersSize: 65536, options: Asynchronous)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_RandomAccess.WriteAsync(fileSize: 104857600, bufferSize: 16384, options: None)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.IO.Tests.Perf_RandomAccess.ReadScatterAsync(fileSize: 1048576, buffersSize: 16384, 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)
---
### Run Information
Name | Value
-- | --
Architecture | arm64
OS | azurelinux 3.0
Queue | CobaltAzureLinux
Baseline | [a90733cc40d6c7037a37d9c2b5c2403b8cac490f](https://github.com/dotnet/runtime/commit/a90733cc40d6c7037a37d9c2b5c2403b8cac490f)
Compare | [f2b30309fd488f1c3fd41c18723a7c80a81f4c67](https://github.com/dotnet/runtime/commit/f2b30309fd488f1c3fd41c18723a7c80a81f4c67)
Diff | [Diff](https://github.com/dotnet/runtime/compare/a90733cc40d6c7037a37d9c2b5c2403b8cac490f...f2b30309fd488f1c3fd41c18723a7c80a81f4c67)
Configs | CompilationMode:tiered, R2RType:r2r_interpreter, RunKind:micro
### Improvements in System.Net.Http.Tests.SocketsHttpHandlerPerfTest
Benchmark | Baseline | Test | Test/Base | Test Quality | Edge Detector | Baseline IR | Compare IR | IR Ratio
-- | -- | -- | -- | -- | -- | -- | -- | --
|
- [Get - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Get_EnumerateHeaders_Validated - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Get - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config Graph]()
|
- [Get_EnumerateHeaders_Unvalidated - Duration of single invocation]()
- [ADX - Test Multi Config Graph]()
|
- [Get_EnumerateHeaders_Unvalidated - Duration of single invocation]()
- [ADX - Test Multi Config Graph]()
|
- [Get_EnumerateHeaders_Validated - Duration of single invocation]()
- 📝 - [Benchmark Source]()
- [ADX - Test Multi Config 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.Net.Http.Tests.SocketsHttpHandlerPerfTest*'
```
### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get(ssl: False, chunkedResponse: True, responseLength: 1)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get_EnumerateHeaders_Validated(ssl: False, chunkedResponse: True, responseLength: 1)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get(ssl: False, chunkedResponse: False, responseLength: 1)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get_EnumerateHeaders_Unvalidated(ssl: False, chunkedResponse: True, responseLength: 1)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get_EnumerateHeaders_Unvalidated(ssl: False, chunkedResponse: False, responseLength: 1)
#### ETL Files
#### Histogram
#### JIT Disasms
### System.Net.Http.Tests.SocketsHttpHandlerPerfTest.Get_EnumerateHeaders_Validated(ssl: False, chunkedResponse: False, responseLength: 1)
#### 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 in src/benchmarks/micro/libraries/System.IO.FileSystem/Perf.FileStream.cs at lines 280-290, then compare the linked baseline and test reports for the ARM64 AzureLinux configuration. The report does not specify a code change or success criterion, so completion would require triage to identify an actionable cause and define how it should be verified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- performance
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100