public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "amacleod at redhat dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug tree-optimization/102943] [12 Regression] Jump threader compile-time hog with 521.wrf_r
Date: Thu, 10 Mar 2022 14:01:20 +0000	[thread overview]
Message-ID: <bug-102943-4-F1kM4wQyjZ@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-102943-4@http.gcc.gnu.org/bugzilla/>

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

--- Comment #41 from Andrew Macleod <amacleod at redhat dot com> ---

> 
> so it's still by far jump-threading/VRP dominating compile-times (I wonder
> if we should separate "old" and "new" [E]VRP timevars).  Given that VRP
> shows up as well it's more likely the underlying ranger infrastructure?

Yeah, Id be tempted to just label them vrp1 (evrp)  vrp2 (current vrp1)  and
vrp3 (current vrp2) and track them separately.  I have noticed significant
behaviour differences from the code we see at VRP2 time vs EVRP.


> 
> perf thrown on ltrans22 shows
> 
> Samples: 302K of event 'cycles', Event count (approx.): 331301505627        
> 
> Overhead       Samples  Command      Shared Object     Symbol               
> 
>   10.34%         31299  lto1-ltrans  lto1              [.]
> bitmap_get_aligned_chunk
>    7.44%         22540  lto1-ltrans  lto1              [.] bitmap_bit_p
>    3.17%          9593  lto1-ltrans  lto1              [.]

> 
> callgraph info in perf is a mixed bag, but maybe it helps to pinpoint things:
> 
> -   10.20%    10.18%         30364  lto1-ltrans  lto1              [.]
> bitmap_get_aligned_chunk                                                    
> #
>    - 10.18% 0xffffffffffffffff                                              
> #
>       + 9.16% ranger_cache::propagate_cache                                 
> #
>       + 1.01% ranger_cache::fill_block_cache               
> 

I am currently looking at reworking the cache again so that the propagation is
limited only to actual changes.  It can still currently get out of hand in
massive CFGs, and thats already using the sparse representation.  There may be
some minor tweaks that can make a big difference here.    I'll have a look over
the next couple of days.

Its probably safe to assume the threading performance is directly related to
this as well.


.

  parent reply	other threads:[~2022-03-10 14:01 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-26 11:13 [Bug tree-optimization/102943] New: VRP " rguenth at gcc dot gnu.org
2021-10-26 11:15 ` [Bug tree-optimization/102943] [12 Regression] " rguenth at gcc dot gnu.org
2021-10-26 11:25 ` rguenth at gcc dot gnu.org
2021-10-26 11:49 ` rguenth at gcc dot gnu.org
2021-10-26 14:57 ` pinskia at gcc dot gnu.org
2021-10-26 14:58 ` marxin at gcc dot gnu.org
2021-10-26 15:06 ` marxin at gcc dot gnu.org
2021-10-30  6:31 ` aldyh at gcc dot gnu.org
2021-10-31 20:06 ` hubicka at gcc dot gnu.org
2021-11-02  7:25 ` [Bug tree-optimization/102943] [12 Regression] Jump " rguenth at gcc dot gnu.org
2021-11-02  7:29 ` aldyh at gcc dot gnu.org
2021-11-03 10:57 ` aldyh at gcc dot gnu.org
2021-11-03 10:58 ` aldyh at gcc dot gnu.org
2021-11-03 13:17 ` rguenther at suse dot de
2021-11-03 14:33 ` amacleod at redhat dot com
2021-11-03 14:42 ` rguenther at suse dot de
2021-11-04 14:40 ` cvs-commit at gcc dot gnu.org
2021-11-04 14:40 ` cvs-commit at gcc dot gnu.org
2021-11-04 14:40 ` cvs-commit at gcc dot gnu.org
2021-11-04 15:24 ` aldyh at gcc dot gnu.org
2021-11-04 17:00   ` Jan Hubicka
2021-11-04 17:00 ` hubicka at kam dot mff.cuni.cz
2021-11-05  9:08 ` aldyh at gcc dot gnu.org
2021-11-05 11:10 ` marxin at gcc dot gnu.org
2021-11-05 11:13 ` aldyh at gcc dot gnu.org
2021-11-05 11:23 ` marxin at gcc dot gnu.org
2021-11-05 17:16 ` cvs-commit at gcc dot gnu.org
2021-11-07 17:17 ` hubicka at gcc dot gnu.org
2021-11-07 18:16 ` aldyh at gcc dot gnu.org
2021-11-07 18:59   ` Jan Hubicka
2021-11-07 18:59 ` hubicka at kam dot mff.cuni.cz
2021-11-12 22:14 ` hubicka at gcc dot gnu.org
2021-11-14  9:58 ` hubicka at gcc dot gnu.org
2021-11-26 12:38 ` cvs-commit at gcc dot gnu.org
2021-11-30 10:55 ` aldyh at gcc dot gnu.org
2021-12-09 20:17 ` hubicka at gcc dot gnu.org
2022-01-03  8:47 ` rguenth at gcc dot gnu.org
2022-01-03 11:20 ` hubicka at kam dot mff.cuni.cz
2022-01-19  7:06 ` rguenth at gcc dot gnu.org
2022-03-10 11:37 ` rguenth at gcc dot gnu.org
2022-03-10 12:40 ` cvs-commit at gcc dot gnu.org
2022-03-10 13:22 ` rguenth at gcc dot gnu.org
2022-03-10 13:42 ` cvs-commit at gcc dot gnu.org
2022-03-10 13:45 ` rguenth at gcc dot gnu.org
2022-03-10 13:49 ` rguenth at gcc dot gnu.org
2022-03-10 14:01 ` amacleod at redhat dot com [this message]
2022-03-10 14:17 ` amacleod at redhat dot com
2022-03-10 14:23 ` rguenth at gcc dot gnu.org
2022-03-10 14:26 ` rguenth at gcc dot gnu.org
2022-03-10 14:33 ` amacleod at redhat dot com
2022-03-10 14:36 ` amacleod at redhat dot com
2022-03-16 19:48 ` amacleod at redhat dot com
2022-03-17 11:14 ` rguenth at gcc dot gnu.org
2022-03-17 13:05 ` amacleod at redhat dot com
2022-03-17 14:18 ` hubicka at kam dot mff.cuni.cz
2022-03-17 20:44 ` cvs-commit at gcc dot gnu.org
2022-03-23 10:40 ` rguenth 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-102943-4-F1kM4wQyjZ@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: link
Be 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).