Skip to content

[Perf] Windows/x64: 31 Improvements on 7/9/2024 1:59:56 PM #38332

Closed
@performanceautofiler

Description

@performanceautofiler

Run Information

Name Value
Architecture x64
OS Windows 10.0.22631
Queue ViperWindows
Baseline 13cf2649ad245ede1ed6e790079955db4c2fea54
Compare 5795e8c056c14741b80dfa304a974f5c0d72432a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Memory.ReadOnlySpan

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
6.23 ns 0.81 ns 0.13 0.38 False
6.23 ns 1.63 ns 0.26 0.20 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Memory.ReadOnlySpan*'

System.Memory.ReadOnlySpan.Trim(input: "")

ETL Files

Histogram

JIT Disasms

System.Memory.ReadOnlySpan.Trim(input: "abcdefg")

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 Windows 10.0.22631
Queue ViperWindows
Baseline 13cf2649ad245ede1ed6e790079955db4c2fea54
Compare 5795e8c056c14741b80dfa304a974f5c0d72432a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Tests.Perf_Int128

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
7.91 ns 1.35 ns 0.17 0.01 True
15.74 ns 11.92 ns 0.76 0.44 False
15.93 ns 11.61 ns 0.73 0.42 False
17.45 ns 12.47 ns 0.71 0.49 False
17.07 ns 11.91 ns 0.70 0.52 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

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

System.Tests.Perf_Int128.CopySign(value: 1, sign: -1)

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Int128.TryParse(value: "12345")

ETL Files

Histogram

JIT Disasms

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

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Int128.ParseSpan(value: "12345")

ETL Files

Histogram

JIT Disasms

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

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 Windows 10.0.22631
Queue ViperWindows
Baseline 13cf2649ad245ede1ed6e790079955db4c2fea54
Compare 5795e8c056c14741b80dfa304a974f5c0d72432a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Buffers.Tests.ReadOnlySequenceTests<Char>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
9.42 ns 5.86 ns 0.62 0.03 False
37.23 ns 31.22 ns 0.84 0.12 False
9.42 ns 5.06 ns 0.54 0.02 True
10.59 ns 5.69 ns 0.54 0.55 True
21.58 ns 11.84 ns 0.55 0.23 False
9.36 ns 5.64 ns 0.60 0.05 True
23.73 ns 14.88 ns 0.63 0.44 False
36.91 ns 22.68 ns 0.61 0.17 False
10.33 ns 5.78 ns 0.56 0.01 True
51.89 ns 37.17 ns 0.72 0.15 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

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Buffers.Tests.ReadOnlySequenceTests&lt;Char&gt;*'

System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstSpanSingleSegment

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateGetPositionMemory

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstSpanArray

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateForEachArray

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateGetPositionArray

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstSpanTenSegments

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateForEachSingleSegment

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateGetPositionSingleSegment

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Char>.FirstSpanMemory

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Char>.IterateForEachTenSegments

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 Windows 10.0.22631
Queue ViperWindows
Baseline 13cf2649ad245ede1ed6e790079955db4c2fea54
Compare 5795e8c056c14741b80dfa304a974f5c0d72432a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

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

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
9.83 ns 4.74 ns 0.48 0.01 True
39.71 ns 34.24 ns 0.86 0.22 False
10.23 ns 3.96 ns 0.39 0.02 True
22.13 ns 12.18 ns 0.55 0.21 False
36.53 ns 22.77 ns 0.62 0.12 False
10.24 ns 3.90 ns 0.38 0.03 True
10.54 ns 5.50 ns 0.52 0.01 True

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.Buffers.Tests.ReadOnlySequenceTests&lt;Byte&gt;*'

System.Buffers.Tests.ReadOnlySequenceTests<Byte>.FirstSpanArray

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Byte>.IterateGetPositionMemory

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Byte>.FirstSpanSingleSegment

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Byte>.IterateGetPositionArray

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Byte>.IterateGetPositionSingleSegment

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Byte>.FirstSpanTenSegments

ETL Files

Histogram

JIT Disasms

System.Buffers.Tests.ReadOnlySequenceTests<Byte>.FirstSpanMemory

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 Windows 10.0.22631
Queue ViperWindows
Baseline 13cf2649ad245ede1ed6e790079955db4c2fea54
Compare 5795e8c056c14741b80dfa304a974f5c0d72432a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Tests.Perf_Guid

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
24.58 ns 23.03 ns 0.94 0.08 False
34.75 ns 22.37 ns 0.64 0.07 False
24.41 ns 22.30 ns 0.91 0.09 False

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_Guid*'

System.Tests.Perf_Guid.ctor_str

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Guid.ParseExactD

ETL Files

Histogram

JIT Disasms

System.Tests.Perf_Guid.Parse

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 Windows 10.0.22631
Queue ViperWindows
Baseline 13cf2649ad245ede1ed6e790079955db4c2fea54
Compare 5795e8c056c14741b80dfa304a974f5c0d72432a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Collections.IterateForEach<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
805.22 ns 345.50 ns 0.43 0.01 True
932.64 ns 560.46 ns 0.60 0.00 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.Collections.IterateForEach&lt;Int32&gt;*'

System.Collections.IterateForEach<Int32>.FrozenSet(Size: 512)

ETL Files

Histogram

JIT Disasms

System.Collections.IterateForEach<Int32>.FrozenDictionary(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 Windows 10.0.22631
Queue ViperWindows
Baseline 13cf2649ad245ede1ed6e790079955db4c2fea54
Compare 5795e8c056c14741b80dfa304a974f5c0d72432a
Diff Diff
Configs CompilationMode:tiered, RunKind:micro

Improvements in System.Numerics.Tests.Perf_BigInteger

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
11.53 ns 4.88 ns 0.42 0.46 False
10.37 ns 4.88 ns 0.47 0.51 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
py .\performance\scripts\benchmarks_ci.py -f net8.0 --filter 'System.Numerics.Tests.Perf_BigInteger*'

System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 16,16 bits)

ETL Files

Histogram

JIT Disasms

System.Numerics.Tests.Perf_BigInteger.Multiply(arguments: 16,8 bits)

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