public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jeffrey A Law <law@cygnus.com>
To: Toon Moene <toon@moene.indiv.nluug.nl>
Cc: egcs@cygnus.com
Subject: Re: (really Fortran patches)
Date: Thu, 23 Oct 1997 00:47:00 -0000	[thread overview]
Message-ID: <7055.877592152@hurl.cygnus.com> (raw)
In-Reply-To: <9710230552.AA21715@moene.indiv.nluug.nl>

This gets more interesting by the minute.

Like many modern cpus, the PA has a counter that increments once per
machine cycle -- and the counter is visible to the user :-)

So, I got off my lazy butt and started timing stuff -- basically noting
the time for any particular loop takes for one of the 100 iterations
in tomcatv.

I ran across a pretty simple loop, which ran slower with the USE patch,
so I started fooling around.

Fixing the giv combination problem by hand made things a little
better, but relative to the total slowdown, it was in the noise --
even after pulling another invariant out of the outer loop
(it's a double nested loop).

The slowdown turned out to be a bad schedule.  After hand fixing
the schedule the version with the USE patch ran faster than the
one without the USE patch.

The loop is dominated by memory and FP latency (no suprise with
tomcatv).  With the USE patch the scheduler did not move some of
the memory instructions as aggressively as it used to.

I'm wondering if the givs created by the USE patch are confusing
the alias code into thinking some particular memory addresses
conflict, when in fact they don't.  Before you ask, no nothing
needed to move past an autoincrement memory reference :-)

I'll look at this further as soon as I can get another block of
free time.

I don't know if bad schedules will account for all the slowdown,
but one can always hope!

jeff

  parent reply	other threads:[~1997-10-23  0:47 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <9710211752.AA19479@moene.indiv.nluug.nl>
1997-10-22 21:33 ` my EGCS status " Jeffrey A Law
1997-10-22 22:55   ` Toon Moene
1997-10-22 23:26     ` Jeffrey A Law
1997-10-23  0:47     ` Jeffrey A Law [this message]
1997-10-23 10:45       ` Toon Moene
1997-10-23 11:04         ` Jeffrey A Law
1997-10-23 12:18           ` Joe Buck
1997-10-24 22:37     ` -frerun-loop Jeffrey A Law
1997-10-22 22:33 ` my EGCS status (really Fortran patches) Jeffrey A Law
1997-10-26  9:18 ` Jeffrey A Law
1997-10-27 16:30   ` Jim Wilson
1997-10-27 15:54     ` Jeffrey A Law
1997-10-27 17:21       ` Jim Wilson
1997-10-28 12:35         ` Jeffrey A Law
1997-10-28 12:35           ` Toon Moene

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=7055.877592152@hurl.cygnus.com \
    --to=law@cygnus.com \
    --cc=egcs@cygnus.com \
    --cc=toon@moene.indiv.nluug.nl \
    /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).