dotnet / dotnet/perf-autofiling-issues

[Perf] Linux/x64: 16 Improvements on 6/24/2026 2:33:49 AM +00:00

Open
#75,506 2 comments 0 reactions 0 assignees View on GitHub
arch-wasm arch-x64 branch-refs/heads/main compilationmode-wasm kind-micro Look Again os-linux perf-improvement runkind-micro 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 | [f4430a4ba762ef82841ff7a8c340ed8854b2bca9](https://github.com/dotnet/runtime/commit/f4430a4ba762ef82841ff7a8c340ed8854b2bca9)
Compare | [46b72c7c81592b429e062bacebe8d39f17362333](https://github.com/dotnet/runtime/commit/46b72c7c81592b429e062bacebe8d39f17362333)
Diff | [Diff](https://github.com/dotnet/runtime/compare/f4430a4ba762ef82841ff7a8c340ed8854b2bca9...46b72c7c81592b429e062bacebe8d39f17362333)
Configs | CompilationMode:wasm, RunKind:micro

### Improvements in System.MathBenchmarks.Single

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

  • [ScaleB - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 85.80 μs | 24.97 μs | 0.29 | 0.57 | False | | |
|
  • [Log - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 80.60 μs | 40.42 μs | 0.50 | 0.02 | False | | |
|
  • [Log2 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 79.33 μs | 40.67 μs | 0.51 | 0.07 | False | | |
|
  • [Round - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 79.56 μs | 48.61 μs | 0.61 | 0.02 | False | | |
|
  • [Exp2M1 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 103.51 μs | 63.73 μs | 0.62 | 0.02 | False | | |
|
  • [Exp10M1 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 102.91 μs | 63.77 μs | 0.62 | 0.16 | False | | |
|
  • [Exp2 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 86.81 μs | 55.38 μs | 0.64 | 0.05 | False | | |
|
  • [Exp10 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 84.81 μs | 55.24 μs | 0.65 | 0.03 | False | | |
|
  • [CopySign - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 59.67 μs | 39.95 μs | 0.67 | 0.00 | False | | |
|
  • [Log2P1 - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 97.31 μs | 65.29 μs | 0.67 | 0.04 | False | | |
|
  • [Pow - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 82.69 μs | 65.05 μs | 0.79 | 0.09 | False | | |

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

### System.MathBenchmarks.Single.ScaleB

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Single.Log

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Single.Log2

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Single.Round

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Single.Exp2M1

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Single.Exp10M1

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Single.Exp2

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Single.Exp10

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Single.CopySign

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Single.Log2P1

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Single.Pow

#### 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 | [f4430a4ba762ef82841ff7a8c340ed8854b2bca9](https://github.com/dotnet/runtime/commit/f4430a4ba762ef82841ff7a8c340ed8854b2bca9)
Compare | [46b72c7c81592b429e062bacebe8d39f17362333](https://github.com/dotnet/runtime/commit/46b72c7c81592b429e062bacebe8d39f17362333)
Diff | [Diff](https://github.com/dotnet/runtime/compare/f4430a4ba762ef82841ff7a8c340ed8854b2bca9...46b72c7c81592b429e062bacebe8d39f17362333)
Configs | CompilationMode:wasm, RunKind:micro

### Improvements in System.MathBenchmarks.Double

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

  • [ScaleB - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 85.77 μs | 25.24 μs | 0.29 | 0.56 | False | | |
|
  • [Atanh - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 137.94 μs | 79.48 μs | 0.58 | 0.23 | False | | |
|
  • [Asinh - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 138.50 μs | 82.75 μs | 0.60 | 0.06 | False | | |
|
  • [Round - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 77.40 μs | 49.62 μs | 0.64 | 0.06 | False | | |
|
  • [CopySign - Duration of single invocation]()
  • 📝 - [Benchmark Source]()
  • [ADX - Test Multi Config Graph]()
| 59.67 μs | 39.41 μs | 0.66 | 0.00 | False | | |

![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.MathBenchmarks.Double*'
```

### System.MathBenchmarks.Double.ScaleB

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Double.Atanh

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Double.Asinh

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Double.Round

#### ETL Files

#### Histogram

#### JIT Disasms

### System.MathBenchmarks.Double.CopySign

#### 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 sources under src/benchmarks/micro/runtime/Math/Functions/Single/ and compare the baseline and compare commits for the wasm microbenchmark run. The issue provides performance measurements but no requested code change or completion criterion, so clarify the expected follow-up before attempting implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
wasm
Domain
performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.