public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Albert Cohen <Albert.Cohen@inria.fr>
To: gcc@gcc.gnu.org
Subject: complete_unrolli / complete_unroll
Date: Wed, 19 Aug 2009 12:13:00 -0000	[thread overview]
Message-ID: <4A8BE7B2.7080708@inria.fr> (raw)
In-Reply-To: <E1MdhYW-0005WQ-00.aserg2004-list-ru@f143.mail.ru>

When debugging graphite, we ran into code bloat issues due to
pass_complete_unrolli being called very early in the non-ipa
optimization sequence. Much later, the full-blown pass_complete_unroll
is scheduled, and this one does not do any harm.

Strangely, this early unrolling pass (tuned to only unroll inner loops)
is only enabled at -O3, independently of the -funroll-loops flag.

Does anyone remember why it is there, for which platform it is useful,
and what are the perf regressions if we remove it?

My guess is that it may only harm... disabling or damaging the
effectivenesss of the (loop-level) vectorizer and increasing compilation
time.

Thanks,
Albert

PS: When this question is solved, it will also be interesting to start a
serious discussion on how to improve the flexibility in customizing pass
ordering and parameterization of passes depending on the target. Grigori
Fursin's work shows the strong benefits and already provides a working
prototype. This question is independent of whether the customization is
done by experts or machine-learning/statistical techniques.

  parent reply	other threads:[~2009-08-19 11:53 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-19 11:53 mips64 gcc 3.3.6 problem Sergey Anosov
2009-08-19 11:55 ` Paolo Carlini
2009-08-19 12:13 ` Albert Cohen [this message]
2009-08-19 12:33   ` complete_unrolli / complete_unroll Richard Guenther
2009-08-19 12:35     ` Richard Guenther
2009-08-19 13:56     ` Albert Cohen
2009-08-19 14:44       ` Albert Cohen
2009-08-19 15:09         ` Richard Guenther
2009-08-19 20:30           ` Richard Guenther
2009-08-20  8:45             ` Albert Cohen
2009-08-20  9:57               ` Richard Guenther
2009-08-20 13:34                 ` Albert Cohen
2009-09-29 18:54                 ` David Edelsohn
2009-09-30 12:36                   ` Richard Guenther
2009-08-20 11:20 Dominique Dhumieres
2009-08-20 12:25 ` Richard Guenther

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=4A8BE7B2.7080708@inria.fr \
    --to=albert.cohen@inria.fr \
    --cc=gcc@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).