dotnet / dotnet/perf-autofiling-issues

[Perf] Linux/x64: 80 Regressions on 4/28/2026 9:20:26 AM +00:00

Open
#72,186 4 comments 0 reactions 0 assignees View on GitHub
arch-wasm arch-x64 branch-refs/heads/main compilationmode-wasm kind-micro os-linux perf-regression runkind-micro runtimetype-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 | [bbccf5ea9ae9a2667f138a67d117eddba9d99e9c](https://github.com/dotnet/runtime/commit/bbccf5ea9ae9a2667f138a67d117eddba9d99e9c)
Compare | [6130a50fcc846296d5c722b8e78c3bd292519eaa](https://github.com/dotnet/runtime/commit/6130a50fcc846296d5c722b8e78c3bd292519eaa)
Diff | [Diff](https://github.com/dotnet/runtime/compare/bbccf5ea9ae9a2667f138a67d117eddba9d99e9c...6130a50fcc846296d5c722b8e78c3bd292519eaa)
Configs | CompilationMode:wasm, RunKind:micro, RuntimeType:coreclr

### Regressions in System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>

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

  • [LessThanAnyBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 4.87 μs | 5.94 μs | 1.22 | 0.27 | False | | |
|
  • [GreaterThanOrEqualAnyBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 577.93 ns | 700.58 ns | 1.21 | 0.41 | False | | |
|
  • [BitwiseAndBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 849.82 ns | 1003.16 ns | 1.18 | 0.34 | False | | |
|
  • [GreaterThanAllBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.12 μs | 5.93 μs | 1.16 | 0.34 | False | | |
|
  • [GetHashCodeBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 6.93 μs | 7.96 μs | 1.15 | 0.24 | False | | |
|
  • [GreaterThanOrEqualAllBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 5.21 μs | 5.83 μs | 1.12 | 0.28 | False | | |
|
  • [ZeroBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 76.91 ns | 84.72 ns | 1.10 | 0.41 | False | | |
|
  • [GreaterThanOrEqualBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 7.14 μs | 7.79 μs | 1.09 | 0.26 | False | | |
|
  • [UnaryNegateOperatorBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 6.54 μs | 7.09 μs | 1.08 | 0.35 | False | | |
|
  • [DivisionOperatorBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 6.72 μs | 7.19 μs | 1.07 | 0.29 | False | | |

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

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.LessThanAnyBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.GreaterThanOrEqualAnyBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.BitwiseAndBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.GreaterThanAllBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.GetHashCodeBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.GreaterThanOrEqualAllBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.ZeroBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.GreaterThanOrEqualBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.UnaryNegateOperatorBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Byte>.DivisionOperatorBenchmark

#### 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 | [bbccf5ea9ae9a2667f138a67d117eddba9d99e9c](https://github.com/dotnet/runtime/commit/bbccf5ea9ae9a2667f138a67d117eddba9d99e9c)
Compare | [6130a50fcc846296d5c722b8e78c3bd292519eaa](https://github.com/dotnet/runtime/commit/6130a50fcc846296d5c722b8e78c3bd292519eaa)
Diff | [Diff](https://github.com/dotnet/runtime/compare/bbccf5ea9ae9a2667f138a67d117eddba9d99e9c...6130a50fcc846296d5c722b8e78c3bd292519eaa)
Configs | CompilationMode:wasm, RunKind:micro, RuntimeType:coreclr

### Regressions in System.Runtime.Intrinsics.Tests.Perf_Vector128Of<UInt32>

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

  • [GetHashCodeBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 2.63 μs | 3.31 μs | 1.26 | 0.23 | False | | |
|
  • [LessThanOrEqualBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 2.76 μs | 3.33 μs | 1.20 | 0.30 | False | | |
|
  • [DivisionOperatorBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 2.57 μs | 3.08 μs | 1.20 | 0.28 | False | | |
|
  • [GreaterThanBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 2.86 μs | 3.40 μs | 1.19 | 0.32 | False | | |
|
  • [EqualsStaticBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 2.64 μs | 2.97 μs | 1.12 | 0.29 | False | | |
|
  • [BitwiseOrBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 930.36 ns | 1034.68 ns | 1.11 | 0.36 | False | | |
|
  • [EqualsAllBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 673.94 ns | 738.15 ns | 1.10 | 0.29 | False | | |
|
  • [GreaterThanAnyBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 650.34 ns | 690.52 ns | 1.06 | 0.22 | 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
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Runtime.Intrinsics.Tests.Perf_Vector128Of*'
```

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<UInt32>.GetHashCodeBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<UInt32>.LessThanOrEqualBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<UInt32>.DivisionOperatorBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<UInt32>.GreaterThanBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<UInt32>.EqualsStaticBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<UInt32>.BitwiseOrBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<UInt32>.EqualsAllBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<UInt32>.GreaterThanAnyBenchmark

#### 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 | [bbccf5ea9ae9a2667f138a67d117eddba9d99e9c](https://github.com/dotnet/runtime/commit/bbccf5ea9ae9a2667f138a67d117eddba9d99e9c)
Compare | [6130a50fcc846296d5c722b8e78c3bd292519eaa](https://github.com/dotnet/runtime/commit/6130a50fcc846296d5c722b8e78c3bd292519eaa)
Diff | [Diff](https://github.com/dotnet/runtime/compare/bbccf5ea9ae9a2667f138a67d117eddba9d99e9c...6130a50fcc846296d5c722b8e78c3bd292519eaa)
Configs | CompilationMode:wasm, RunKind:micro, RuntimeType:coreclr

### Regressions in System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Int64>

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

  • [LessThanAnyBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 1.12 μs | 1.43 μs | 1.27 | 0.29 | False | | |
|
  • [XorBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 902.81 ns | 1114.60 ns | 1.23 | 0.33 | False | | |
|
  • [MultiplyOperatorBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 1.54 μs | 1.75 μs | 1.14 | 0.33 | False | | |
|
  • [BitwiseAndOperatorBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 860.08 ns | 929.14 ns | 1.08 | 0.32 | False | | |
|
  • [ConditionalSelectBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 2.92 μs | 3.13 μs | 1.07 | 0.26 | False | | |
|
  • [AllBitsSetBenchmark - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 616.52 ns | 659.44 ns | 1.07 | 0.35 | 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.Runtime.Intrinsics.Tests.Perf_Vector128Of*'
```

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Int64>.LessThanAnyBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Int64>.XorBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Int64>.MultiplyOperatorBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Int64>.BitwiseAndOperatorBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Int64>.ConditionalSelectBenchmark

#### ETL Files

#### Histogram

#### JIT Disasms

### System.Runtime.Intrinsics.Tests.Perf_Vector128Of<Int64>.AllBitsSetBenchmark

#### 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 | [bbccf5ea9ae9a2667f138a67d117eddba9d99e9c](https://github.com/dotnet/runtime/commit/bbccf5ea9ae9a2667f138a67d117eddba9d99e9c)
Compare | [6130a50fcc846296d5c722b8e78c3bd292519eaa](https://github.com/dotnet/runtime/commit/6130a50fcc846296d5c722b8e78c3bd292519eaa)
Diff | [Diff](https://github.com/dotnet/runtime/compare/bbccf5ea9ae9a2667f138a67d117eddba9d99e9c...6130a50fcc846296d5c722b8e78c3bd292519eaa)
Configs | CompilationMode:wasm, RunKind:micro, RuntimeType:coreclr

### Regressions in Span.IndexerBench

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

  • [Indexer3 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 100.52 μs | 153.53 μs | 1.53 | 0.39 | False | | |
|
  • [KnownSizeArray - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 101.20 μs | 147.05 μs | 1.45 | 0.48 | False | | |
|
  • [CoveredIndex3 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 213.92 μs | 302.86 μs | 1.42 | 0.33 | False | | |
|
  • [Indexer2 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 102.64 μs | 125.03 μs | 1.22 | 0.46 | False | | |
|
  • [WriteViaIndexer1 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 158.97 μs | 180.66 μs | 1.14 | 0.36 | False | | |
|
  • [Indexer4 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 846.16 μs | 909.51 μs | 1.07 | 0.53 | 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 'Span.IndexerBench*'
```

### Span.IndexerBench.Indexer3(length: 1024)

#### ETL Files

#### Histogram

#### JIT Disasms

### Span.IndexerBench.KnownSizeArray(length: 1024)

#### ETL Files

#### Histogram

#### JIT Disasms

### Span.IndexerBench.CoveredIndex3(length: 1024)

#### ETL Files

#### Histogram

#### JIT Disasms

### Span.IndexerBench.Indexer2(length: 1024)

#### ETL Files

#### Histogram

#### JIT Disasms

### Span.IndexerBench.WriteViaIndexer1(length: 1024)

#### ETL Files

#### Histogram

#### JIT Disasms

### Span.IndexerBench.Indexer4(length: 1024)

#### 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

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.