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

System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity has regressed on x86 #67854

Open
adamsitnik opened this issue Apr 11, 2022 · 4 comments
Assignees
Labels
arch-x86 area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI os-windows tenet-performance Performance related issue
Milestone

Comments

@adamsitnik
Copy link
Member

adamsitnik commented Apr 11, 2022

System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity has regressed a lot on x86.

Reporting System:

image

Looking at the commit diff it's most likely caused by #66618 (cc @AndyAyersMS )

Repro:

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_monthly.py net7.0-preview2 net7.0-preview3 --filter System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity --architecture x86

System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity(length: 100000)

Result Ratio Operating System Bit Processor Name
Same 0.97 Windows 11 X64 AMD Ryzen Threadripper PRO 3945WX 12-Cores
Same 1.00 Windows 11 X64 Intel Core i7-8700 CPU 3.20GHz (Coffee Lake)
Same 1.00 Windows 11 X64 Intel Core i9-9900T CPU 2.10GHz
Same 0.97 alpine 3.13 X64 Intel Core i7-7700 CPU 3.60GHz (Kaby Lake)
Same 1.00 centos 7 X64 Intel Xeon CPU E5530 2.40GHz
Same 0.96 debian 11 X64 Intel Core i7-7700 CPU 3.60GHz (Kaby Lake)
Same 0.95 ubuntu 18.04 X64 Intel Xeon CPU E5-1650 v4 3.60GHz
Same 0.93 ubuntu 18.04 X64 Intel Core i7-2720QM CPU 2.20GHz (Sandy Bridge)
Same 0.96 alpine 3.12 Arm64 Unknown processor
Same 0.96 ubuntu 18.04 Arm64 Unknown processor
Slower 0.79 Windows 10 Arm64 Microsoft SQ1 3.0 GHz
Same 0.92 Windows 11 Arm64 Microsoft SQ1 3.0 GHz
Slower 0.55 Windows 10 X86 Intel Xeon CPU E5-1650 v4 3.60GHz
Same 1.00 Windows 11 X86 AMD Ryzen Threadripper PRO 3945WX 12-Cores
Slower 0.14 Windows 11 X86 Intel Core i7-10510U CPU 1.80GHz
Slower 0.56 Windows 7 SP1 X86 Intel Core i7-7700 CPU 3.60GHz (Kaby Lake)
Same 1.01 ubuntu 18.04 Arm ARMv7 Processor rev 3 (v7l)
Faster 1.45 Windows 10 Arm Microsoft SQ1 3.0 GHz
Same 0.97 macOS Monterey 12.2.1 X64 Intel Core i7-5557U CPU 3.10GHz (Broadwell)
Same 0.99 macOS Monterey 12.3.1 X64 Intel Core i7-4870HQ CPU 2.50GHz (Haswell)

category:performance
theme:benchmarks
skill-level:beginner
cost:small
impact:small

@adamsitnik adamsitnik added arch-x86 os-windows tenet-performance Performance related issue area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI labels Apr 11, 2022
@dotnet-issue-labeler dotnet-issue-labeler bot added the untriaged New issue has not been triaged by the area owner label Apr 11, 2022
@ghost
Copy link

ghost commented Apr 11, 2022

Tagging subscribers to this area: @JulieLeeMSFT
See info in area-owners.md if you want to be subscribed.

Issue Details

System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity has regressed a lot on x86.

Reporting System:

image

Looking at the commit diff it's most likely caused by #66618 (cc @AndyAyersMS )

Repro:

git clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_monthly.py net7.0-preview2 net7.0-preview3 --filter System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity --architecture x86

System.Text.Tests.Perf_StringBuilder.Append_Char_Capacity(length: 100000)

Result Ratio Operating System Bit Processor Name
Same 0.97 Windows 11 X64 AMD Ryzen Threadripper PRO 3945WX 12-Cores
Same 1.00 Windows 11 X64 Intel Core i7-8700 CPU 3.20GHz (Coffee Lake)
Same 1.00 Windows 11 X64 Intel Core i9-9900T CPU 2.10GHz
Same 0.97 alpine 3.13 X64 Intel Core i7-7700 CPU 3.60GHz (Kaby Lake)
Same 1.00 centos 7 X64 Intel Xeon CPU E5530 2.40GHz
Same 0.96 debian 11 X64 Intel Core i7-7700 CPU 3.60GHz (Kaby Lake)
Same 0.95 ubuntu 18.04 X64 Intel Xeon CPU E5-1650 v4 3.60GHz
Same 0.93 ubuntu 18.04 X64 Intel Core i7-2720QM CPU 2.20GHz (Sandy Bridge)
Same 0.96 alpine 3.12 Arm64 Unknown processor
Same 0.96 ubuntu 18.04 Arm64 Unknown processor
Slower 0.79 Windows 10 Arm64 Microsoft SQ1 3.0 GHz
Same 0.92 Windows 11 Arm64 Microsoft SQ1 3.0 GHz
Slower 0.55 Windows 10 X86 Intel Xeon CPU E5-1650 v4 3.60GHz
Same 1.00 Windows 11 X86 AMD Ryzen Threadripper PRO 3945WX 12-Cores
Slower 0.14 Windows 11 X86 Intel Core i7-10510U CPU 1.80GHz
Slower 0.56 Windows 7 SP1 X86 Intel Core i7-7700 CPU 3.60GHz (Kaby Lake)
Same 1.01 ubuntu 18.04 Arm ARMv7 Processor rev 3 (v7l)
Faster 1.45 Windows 10 Arm Microsoft SQ1 3.0 GHz
Same 0.97 macOS Monterey 12.2.1 X64 Intel Core i7-5557U CPU 3.10GHz (Broadwell)
Same 0.99 macOS Monterey 12.3.1 X64 Intel Core i7-4870HQ CPU 2.50GHz (Haswell)
Author: adamsitnik
Assignees: -
Labels:

arch-x86, os-windows, tenet-performance, area-CodeGen-coreclr

Milestone: -

@EgorBo
Copy link
Member

EgorBo commented Apr 11, 2022

I bet it's inlining related

@JulieLeeMSFT JulieLeeMSFT added this to the 7.0.0 milestone Apr 11, 2022
@JulieLeeMSFT
Copy link
Member

I bet it's inlining related

Assinged to you, @EgorBo. :)

@JulieLeeMSFT JulieLeeMSFT removed the untriaged New issue has not been triaged by the area owner label Apr 11, 2022
@EgorBo
Copy link
Member

EgorBo commented Jun 21, 2022

Moving to 8.0 as 32bit regressions are low priority

@EgorBo EgorBo modified the milestones: 7.0.0, 8.0.0 Jun 21, 2022
@EgorBo EgorBo modified the milestones: 8.0.0, Future Mar 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arch-x86 area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI os-windows tenet-performance Performance related issue
Projects
None yet
Development

No branches or pull requests

3 participants