KEMBAR78
[Perf] Linux/arm64: 73 Improvements on 3/14/2024 8:52:16 AM · Issue #31629 · dotnet/perf-autofiling-issues · GitHub
Skip to content

[Perf] Linux/arm64: 73 Improvements on 3/14/2024 8:52:16 AM #31629

@performanceautofiler

Description

@performanceautofiler

Run Information

Name Value
Architecture arm64
OS ubuntu 22.04
Queue AmpereUbuntu
Baseline d36beb7b0a3936d18062ca89572d49590fdd445a
Compare f529d5d2323e8ad0f485b660b392f4459de24fbe
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in LinqBenchmarks

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.12 secs 2.84 secs 0.91 0.02 False
3.15 secs 2.87 secs 0.91 0.01 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 'LinqBenchmarks*'

LinqBenchmarks.CountBy00LinqMethodX

ETL Files

Histogram

JIT Disasms

LinqBenchmarks.CountBy00AggregateByX

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture arm64
OS ubuntu 22.04
Queue AmpereUbuntu
Baseline d36beb7b0a3936d18062ca89572d49590fdd445a
Compare f529d5d2323e8ad0f485b660b392f4459de24fbe
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Memory.Constructors<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
8.98 ns 4.25 ns 0.47 0.28 True
2.93 ns 0.63 ns 0.21 0.36 True
10.40 ns 4.29 ns 0.41 0.37 True
4.15 ns 2.35 ns 0.57 0.30 False
2.53 ns 0.65 ns 0.26 0.27 True
2.49 ns 0.52 ns 0.21 0.31 True
2.55 ns 0.62 ns 0.24 0.24 True
4.19 ns 2.27 ns 0.54 0.25 True
9.23 ns 7.95 ns 0.86 0.51 False
7.69 ns 3.30 ns 0.43 0.18 True
4.25 ns 3.23 ns 0.76 0.22 False
7.25 ns 3.14 ns 0.43 0.25 True

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.Memory.Constructors&lt;String&gt;*'

System.Memory.Constructors<String>.ArrayAsSpan

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.ReadOnlySpanImplicitCastFromSpan

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.ArrayAsSpanStartLength

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.ReadOnlySpanFromMemory

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.MemoryMarshalCreateReadOnlySpan

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.MemoryMarshalCreateSpan

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.ReadOnlySpanImplicitCastFromArray

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.SpanFromMemory

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.ArrayAsMemoryStartLength

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.SpanFromArrayStartLength

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.SpanImplicitCastFromArray

ETL Files

Histogram

JIT Disasms

System.Memory.Constructors<String>.SpanFromArray

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture arm64
OS ubuntu 22.04
Queue AmpereUbuntu
Baseline d36beb7b0a3936d18062ca89572d49590fdd445a
Compare f529d5d2323e8ad0f485b660b392f4459de24fbe
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Collections.IterateForEach<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
2.08 μs 1.56 μs 0.75 0.05 True
50.64 μs 35.73 μs 0.71 0.56 False
2.41 μs 1.36 μs 0.56 0.59 False
20.40 μs 13.55 μs 0.66 0.33 True
59.92 μs 28.68 μs 0.48 0.55 True
1.90 μs 821.68 ns 0.43 0.08 True
11.66 μs 9.72 μs 0.83 0.03 True
2.92 μs 1.84 μs 0.63 0.01 True
2.64 μs 1.71 μs 0.65 0.03 False
25.07 μs 14.65 μs 0.58 0.27 True
7.49 μs 6.29 μs 0.84 0.08 False
24.62 μs 14.72 μs 0.60 0.35 True
433.11 ns 374.28 ns 0.86 0.01 True
4.13 μs 1.45 μs 0.35 0.47 False

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.Collections.IterateForEach&lt;String&gt;*'

System.Collections.IterateForEach<String>.FrozenDictionary(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.ImmutableHashSet(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.List(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.ImmutableList(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.ImmutableDictionary(Size: 512)

ETL Files

Histogram

JIT Disasms

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

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.SortedDictionary(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.Queue(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.Stack(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.ImmutableSortedDictionary(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.SortedSet(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.ImmutableSortedSet(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.ImmutableArray(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<String>.Dictionary(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 arm64
OS ubuntu 22.04
Queue AmpereUbuntu
Baseline d36beb7b0a3936d18062ca89572d49590fdd445a
Compare f529d5d2323e8ad0f485b660b392f4459de24fbe
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Text.Json.Node.Tests.Perf_ParseThenWrite

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
5.13 μs 4.60 μs 0.90 0.28 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.Json.Node.Tests.Perf_ParseThenWrite*'

System.Text.Json.Node.Tests.Perf_ParseThenWrite.ParseThenWrite(IsDataIndented: False, TestCase: Json400B)

ETL Files

Histogram

JIT Disasms

Docs

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


Run Information

Name Value
Architecture arm64
OS ubuntu 22.04
Queue AmpereUbuntu
Baseline d36beb7b0a3936d18062ca89572d49590fdd445a
Compare f529d5d2323e8ad0f485b660b392f4459de24fbe
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Collections.Perf_LengthBucketsFrozenDictionary

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
454.26 ns 394.27 ns 0.87 0.22 False
441.87 ns 396.96 ns 0.90 0.33 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 'System.Collections.Perf_LengthBucketsFrozenDictionary*'

System.Collections.Perf_LengthBucketsFrozenDictionary.ToFrozenDictionary(Count: 10, ItemsPerBucket: 5)

ETL Files

Histogram

JIT Disasms

System.Collections.Perf_LengthBucketsFrozenDictionary.ToFrozenDictionary(Count: 10, ItemsPerBucket: 1)

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