public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "jv244 at cam dot ac dot uk" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug middle-end/38474] slow compilation at -O0 (callgraph optimization, inline heuristics, expand ) Date: Tue, 16 Dec 2008 14:21:00 -0000 [thread overview] Message-ID: <20081216142006.28527.qmail@sourceware.org> (raw) In-Reply-To: <bug-38474-6642@http.gcc.gnu.org/bugzilla/> ------- Comment #24 from jv244 at cam dot ac dot uk 2008-12-16 14:20 ------- (In reply to comment #23) reduced testcase timings at -O0 and -O3. Tree operand scan anybody? > time gfortran -O0 -ffree-line-length-512 -c -ftime-report testcase_reduced.f90 Execution times (seconds) garbage collection : 0.51 ( 1%) usr 0.00 ( 0%) sys 0.49 ( 1%) wall 0 kB ( 0%) ggc callgraph construction: 0.05 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 4956 kB ( 2%) ggc callgraph optimization: 8.13 (18%) usr 0.20 (16%) sys 8.36 (18%) wall 1280 kB ( 1%) ggc cfg cleanup : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc CFG verifier : 0.48 ( 1%) usr 0.02 ( 2%) sys 0.46 ( 1%) wall 0 kB ( 0%) ggc trivially dead code : 0.17 ( 0%) usr 0.00 ( 0%) sys 0.18 ( 0%) wall 0 kB ( 0%) ggc df live regs : 0.11 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall 0 kB ( 0%) ggc df reg dead/unused notes: 0.24 ( 1%) usr 0.00 ( 0%) sys 0.23 ( 0%) wall 9445 kB ( 4%) ggc register information : 0.11 ( 0%) usr 0.01 ( 1%) sys 0.12 ( 0%) wall 0 kB ( 0%) ggc alias analysis : 0.10 ( 0%) usr 0.01 ( 1%) sys 0.10 ( 0%) wall 4239 kB ( 2%) ggc rebuild jump labels : 0.12 ( 0%) usr 0.00 ( 0%) sys 0.11 ( 0%) wall 0 kB ( 0%) ggc parser : 1.07 ( 2%) usr 0.05 ( 4%) sys 1.12 ( 2%) wall 22673 kB ( 9%) ggc inline heuristics : 16.30 (36%) usr 0.41 (33%) sys 16.75 (36%) wall 0 kB ( 0%) ggc tree gimplify : 0.06 ( 0%) usr 0.01 ( 1%) sys 0.08 ( 0%) wall 6435 kB ( 3%) ggc tree CFG construction : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 180 kB ( 0%) ggc tree find ref. vars : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 3231 kB ( 1%) ggc tree SSA rewrite : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 63 kB ( 0%) ggc tree SSA other : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc tree operand scan : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 236 kB ( 0%) ggc tree SSA to normal : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc tree SSA verifier : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 0 kB ( 0%) ggc tree STMT verifier : 0.20 ( 0%) usr 0.01 ( 1%) sys 0.22 ( 0%) wall 0 kB ( 0%) ggc callgraph verifier : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall 0 kB ( 0%) ggc dominance computation : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 0 kB ( 0%) ggc expand : 10.86 (24%) usr 0.38 (30%) sys 11.26 (24%) wall 132856 kB (52%) ggc integrated RA : 4.08 ( 9%) usr 0.05 ( 4%) sys 4.13 ( 9%) wall 4604 kB ( 2%) ggc reload : 1.88 ( 4%) usr 0.07 ( 6%) sys 1.97 ( 4%) wall 59269 kB (23%) ggc thread pro- & epilogue: 0.17 ( 0%) usr 0.00 ( 0%) sys 0.18 ( 0%) wall 175 kB ( 0%) ggc final : 0.63 ( 1%) usr 0.03 ( 2%) sys 0.66 ( 1%) wall 3790 kB ( 1%) ggc TOTAL : 45.42 1.25 46.73 253684 kB Extra diagnostic checks enabled; compiler may run slowly. Configure with --enable-checking=release to disable checks. real 0m47.298s user 0m45.923s sys 0m1.316s > time gfortran -march=native -O3 -ffree-line-length-512 -c -ftime-report testcase_reduced.f90 Execution times (seconds) garbage collection : 1.48 ( 1%) usr 0.01 ( 0%) sys 1.50 ( 1%) wall 0 kB ( 0%) ggc callgraph construction: 0.03 ( 0%) usr 0.01 ( 0%) sys 0.05 ( 0%) wall 4955 kB ( 1%) ggc callgraph optimization: 6.27 ( 3%) usr 0.15 ( 7%) sys 6.46 ( 4%) wall 2366 kB ( 0%) ggc ipa cp : 0.05 ( 0%) usr 0.01 ( 0%) sys 0.06 ( 0%) wall 34 kB ( 0%) ggc cfg cleanup : 0.01 ( 0%) usr 0.01 ( 0%) sys 0.02 ( 0%) wall 0 kB ( 0%) ggc CFG verifier : 1.41 ( 1%) usr 0.00 ( 0%) sys 1.33 ( 1%) wall 0 kB ( 0%) ggc trivially dead code : 0.62 ( 0%) usr 0.00 ( 0%) sys 0.66 ( 0%) wall 0 kB ( 0%) ggc df reaching defs : 0.69 ( 0%) usr 0.01 ( 0%) sys 0.67 ( 0%) wall 0 kB ( 0%) ggc df live regs : 1.86 ( 1%) usr 0.00 ( 0%) sys 1.86 ( 1%) wall 0 kB ( 0%) ggc df live&initialized regs: 0.93 ( 1%) usr 0.00 ( 0%) sys 0.94 ( 1%) wall 0 kB ( 0%) ggc df use-def / def-use chains: 1.33 ( 1%) usr 0.04 ( 2%) sys 1.38 ( 1%) wall 0 kB ( 0%) ggc df reg dead/unused notes: 0.92 ( 1%) usr 0.00 ( 0%) sys 0.96 ( 1%) wall 13469 kB ( 3%) ggc register information : 0.44 ( 0%) usr 0.00 ( 0%) sys 0.43 ( 0%) wall 0 kB ( 0%) ggc alias analysis : 1.05 ( 1%) usr 0.00 ( 0%) sys 1.05 ( 1%) wall 24068 kB ( 5%) ggc register scan : 0.20 ( 0%) usr 0.00 ( 0%) sys 0.17 ( 0%) wall 18 kB ( 0%) ggc rebuild jump labels : 0.31 ( 0%) usr 0.00 ( 0%) sys 0.30 ( 0%) wall 0 kB ( 0%) ggc parser : 1.16 ( 1%) usr 0.03 ( 1%) sys 1.21 ( 1%) wall 22673 kB ( 5%) ggc inline heuristics : 15.83 ( 9%) usr 0.40 (20%) sys 16.25 ( 9%) wall 138 kB ( 0%) ggc integration : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 885 kB ( 0%) ggc tree gimplify : 0.06 ( 0%) usr 0.01 ( 0%) sys 0.07 ( 0%) wall 6434 kB ( 1%) ggc tree CFG construction : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 179 kB ( 0%) ggc tree CFG cleanup : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 8 kB ( 0%) ggc tree VRP : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 448 kB ( 0%) ggc tree copy propagation : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 159 kB ( 0%) ggc tree find ref. vars : 0.01 ( 0%) usr 0.01 ( 0%) sys 0.01 ( 0%) wall 3229 kB ( 1%) ggc tree PTA : 1.29 ( 1%) usr 0.03 ( 1%) sys 1.34 ( 1%) wall 540 kB ( 0%) ggc tree alias analysis : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.06 ( 0%) wall 57 kB ( 0%) ggc tree call clobbering : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 19 kB ( 0%) ggc tree flow sensitive alias: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 60 kB ( 0%) ggc tree flow insensitive alias: 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc tree memory partitioning: 0.09 ( 0%) usr 0.00 ( 0%) sys 0.07 ( 0%) wall 0 kB ( 0%) ggc tree SSA rewrite : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 8391 kB ( 2%) ggc tree SSA other : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc tree SSA incremental : 0.03 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 21 kB ( 0%) ggc tree operand scan : 98.14 (55%) usr 0.03 ( 1%) sys 98.31 (54%) wall 4048 kB ( 1%) ggc dominator optimization: 0.03 ( 0%) usr 0.00 ( 0%) sys 0.02 ( 0%) wall 73 kB ( 0%) ggc tree CCP : 0.05 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 119 kB ( 0%) ggc tree PRE : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall 62 kB ( 0%) ggc tree FRE : 0.06 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 33 kB ( 0%) ggc tree forward propagate: 0.01 ( 0%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 3 kB ( 0%) ggc tree conservative DCE : 0.02 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 0 kB ( 0%) ggc tree aggressive DCE : 0.02 ( 0%) usr 0.01 ( 0%) sys 0.01 ( 0%) wall 12 kB ( 0%) ggc tree loop init : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 44 kB ( 0%) ggc tree SSA to normal : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 4 kB ( 0%) ggc tree rename SSA copies: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 0 kB ( 0%) ggc tree SSA verifier : 0.95 ( 1%) usr 0.00 ( 0%) sys 0.97 ( 1%) wall 0 kB ( 0%) ggc tree STMT verifier : 2.05 ( 1%) usr 0.04 ( 2%) sys 2.11 ( 1%) wall 0 kB ( 0%) ggc callgraph verifier : 0.10 ( 0%) usr 0.00 ( 0%) sys 0.08 ( 0%) wall 0 kB ( 0%) ggc dominance computation : 0.01 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 0 kB ( 0%) ggc expand : 12.80 ( 7%) usr 0.33 (16%) sys 13.09 ( 7%) wall 131225 kB (27%) ggc lower subreg : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.03 ( 0%) wall 0 kB ( 0%) ggc forward prop : 0.91 ( 1%) usr 0.01 ( 0%) sys 0.91 ( 1%) wall 9021 kB ( 2%) ggc CSE : 2.70 ( 2%) usr 0.01 ( 0%) sys 2.70 ( 1%) wall 8941 kB ( 2%) ggc dead code elimination : 0.37 ( 0%) usr 0.00 ( 0%) sys 0.38 ( 0%) wall 0 kB ( 0%) ggc dead store elim1 : 0.59 ( 0%) usr 0.02 ( 1%) sys 0.62 ( 0%) wall 13140 kB ( 3%) ggc dead store elim2 : 0.77 ( 0%) usr 0.00 ( 0%) sys 0.76 ( 0%) wall 13219 kB ( 3%) ggc CSE 2 : 2.04 ( 1%) usr 0.00 ( 0%) sys 2.04 ( 1%) wall 3477 kB ( 1%) ggc combiner : 0.77 ( 0%) usr 0.00 ( 0%) sys 0.79 ( 0%) wall 6633 kB ( 1%) ggc if-conversion : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 0%) wall 50 kB ( 0%) ggc regmove : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.05 ( 0%) wall 28 kB ( 0%) ggc integrated RA : 9.17 ( 5%) usr 0.71 (35%) sys 9.92 ( 5%) wall 25558 kB ( 5%) ggc reload : 3.36 ( 2%) usr 0.10 ( 5%) sys 3.47 ( 2%) wall 101799 kB (21%) ggc reload CSE regs : 1.76 ( 1%) usr 0.00 ( 0%) sys 1.75 ( 1%) wall 27970 kB ( 6%) ggc load CSE after reload : 0.09 ( 0%) usr 0.00 ( 0%) sys 0.09 ( 0%) wall 0 kB ( 0%) ggc thread pro- & epilogue: 0.18 ( 0%) usr 0.00 ( 0%) sys 0.19 ( 0%) wall 231 kB ( 0%) ggc peephole 2 : 0.16 ( 0%) usr 0.00 ( 0%) sys 0.15 ( 0%) wall 29 kB ( 0%) ggc rename registers : 1.03 ( 1%) usr 0.00 ( 0%) sys 1.04 ( 1%) wall 0 kB ( 0%) ggc scheduling 2 : 3.82 ( 2%) usr 0.03 ( 1%) sys 3.82 ( 2%) wall 53812 kB (11%) ggc machine dep reorg : 0.41 ( 0%) usr 0.00 ( 0%) sys 0.41 ( 0%) wall 0 kB ( 0%) ggc reorder blocks : 0.04 ( 0%) usr 0.00 ( 0%) sys 0.04 ( 0%) wall 3 kB ( 0%) ggc final : 0.64 ( 0%) usr 0.02 ( 1%) sys 0.65 ( 0%) wall 3824 kB ( 1%) ggc TOTAL : 179.47 2.03 181.70 492168 kB Extra diagnostic checks enabled; compiler may run slowly. Configure with --enable-checking=release to disable checks. real 3m2.238s user 2m59.927s sys 0m2.128s -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38474
next prev parent reply other threads:[~2008-12-16 14:21 UTC|newest] Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top 2008-12-10 15:26 [Bug middle-end/38474] New: slow compilation at -O0 (callgraph optimization, inline heuristics, ggc " jv244 at cam dot ac dot uk 2008-12-10 15:27 ` [Bug middle-end/38474] " jv244 at cam dot ac dot uk 2008-12-10 15:41 ` [Bug middle-end/38474] slow compilation at -O0 (callgraph optimization, inline heuristics, " rguenth at gcc dot gnu dot org 2008-12-10 16:14 ` jv244 at cam dot ac dot uk 2008-12-10 16:58 ` rguenth at gcc dot gnu dot org 2008-12-10 22:35 ` jv244 at cam dot ac dot uk 2008-12-10 22:49 ` rguenth at gcc dot gnu dot org 2008-12-10 22:58 ` jv244 at cam dot ac dot uk 2008-12-11 8:28 ` jv244 at cam dot ac dot uk 2008-12-11 11:35 ` rguenth at gcc dot gnu dot org 2008-12-11 12:04 ` jv244 at cam dot ac dot uk 2008-12-15 19:39 ` jv244 at cam dot ac dot uk 2008-12-15 21:19 ` steven at gcc dot gnu dot org 2008-12-15 21:29 ` steven at gcc dot gnu dot org 2008-12-15 21:54 ` steven at gcc dot gnu dot org 2008-12-15 21:56 ` steven at gcc dot gnu dot org 2008-12-15 21:57 ` steven at gcc dot gnu dot org 2008-12-16 7:52 ` jv244 at cam dot ac dot uk 2008-12-16 11:59 ` jv244 at cam dot ac dot uk 2008-12-16 12:46 ` steven at gcc dot gnu dot org 2008-12-16 12:48 ` jv244 at cam dot ac dot uk 2008-12-16 12:50 ` jv244 at cam dot ac dot uk 2008-12-16 13:43 ` steven at gcc dot gnu dot org 2008-12-16 14:19 ` jv244 at cam dot ac dot uk 2008-12-16 14:21 ` jv244 at cam dot ac dot uk [this message] 2008-12-16 16:19 ` jv244 at cam dot ac dot uk 2008-12-16 16:28 ` steven at gcc dot gnu dot org 2008-12-16 16:31 ` jv244 at cam dot ac dot uk 2008-12-16 19:35 ` [Bug middle-end/38474] [4.3/4.4 Regression] " pinskia at gcc dot gnu dot org 2008-12-16 20:32 ` jv244 at cam dot ac dot uk 2008-12-17 6:52 ` jv244 at cam dot ac dot uk 2008-12-17 7:03 ` steven at gcc dot gnu dot org 2008-12-17 8:37 ` jv244 at cam dot ac dot uk 2008-12-17 12:59 ` jv244 at cam dot ac dot uk 2008-12-17 19:42 ` steven at gcc dot gnu dot org 2008-12-20 9:00 ` jv244 at cam dot ac dot uk 2008-12-20 9:56 ` steven at gcc dot gnu dot org 2008-12-20 11:33 ` [Bug middle-end/38474] [Meta] " jv244 at cam dot ac dot uk 2008-12-20 15:51 ` steven at gcc dot gnu dot org 2009-01-24 10:27 ` rguenth at gcc dot gnu dot org 2009-08-04 12:45 ` rguenth at gcc dot gnu dot org 2009-11-27 8:52 ` jv244 at cam dot ac dot uk 2009-11-27 9:00 ` jv244 at cam dot ac dot uk 2009-11-27 10:50 ` rguenth at gcc dot gnu dot org 2009-12-03 13:37 ` matz at gcc dot gnu dot org 2009-12-03 17:48 ` jv244 at cam dot ac dot uk 2009-12-03 21:05 ` matz at gcc dot gnu dot org 2009-12-08 13:56 ` matz at gcc dot gnu dot org 2010-05-22 18:33 ` rguenth at gcc dot gnu dot org 2010-05-23 6:31 ` jv244 at cam dot ac dot uk 2010-05-23 20:09 ` rguenth at gcc dot gnu dot org 2010-05-23 21:03 ` [Bug middle-end/38474] slow compilation at -O0 due to expand's temp slot goo steven at gcc dot gnu dot 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=20081216142006.28527.qmail@sourceware.org \ --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).