public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
From: Ghassan Shobaki <gshobaki@ece.ucdavis.edu>
To: Jan Hubicka <hubicka@ucw.cz>
Cc: Jan Hubicka <jh@suse.cz>,
	gcc-help@gcc.gnu.org, "Vladimir N. Makarov" <vmakarov@redhat.com>,
	gcc@gnu.org
Subject: Re: Superblock Instruction Scheduling in GCC 3.4
Date: Sun, 01 Feb 2004 18:17:00 -0000	[thread overview]
Message-ID: <Pine.GHP.4.58.0402010953470.22447@dante.ece.ucdavis.edu> (raw)
In-Reply-To: <20040129101203.GB30883@atrey.karlin.mff.cuni.cz>


Eventually, I will be doing profile-based experiments. However, at this
point I am interested in static probabilities because it is an easier option
that will allow me to get some initial results more quickly.
Now, my question is: when I used the f-branch-probablities switch without
doing profiling first, gcc still accepted it and generated some
superblocks. Were these invalid superblocks or what?

Thanks

-Ghassan


On Thu, 29 Jan 2004, Jan Hubicka wrote:

> >
> > Ok, I have just verified that gcc DOES accept the -fsched2-use-tracer and
> > invoke the ebb scheduler as expected. However, it does not set the
> > flag_branch_probabilities automatically. It only sets it when I
> > explicitly use the -fbranch-probabilities command-line switch. Here are
> > the two cases that I have tried:
> >
> > g++ -O3 -fsched2-use-traces
> > Generates ~151K superblocks on my benchmark suite with lots of large
> > superblocks that include 10 basic blocks or more
> >
> > g++ -O3 -fsched2-use-traces -fbranch-probabilities
> > Generates only ~123K superblocks on my benchmark suite with the vast
> > majority of superblocks consisting of less than 10 basic blocks
>
> -fbranch-probabilities can be accpeted only when program has been
> earlier profiled.  GCC does have logic for statically guessing the
> branch outcomes when these are not available
> (-fguess-branch-probability) so the superblocks can be built, just they
> are inferrior to those built with feedback available.
> >
> > So, the question is: Why did the compiler generate more superblocks
> > when branch probabilities were not computed? Do the superblocks generated
> > in that case make any sense?
> > And the bottom line question for me is: which setting should I use in my
> > research on superblocks?
>
> It is always better to use the profile, so I would recommend you
> -fbranch-probabilities unless you are interested in experiments with
> static prediction algorithms.
>
> Honza
>

  reply	other threads:[~2004-02-01 18:17 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-12-03  6:14 Superblock Instruction Scheduling in GCC Ghassan Shobaki
2003-12-03 14:03 ` Vladimir N. Makarov
2003-12-04  0:06   ` Jan Hubicka
2003-12-04  1:26     ` Ghassan Shobaki
2003-12-04 10:25       ` Jan Hubicka
2003-12-04 15:54         ` Vladimir Makarov
2003-12-09 21:11     ` Ghassan Shobaki
2004-01-28  1:31     ` Superblock Instruction Scheduling in GCC 3.4 Ghassan Shobaki
2004-01-28 12:23       ` Jan Hubicka
2004-01-29  7:07         ` Ghassan Shobaki
2004-01-29 10:13           ` Jan Hubicka
2004-02-01 18:17             ` Ghassan Shobaki [this message]
2004-02-01 21:55               ` Jan Hubicka
2004-02-02  5:52                 ` Ghassan Shobaki
2004-02-10 18:57                 ` Superblock Scheduling Alg in GCC Ghassan Shobaki
2004-02-10 20:08                   ` Vladimir Makarov
2004-02-10 20:17                     ` Vladimir Makarov
2004-02-10 20:27                       ` Jan Hubicka
2004-04-14 17:03                         ` Ghassan Shobaki
2004-04-14 22:44                           ` Vladimir Makarov
     [not found]                             ` <Pine.LNX.4.58.0404142056120.4634@hawking.ece.ucdavis.edu>
2004-04-17 19:29                               ` Ghassan Shobaki
2004-05-27  6:41                         ` Ghassan Shobaki
2004-05-27 10:06                           ` Tree-SSA: Grammer Sumit Jain
2004-05-27 12:56                             ` llewelly
2005-02-11 16:55                           ` Trace Scheduling in GCC Ghassan Shobaki
     [not found]                             ` <4210D6C0.3030005@redhat.com>
2005-02-15  6:30                               ` Vladimir Makarov
2006-11-24 18:42                                 ` Phase Ordering of Scheduling and Allocation " Ghassan Shobaki
2006-11-24 19:28                                   ` Vladimir N. Makarov
2005-02-15  7:45                               ` Trace Scheduling " Jan Hubicka
2005-02-15  9:18                                 ` Ghassan Shobaki
2005-02-17 16:19                                   ` Jan Hubicka
2005-02-16 10:40                               ` Vladimir Makarov
     [not found]                                 ` <Pine.GHP.4.58.0502150840080.14429@dante.ece.ucdavis.edu>
2005-02-16 11:19                                   ` Jan Hubicka
2004-01-28 13:19 Superblock Instruction Scheduling in GCC 3.4 S. Bosscher

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=Pine.GHP.4.58.0402010953470.22447@dante.ece.ucdavis.edu \
    --to=gshobaki@ece.ucdavis.edu \
    --cc=gcc-help@gcc.gnu.org \
    --cc=gcc@gnu.org \
    --cc=hubicka@ucw.cz \
    --cc=jh@suse.cz \
    --cc=vmakarov@redhat.com \
    /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).