Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Perf] Linux/x64: 19 Regressions on 1/19/2024 7:45:16 PM #27753

Open
performanceautofiler bot opened this issue Jan 23, 2024 · 3 comments
Open

[Perf] Linux/x64: 19 Regressions on 1/19/2024 7:45:16 PM #27753

performanceautofiler bot opened this issue Jan 23, 2024 · 3 comments
Labels
arch-wasm arch-x64 branch-refs/heads/main kind-micro os-linux perf-regression PGO Applied if there were any profile guided optimization updates in the observed interval. untriaged

Comments

@performanceautofiler
Copy link

performanceautofiler bot commented Jan 23, 2024

Run Information

Name Value
Architecture x64
OS ubuntu 22.04
Queue TigerUbuntu
Baseline f6824bc9e8c68d3edb3d0a4c91e9bacd73d7767f
Compare ca1b161e3c987bc2c14f695bffce3bb391b8aaa0
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Globalization.Tests.StringSearch

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
13.02 μs 14.19 μs 1.09 0.08 False
8.69 μs 9.36 μs 1.08 0.07 False
4.95 μs 5.39 μs 1.09 0.15 False
8.67 μs 9.64 μs 1.11 0.06 False
22.79 μs 24.10 μs 1.06 0.04 False
37.53 μs 39.60 μs 1.06 0.09 False
8.68 μs 9.47 μs 1.09 0.05 False
8.66 μs 9.51 μs 1.10 0.08 False
4.97 μs 5.42 μs 1.09 0.11 False
4.97 μs 5.45 μs 1.10 0.13 False
4.90 μs 5.44 μs 1.11 0.11 False
4.98 μs 5.41 μs 1.09 0.13 False
12.98 μs 13.67 μs 1.05 0.06 False

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.Globalization.Tests.StringSearch*'

Payloads

Baseline
Compare

System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (en-US, None, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (, IgnoreCase, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (, IgnoreCase, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, None, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, IgnoreSymbols, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_DifferentFirstChar(Options: (en-US, IgnoreSymbols, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (, None, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, IgnoreCase, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (, None, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (en-US, None, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (pl-PL, None, False))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (en-US, IgnoreCase, True))

ETL Files

Histogram

JIT Disasms

System.Globalization.Tests.StringSearch.IndexOf_Word_NotFound(Options: (pl-PL, None, False))

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 f6824bc9e8c68d3edb3d0a4c91e9bacd73d7767f
Compare ca1b161e3c987bc2c14f695bffce3bb391b8aaa0
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Numerics.Tests.Perf_VectorOf<Byte>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
28.09 ns 31.51 ns 1.12 0.26 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.Numerics.Tests.Perf_VectorOf&lt;Byte&gt;*'

Payloads

Baseline
Compare

System.Numerics.Tests.Perf_VectorOf<Byte>.MultiplyOperatorBenchmark

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 f6824bc9e8c68d3edb3d0a4c91e9bacd73d7767f
Compare ca1b161e3c987bc2c14f695bffce3bb391b8aaa0
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.CreateAddAndClear<Int32>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.92 μs 5.59 μs 1.14 0.23 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.Collections.CreateAddAndClear&lt;Int32&gt;*'

Payloads

Baseline
Compare

System.Collections.CreateAddAndClear<Int32>.Span(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 f6824bc9e8c68d3edb3d0a4c91e9bacd73d7767f
Compare ca1b161e3c987bc2c14f695bffce3bb391b8aaa0
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in PerfLabTests.CastingPerf2.CastingPerf

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
4.72 ms 5.01 ms 1.06 0.14 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 'PerfLabTests.CastingPerf2.CastingPerf*'

Payloads

Baseline
Compare

PerfLabTests.CastingPerf2.CastingPerf.ObjInt

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 f6824bc9e8c68d3edb3d0a4c91e9bacd73d7767f
Compare ca1b161e3c987bc2c14f695bffce3bb391b8aaa0
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in PerfLabTests.LowLevelPerf

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
15.52 ms 17.29 ms 1.11 0.08 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 'PerfLabTests.LowLevelPerf*'

Payloads

Baseline
Compare

PerfLabTests.LowLevelPerf.NewDelegateClassEmptyStaticFn

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 f6824bc9e8c68d3edb3d0a4c91e9bacd73d7767f
Compare ca1b161e3c987bc2c14f695bffce3bb391b8aaa0
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in Microsoft.Extensions.DependencyInjection.GetService

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
61.76 ns 67.20 ns 1.09 0.20 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 'Microsoft.Extensions.DependencyInjection.GetService*'

Payloads

Baseline
Compare

Microsoft.Extensions.DependencyInjection.GetService.NoDI

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 f6824bc9e8c68d3edb3d0a4c91e9bacd73d7767f
Compare ca1b161e3c987bc2c14f695bffce3bb391b8aaa0
Diff Diff
Configs CompilationMode:wasm, RunKind:micro

Regressions in System.Collections.IndexerSet<String>

Benchmark Baseline Test Test/Base Test Quality Edge Detector Baseline IR Compare IR IR Ratio
6.21 μs 6.78 μs 1.09 0.09 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.Collections.IndexerSet&lt;String&gt;*'

Payloads

Baseline
Compare

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

ETL Files

Histogram

JIT Disasms

Docs

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

@radekdoulik
Copy link
Member

range is dotnet/runtime@8c73f0f...b4488ec

@pavelsavara could that be caused by dotnet/runtime#96841?

@pavelsavara
Copy link
Member

@pavelsavara could that be caused by dotnet/runtime#96841?

Only as a side effect. There are other changes like Microsoft.NETCore.Runtime.ICU.Transport update

@pavelsavara pavelsavara removed their assignment Jan 25, 2024
@radekdoulik
Copy link
Member

the perf is now back to values before regression, same as in #27912. not sure yet, what was the issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arch-wasm arch-x64 branch-refs/heads/main kind-micro os-linux perf-regression PGO Applied if there were any profile guided optimization updates in the observed interval. untriaged
Projects
None yet
Development

No branches or pull requests

2 participants