Skip to content

[Perf] Windows/arm64: 38 Improvements on 6/13/2024 3:54:31 AM #36634

Closed
@performanceautofiler

Description

@performanceautofiler

Run Information

Name Value
Architecture arm64
OS Windows 10.0.22621
Queue SurfaceWindows
Baseline c95d3b8ae6cd75c5e82026c08ccfe03c3b8d0efa
Compare d7ae8c61f0937df4dcffe88ba96eae65fa523a78
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Tests.Perf_Int32

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
14.33 ns 12.50 ns 0.87 0.03 True
22.00 ns 19.34 ns 0.88 0.05 True
14.19 ns 12.38 ns 0.87 0.01 True
25.03 ns 23.52 ns 0.94 0.01 False
21.76 ns 18.59 ns 0.85 0.04 True
6.83 ns 5.50 ns 0.80 0.08 False
22.04 ns 19.53 ns 0.89 0.01 True
9.63 ns 7.98 ns 0.83 0.01 True

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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Int32*'

System.Tests.Perf_Int32.TryParseSpan(value: "12345")

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Int32.ParseSpan(value: "-2147483648")

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Int32.Parse(value: "12345")

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Int32.ToString(value: -2147483648)

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Int32.TryFormat(value: -2147483648)

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Int32.TryFormat(value: 4)

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Int32.TryParseSpan(value: "-2147483648")

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Int32.TryParse(value: "4")

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline 29f3110fc971c8cc48f18956d347e58c54bd0639
Compare d9a66070026c9133fade4e61a60d00aec170bfc4
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Tests.Perf_SByte

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
14.41 ns 12.34 ns 0.86 0.01 True

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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_SByte*'

System.Tests.Perf_SByte.TryParse(value: "-128")

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline c95d3b8ae6cd75c5e82026c08ccfe03c3b8d0efa
Compare d7ae8c61f0937df4dcffe88ba96eae65fa523a78
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in Microsoft.Extensions.Logging.LoggingOverhead

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
57.17 ns 48.51 ns 0.85 0.42 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'Microsoft.Extensions.Logging.LoggingOverhead*'

Microsoft.Extensions.Logging.LoggingOverhead.TwoArguments_DefineMessage

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline c95d3b8ae6cd75c5e82026c08ccfe03c3b8d0efa
Compare d7ae8c61f0937df4dcffe88ba96eae65fa523a78
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Buffers.Tests.NonStandardArrayPoolTests<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
19.61 ns 13.25 ns 0.68 0.23 True

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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Buffers.Tests.NonStandardArrayPoolTests&lt;Byte&gt;*'

System.Buffers.Tests.NonStandardArrayPoolTests<Byte>.RentNoReturn(RentalSize: 64, UseSharedPool: True)

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline 29f3110fc971c8cc48f18956d347e58c54bd0639
Compare d2dbdd0bbbcb16cc53708a089e1b0388a57a5768
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Globalization.Tests.Perf_CultureInfo

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
3.48 ns 2.41 ns 0.69 0.52 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Globalization.Tests.Perf_CultureInfo*'

System.Globalization.Tests.Perf_CultureInfo.GetCurrentCulture

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline c95d3b8ae6cd75c5e82026c08ccfe03c3b8d0efa
Compare d7ae8c61f0937df4dcffe88ba96eae65fa523a78
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Tests.Perf_Int16

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
16.91 ns 14.69 ns 0.87 0.03 True
9.47 ns 7.98 ns 0.84 0.01 True

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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Int16*'

System.Tests.Perf_Int16.Parse(value: "-32768")

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Int16.TryParse(value: "0")

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline 29f3110fc971c8cc48f18956d347e58c54bd0639
Compare d9a66070026c9133fade4e61a60d00aec170bfc4
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
634.98 ns 586.41 ns 0.92 0.02 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ColdStartSerialization&lt;SimpleStructWithProperties&gt;*'

System.Text.Json.Serialization.Tests.ColdStartSerialization<SimpleStructWithProperties>.CachedDefaultOptions

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline 29f3110fc971c8cc48f18956d347e58c54bd0639
Compare d9a66070026c9133fade4e61a60d00aec170bfc4
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Text.Json.Serialization.Tests.ReadJson<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
294.17 ns 266.81 ns 0.91 0.01 True

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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Text.Json.Serialization.Tests.ReadJson&lt;Int32&gt;*'

System.Text.Json.Serialization.Tests.ReadJson<Int32>.DeserializeFromStream(Mode: SourceGen)

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline c95d3b8ae6cd75c5e82026c08ccfe03c3b8d0efa
Compare d7ae8c61f0937df4dcffe88ba96eae65fa523a78
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Buffers.Tests.RentReturnArrayPoolTests<Object>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
670.84 ns 561.29 ns 0.84 0.19 True
1.06 μs 853.86 ns 0.81 0.08 True
731.93 ns 427.67 ns 0.58 0.77 False
1.12 μs 963.00 ns 0.86 0.68 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Buffers.Tests.RentReturnArrayPoolTests&lt;Object&gt;*'

System.Buffers.Tests.RentReturnArrayPoolTests<Object>.MultipleSerial(RentalSize: 4096, ManipulateArray: False, Async: False, UseSharedPool: True)

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.RentReturnArrayPoolTests<Object>.MultipleSerial(RentalSize: 4096, ManipulateArray: False, Async: True, UseSharedPool: True)

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.RentReturnArrayPoolTests<Object>.SingleSerial(RentalSize: 4096, ManipulateArray: False, Async: True, UseSharedPool: False)

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.RentReturnArrayPoolTests<Object>.ProducerConsumer(RentalSize: 4096, ManipulateArray: False, Async: True, UseSharedPool: False)

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline 0686ce61ed1e1cb3cb420281a0154efa5d0d00d5
Compare d9a66070026c9133fade4e61a60d00aec170bfc4
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Buffers.Tests.RentReturnArrayPoolTests<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
708.06 ns 557.33 ns 0.79 0.13 True
1.03 μs 878.49 ns 0.85 0.15 False
79.30 ns 47.02 ns 0.59 0.02 True

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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Buffers.Tests.RentReturnArrayPoolTests&lt;Byte&gt;*'

System.Buffers.Tests.RentReturnArrayPoolTests<Byte>.MultipleSerial(RentalSize: 4096, ManipulateArray: False, Async: False, UseSharedPool: True)

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.RentReturnArrayPoolTests<Byte>.MultipleSerial(RentalSize: 4096, ManipulateArray: False, Async: True, UseSharedPool: True)

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.RentReturnArrayPoolTests<Byte>.SingleParallel(RentalSize: 4096, ManipulateArray: False, Async: False, UseSharedPool: True)

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline 29f3110fc971c8cc48f18956d347e58c54bd0639
Compare d9a66070026c9133fade4e61a60d00aec170bfc4
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Tests.Perf_Byte

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
12.58 ns 11.03 ns 0.88 0.01 True

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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Tests.Perf_Byte*'

System.Tests.Perf_Byte.TryParse(value: "255")

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 Windows 10.0.22621
Queue SurfaceWindows
Baseline c95d3b8ae6cd75c5e82026c08ccfe03c3b8d0efa
Compare d7ae8c61f0937df4dcffe88ba96eae65fa523a78
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
305.32 ns 271.47 ns 0.89 0.01 True

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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'MicroBenchmarks.Serializers.Json_ToStream&lt;LoginViewModel&gt;*'

MicroBenchmarks.Serializers.Json_ToStream<LoginViewModel>.SystemTextJson_SourceGen_

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