dotnet / dotnet/perf-autofiling-issues

[Perf] Linux/x64: 6 Improvements on 7/31/2026 4:48:31 PM +00:00

Open
#77,453 1 comment 0 reactions 0 assignees View on GitHub
aot-true arch-wasm arch-x64 branch-refs/heads/main compilationmode-wasm kind-micro Look Again os-linux perf-improvement runkind-micro untriaged wasm-aot
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 | [ba8afceee83540ed1d867987483f74d4ad2cfae9](https://github.com/dotnet/runtime/commit/ba8afceee83540ed1d867987483f74d4ad2cfae9)
Compare | [d5c739f99fa75a37ea863b06dd8d31a51965c8be](https://github.com/dotnet/runtime/commit/d5c739f99fa75a37ea863b06dd8d31a51965c8be)
Diff | [Diff](https://github.com/dotnet/runtime/compare/ba8afceee83540ed1d867987483f74d4ad2cfae9...d5c739f99fa75a37ea863b06dd8d31a51965c8be)
Configs | AOT:true, CompilationMode:wasm, RunKind:micro

### Improvements in System.Collections.Tests.Perf_BitArray

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

  • [BitArrayByteArrayCtor - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 139.98 ns | 56.87 ns | 0.41 | 0.06 | False | | |
|
  • [BitArraySetLengthShrink - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 150.33 ns | 67.78 ns | 0.45 | 0.03 | False | | |
|
  • [BitArrayByteArrayCtor - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 61.23 ns | 30.18 ns | 0.49 | 0.14 | False | | |
|
  • [BitArraySetLengthShrink - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 72.37 ns | 42.09 ns | 0.58 | 0.13 | False | | |
|
  • [BitArraySetLengthGrow - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 197.69 ns | 117.64 ns | 0.60 | 0.03 | False | | |
|
  • [BitArraySetLengthGrow - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 82.08 ns | 50.96 ns | 0.62 | 0.16 | 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.Collections.Tests.Perf_BitArray*'
```

### System.Collections.Tests.Perf_BitArray.BitArrayByteArrayCtor(Size: 512)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Collections.Tests.Perf_BitArray.BitArraySetLengthShrink(Size: 512)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Collections.Tests.Perf_BitArray.BitArrayByteArrayCtor(Size: 4)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Collections.Tests.Perf_BitArray.BitArraySetLengthShrink(Size: 4)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Collections.Tests.Perf_BitArray.BitArraySetLengthGrow(Size: 512)

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Collections.Tests.Perf_BitArray.BitArraySetLengthGrow(Size: 4)

#### 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 linked benchmark source in performance/src/benchmarks/micro/libraries/System.Collections/Perf.BitArray.cs and review the BitArray constructor and SetLength benchmarks. Run the supplied benchmarks_ci.py command for System.Collections.Tests.Perf_BitArray, then compare the reported baseline and test results with the linked test report. Done requires identifying whether the reported improvement reflects an actionable issue, though the payload does not specify a requested fix.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux, python, ubuntu, wasm
Domain
performance, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.