public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning
@ 2022-04-05  9:50 rguenth at gcc dot gnu.org
  2022-04-05  9:53 ` [Bug target/105157] " rguenth at gcc dot gnu.org
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-05  9:50 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

            Bug ID: 105157
           Summary: [12 Regression] compile-time regressions with generic
                    tuning
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: rguenth at gcc dot gnu.org
  Target Milestone: ---

507.cactuBSSN_r sees a 100% (-O2 -flto) or 70% (-Ofast) compile-time regression
on aarch64 recently.

https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=581.437.8
https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=585.437.8

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
@ 2022-04-05  9:53 ` rguenth at gcc dot gnu.org
  2022-04-06  8:35 ` marxin at gcc dot gnu.org
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-05  9:53 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |aarch64
                 CC|                            |marxin at gcc dot gnu.org
           Keywords|                            |compile-time-hog
   Target Milestone|---                         |12.0

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
last known good r12-7716-g0c016888ffd569, first known bad
r12-7789-g2cd0c9a5310420

I don't know how exactly the compiler is configured (CCed Martin) and thus
to what "generic tuning" would map to.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
  2022-04-05  9:53 ` [Bug target/105157] " rguenth at gcc dot gnu.org
@ 2022-04-06  8:35 ` marxin at gcc dot gnu.org
  2022-04-06 10:57 ` [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6 marxin at gcc dot gnu.org
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: marxin at gcc dot gnu.org @ 2022-04-06  8:35 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
   Last reconfirmed|                            |2022-04-06
             Status|UNCONFIRMED                 |NEW

--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
I'm going to bisect that.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
  2022-04-05  9:53 ` [Bug target/105157] " rguenth at gcc dot gnu.org
  2022-04-06  8:35 ` marxin at gcc dot gnu.org
@ 2022-04-06 10:57 ` marxin at gcc dot gnu.org
  2022-04-06 10:57 ` marxin at gcc dot gnu.org
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: marxin at gcc dot gnu.org @ 2022-04-06 10:57 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[12 Regression]             |[12 Regression]
                   |compile-time regressions    |compile-time regressions
                   |with generic tuning         |with generic tuning since
                   |                            |r12-7756-g27d8748df59fe6

--- Comment #3 from Martin Liška <marxin at gcc dot gnu.org> ---
Started with r12-7756-g27d8748df59fe6, one can see it also with
x86_64-linux-gnu cross compiler:

$ ./xg++ -B. cactu.ii -c -Ofast
$ ./xg++ -v
...
Configured with: /home/marxin/Programming/gcc2/configure
--enable-languages=c,c++ --prefix=/home/marxin/bin/gcc --disable-multilib
--disable-libsanitizer --disable-bootstrap --target=aarch64-linux-gnu
--enable-checking=release

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2022-04-06 10:57 ` [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6 marxin at gcc dot gnu.org
@ 2022-04-06 10:57 ` marxin at gcc dot gnu.org
  2022-04-06 11:05 ` marxin at gcc dot gnu.org
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: marxin at gcc dot gnu.org @ 2022-04-06 10:57 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

--- Comment #4 from Martin Liška <marxin at gcc dot gnu.org> ---
Created attachment 52760
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52760&action=edit
Test-case

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2022-04-06 10:57 ` marxin at gcc dot gnu.org
@ 2022-04-06 11:05 ` marxin at gcc dot gnu.org
  2022-04-06 11:13 ` rguenth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: marxin at gcc dot gnu.org @ 2022-04-06 11:05 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |avieira at gcc dot gnu.org,
                   |                            |tnfchris at gcc dot gnu.org

--- Comment #5 from Martin Liška <marxin at gcc dot gnu.org> ---
Good revision:

$ time ./xg++ -B. /home/marxin/Programming/testcases/cactu.ii -S -Ofast

real    0m12.084s
user    0m11.892s
sys     0m0.192s

    14.49%  cc1plus   cc1plus               [.] find_hard_regno_for_1
     5.68%  cc1plus   cc1plus               [.] find_base_term
     3.83%  cc1plus   cc1plus               [.] bitmap_clear_bit
     2.98%  cc1plus   cc1plus               [.] bitmap_set_bit
     2.57%  cc1plus   libc.so.6             [.] __memset_avx2_unaligned_erms
     2.51%  cc1plus   cc1plus               [.] build_object_conflicts
     2.47%  cc1plus   cc1plus               [.] rtx_equal_for_memref_p

Bad revision:

$ time ./xg++ -B. /home/marxin/Programming/testcases/cactu.ii -S -Ofast

real    0m17.969s
user    0m17.772s
sys     0m0.196s

    16.92%  cc1plus  cc1plus               [.] find_hard_regno_for_1
     8.67%  cc1plus  cc1plus               [.] find_base_term
     4.26%  cc1plus  cc1plus               [.] rtx_equal_for_memref_p
     3.85%  cc1plus  cc1plus               [.] memrefs_conflict_p
     2.92%  cc1plus  cc1plus               [.] find_base_term
     2.74%  cc1plus  cc1plus               [.] build_object_conflicts
     2.67%  cc1plus  cc1plus               [.] true_dependence_1

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2022-04-06 11:05 ` marxin at gcc dot gnu.org
@ 2022-04-06 11:13 ` rguenth at gcc dot gnu.org
  2022-04-06 11:21 ` tnfchris at gcc dot gnu.org
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-06 11:13 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
More to the point the cited rev. doesn't look like it should change anything
for -mtune=generic.  Maybe the "generic" config is always the last one on
aarch64 and now "demeter"?  At least there doesn't seem to be explicit
"generic" configs like on x86_64.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2022-04-06 11:13 ` rguenth at gcc dot gnu.org
@ 2022-04-06 11:21 ` tnfchris at gcc dot gnu.org
  2022-04-06 11:29 ` rguenth at gcc dot gnu.org
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: tnfchris at gcc dot gnu.org @ 2022-04-06 11:21 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

--- Comment #7 from Tamar Christina <tnfchris at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #6)
> More to the point the cited rev. doesn't look like it should change anything
> for -mtune=generic.  Maybe the "generic" config is always the last one on
> aarch64 and now "demeter"?  At least there doesn't seem to be explicit
> "generic" configs like on x86_64.

We do have an explicit generic tuning struct, the ones with generic_* in the
name e.g. generic_tunings, but as you say, this patch doesn't change it at all.

we'll take a look.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2022-04-06 11:21 ` tnfchris at gcc dot gnu.org
@ 2022-04-06 11:29 ` rguenth at gcc dot gnu.org
  2022-04-06 17:24 ` avieira at gcc dot gnu.org
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-06 11:29 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> ---
Most of the compile-time is spent in scheduling, so I think the scheduling
model was somehow exchanged.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2022-04-06 11:29 ` rguenth at gcc dot gnu.org
@ 2022-04-06 17:24 ` avieira at gcc dot gnu.org
  2022-04-08 14:15 ` cvs-commit at gcc dot gnu.org
  2022-04-08 14:16 ` avieira at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: avieira at gcc dot gnu.org @ 2022-04-06 17:24 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

--- Comment #9 from avieira at gcc dot gnu.org ---
Found the issue, it's due to the way we encode TARGET_CPU_DEFAULT in aarch64,
it is only able to support 64 cores and we have 65 now.

Testing a work around for now and we have plans to fix this properly in GCC 13.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2022-04-06 17:24 ` avieira at gcc dot gnu.org
@ 2022-04-08 14:15 ` cvs-commit at gcc dot gnu.org
  2022-04-08 14:16 ` avieira at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-04-08 14:15 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

--- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Andre Simoes Dias Vieira
<avieira@gcc.gnu.org>:

https://gcc.gnu.org/g:5522dec054cb940fe83661b96249aa12c54c1d77

commit r12-8060-g5522dec054cb940fe83661b96249aa12c54c1d77
Author: Andre Vieira <andre.simoesdiasvieira@arm.com>
Date:   Fri Apr 8 15:12:23 2022 +0100

    aarch64: PR target/105157 Increase number of cores TARGET_CPU_DEFAULT can
encode

    This addresses the compile-time increase seen in the PR target/105157. This
was
    being caused by selecting the wrong core tuning, as when we added the
latest
    AArch64 the TARGET_CPU_generic tuning was pushed beyond the 0x3f mask we
used
    to encode both target cpu and attributes into TARGET_CPU_DEFAULT.

    gcc/ChangeLog:

            PR target/105157
            * config.gcc: Shift ext_mask by TARGET_CPU_NBITS.
            * config/aarch64/aarch64.h (TARGET_CPU_NBITS): New macro.
            (TARGET_CPU_MASK): Likewise.
            (TARGET_CPU_DEFAULT): Use TARGET_CPU_NBITS.
            * config/aarch64/aarch64.cc (aarch64_get_tune_cpu): Use
TARGET_CPU_MASK.
            (aarch64_get_arch): Likewise.
            (aarch64_override_options): Use TARGET_CPU_NBITS.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6
  2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2022-04-08 14:15 ` cvs-commit at gcc dot gnu.org
@ 2022-04-08 14:16 ` avieira at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: avieira at gcc dot gnu.org @ 2022-04-08 14:16 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105157

avieira at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #11 from avieira at gcc dot gnu.org ---
The commit above should have fixed the issue. Let me know if you still observe
the higher compile-time in your nightlies.

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2022-04-08 14:16 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-05  9:50 [Bug target/105157] New: [12 Regression] compile-time regressions with generic tuning rguenth at gcc dot gnu.org
2022-04-05  9:53 ` [Bug target/105157] " rguenth at gcc dot gnu.org
2022-04-06  8:35 ` marxin at gcc dot gnu.org
2022-04-06 10:57 ` [Bug target/105157] [12 Regression] compile-time regressions with generic tuning since r12-7756-g27d8748df59fe6 marxin at gcc dot gnu.org
2022-04-06 10:57 ` marxin at gcc dot gnu.org
2022-04-06 11:05 ` marxin at gcc dot gnu.org
2022-04-06 11:13 ` rguenth at gcc dot gnu.org
2022-04-06 11:21 ` tnfchris at gcc dot gnu.org
2022-04-06 11:29 ` rguenth at gcc dot gnu.org
2022-04-06 17:24 ` avieira at gcc dot gnu.org
2022-04-08 14:15 ` cvs-commit at gcc dot gnu.org
2022-04-08 14:16 ` avieira at gcc dot gnu.org

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).