public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "jamborm at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug target/99083] New: Big run-time regressions of 519.lbm_r with LTO Date: Fri, 12 Feb 2021 23:32:35 +0000 [thread overview] Message-ID: <bug-99083-4@http.gcc.gnu.org/bugzilla/> (raw) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99083 Bug ID: 99083 Summary: Big run-time regressions of 519.lbm_r with LTO Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: jamborm at gcc dot gnu.org CC: ubizjak at gmail dot com Blocks: 26163 Target Milestone: --- Host: x86_64-linux Target: x86_64-linux On AMD Zen2 CPUs, 519.lbm_r is 62.12% slower when built with -O2 and -flto than when not using LTO. It is also 62.12% slower than when using GCC 10 with the two options. My measurements match those from LNT on a different zen2: https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=325.477.0&plot.1=312.477.0&plot.2=349.477.0&plot.3=278.477.0&plot.4=401.477.0&plot.5=298.477.0 On the same CPU, compiling the benchmark with -Ofast -march=native -flto is slower than non-LTO, by 8.07% on Zen2 and 6.06% on Zen3. The Zen2 case has also been caught by LNT: https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=295.477.0&plot.1=293.477.0&plot.2=287.477.0&plot.3=286.477.0& I have bisected both of these regressions (on Zen2s) to: commit 4c61e35f20fe2ffeb9421dbd6f26c767a234a4a0 Author: Uros Bizjak <ubizjak@gmail.com> Date: Wed Dec 9 21:06:07 2020 +0100 i386: Remove REG_ALLOC_ORDER definition REG_ALLOC_ORDER just defines what the default is set to. 2020-12-09 Uroš Bizjak <ubizjak@gmail.com> gcc/ * config/i386/i386.h (REG_ALLOC_ORDER): Remove ...which looks like it was supposed to be a no-op, but I looked at the -O2 LTO case and the assembly generated by this commit definitely differs from the assembly produced by the previous one in instruction selection, spilling and even some scheduling. For example, I see hunks like: @@ -994,10 +996,10 @@ movapd %xmm13, %xmm9 movsd 96(%rsp), %xmm13 subsd %xmm12, %xmm9 - movsd 256(%rsp), %xmm12 + movq %rbx, %xmm12 + mulsd %xmm6, %xmm12 movsd %xmm5, 15904(%rdx) movsd 72(%rax), %xmm5 - mulsd %xmm6, %xmm12 mulsd %xmm0, %xmm9 subsd %xmm10, %xmm5 movsd 216(%rsp), %xmm10 The -Ofast native LTO assemblies also differ. Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26163 [Bug 26163] [meta-bug] missed optimization in SPEC (2k17, 2k and 2k6 and 95)
next reply other threads:[~2021-02-12 23:32 UTC|newest] Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-02-12 23:32 jamborm at gcc dot gnu.org [this message] 2021-02-13 8:53 ` [Bug target/99083] " ubizjak at gmail dot com 2021-02-15 8:20 ` marxin at gcc dot gnu.org 2021-02-15 8:22 ` rguenth at gcc dot gnu.org 2021-02-15 9:57 ` ubizjak at gmail dot com 2021-02-15 12:00 ` ubizjak at gmail dot com 2021-02-15 12:03 ` ubizjak at gmail dot com 2021-02-15 12:08 ` ubizjak at gmail dot com 2021-02-15 12:47 ` rguenth at gcc dot gnu.org 2021-02-15 13:08 ` ubizjak at gmail dot com 2021-02-15 13:11 ` jamborm at gcc dot gnu.org 2021-02-15 13:31 ` ubizjak at gmail dot com 2021-02-21 17:45 ` ubizjak at gmail dot com 2021-02-21 17:45 ` ubizjak at gmail dot com 2021-02-23 17:59 ` jamborm at gcc dot gnu.org 2021-02-25 9:50 ` ubizjak at gmail dot com 2021-04-27 11:40 ` jakub at gcc dot gnu.org 2021-07-28 7:05 ` rguenth at gcc dot gnu.org 2022-04-21 7:48 ` rguenth at gcc dot gnu.org 2023-05-29 10:04 ` jakub at gcc dot gnu.org
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-99083-4@http.gcc.gnu.org/bugzilla/ \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).