Skip to content

[Perf] Linux/x64: 103 Improvements on 6/3/2025 10:54:35 PM +00:00 #57143

@performanceautofiler

Description

@performanceautofiler

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 6ab0311319cc7c975ac7ed1b84df809e881dfb13
Compare f34ec2bc4c3a16b647fd4fc0016aca4f62479e5a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Collections.CreateAddAndClear<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.48 μs 3.13 μs 0.90 0.09 False
7.65 μs 6.74 μs 0.88 0.30 False
1.42 μs 1.31 μs 0.92 0.23 False
7.17 μs 6.62 μs 0.92 0.11 False

graph
graph
graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CreateAddAndClear&lt;String&gt;*'

System.Collections.CreateAddAndClear<String>.ImmutableStack(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.CreateAddAndClear<String>.LinkedList(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.CreateAddAndClear<String>.Array(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.CreateAddAndClear<String>.ImmutableQueue(Size: 512)

ETL Files

Histogram

JIT Disasms

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 6ab0311319cc7c975ac7ed1b84df809e881dfb13
Compare f34ec2bc4c3a16b647fd4fc0016aca4f62479e5a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Text.RegularExpressions.Tests.Perf_Regex_Common

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
89.22 ns 82.30 ns 0.92 0.06 False

graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.RegularExpressions.Tests.Perf_Regex_Common*'

System.Text.RegularExpressions.Tests.Perf_Regex_Common.Backtracking(Options: Compiled)

ETL Files

Histogram

JIT Disasms

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 6ab0311319cc7c975ac7ed1b84df809e881dfb13
Compare f34ec2bc4c3a16b647fd4fc0016aca4f62479e5a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Linq.Tests.Perf_Enumerable

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
82.38 ns 75.04 ns 0.91 0.02 False
53.08 ns 44.24 ns 0.83 0.04 False
2.65 μs 2.36 μs 0.89 0.06 False
2.45 μs 2.12 μs 0.87 0.08 False
32.62 ns 28.82 ns 0.88 0.02 False
37.94 ns 33.06 ns 0.87 0.03 False
122.09 ns 82.14 ns 0.67 0.02 False
164.96 ns 110.83 ns 0.67 0.06 False
56.64 ns 45.23 ns 0.80 0.06 False
21.08 ns 13.32 ns 0.63 0.18 False
161.48 ns 148.59 ns 0.92 0.02 False
5.49 ns 2.88 ns 0.52 0.03 False
47.40 ns 43.07 ns 0.91 0.03 False
363.04 ns 317.30 ns 0.87 0.06 False
13.67 ns 3.64 ns 0.27 0.05 False
42.17 ns 37.45 ns 0.89 0.00 False
2.64 μs 2.31 μs 0.87 0.11 False
10.33 ns 5.10 ns 0.49 0.29 False
83.64 ns 75.52 ns 0.90 0.02 False
15.63 ns 11.25 ns 0.72 0.09 False
161.38 ns 110.56 ns 0.69 0.06 False
87.31 ns 73.16 ns 0.84 0.04 False
160.03 ns 148.42 ns 0.93 0.01 False
271.78 ns 240.30 ns 0.88 0.29 False

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

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Linq.Tests.Perf_Enumerable*'

System.Linq.Tests.Perf_Enumerable.SelectToList(input: Array)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.WhereAny_LastElementMatches(input: Array)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.AppendPrepend(input: IEnumerable)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.Prepend(input: IEnumerable)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.ToArray(input: ICollection)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.ToList(input: ICollection)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.SelectToList(input: Range)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.WhereSingle_LastElementMatches(input: Array)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.WhereAny_LastElementMatches(input: List)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.WhereLast_LastElementMatches(input: List)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.WhereAny_LastElementMatches(input: IEnumerable)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.LastWithPredicate_FirstElementMatches(input: IList)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.WhereFirst_LastElementMatches(input: Array)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.WhereSelect(input: List)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.SequenceEqual(input1: Array, input2: Array)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.SingleWithPredicate_FirstElementMatches(input: List)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.Append(input: IEnumerable)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.EmptyTakeSelectToArray

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.SelectToList(input: List)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.WhereLast_LastElementMatches(input: Array)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.WhereSingleOrDefault_LastElementMatches(input: Array)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.SelectToArray(input: Range)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.WhereFirst_LastElementMatches(input: IEnumerable)

ETL Files

Histogram

JIT Disasms

System.Linq.Tests.Perf_Enumerable.SkipHalfTakeHalf(input: IEnumerable)

ETL Files

Histogram

JIT Disasms

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 6ab0311319cc7c975ac7ed1b84df809e881dfb13
Compare f34ec2bc4c3a16b647fd4fc0016aca4f62479e5a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in PerfLabTests.CastingPerf

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
230.36 μs 198.75 μs 0.86 0.02 False
231.51 μs 199.44 μs 0.86 0.03 False

graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'PerfLabTests.CastingPerf*'

PerfLabTests.CastingPerf.ObjrefValueTypeObj

ETL Files

Histogram

JIT Disasms

PerfLabTests.CastingPerf.ScalarValueTypeObj

ETL Files

Histogram

JIT Disasms

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository


Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline 6ab0311319cc7c975ac7ed1b84df809e881dfb13
Compare f34ec2bc4c3a16b647fd4fc0016aca4f62479e5a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Collections.CtorFromCollection<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
7.43 μs 6.89 μs 0.93 0.03 False
3.15 μs 2.84 μs 0.90 0.09 False
3.05 μs 2.48 μs 0.81 0.15 False
2.94 μs 2.40 μs 0.81 0.21 False

graph
graph
graph
graph
Test Report

Repro

General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md

git clone https://github.com/dotnet/performance.git
python3 .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Collections.CtorFromCollection&lt;Int32&gt;*'

System.Collections.CtorFromCollection<Int32>.SortedDictionaryDeepCopy(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.CtorFromCollection<Int32>.ImmutableQueue(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.CtorFromCollection<Int32>.ConcurrentStack(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.CtorFromCollection<Int32>.ImmutableStack(Size: 512)

ETL Files

Histogram

JIT Disasms

Docs

Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions