g77 performance

g77 performance

Post by Olgun Guvenc » Sun, 18 Jan 1998 04:00:00



(sorry about the first aborted post)

Hi,

Currently I am a RedHat 4.1 user on a Pentium 166 MMX.  I am running some
floating point intensive molecular dynamics Fortran code compiled under
g77 2.7.2.3 and am hoping to move to an Alpha processor based computer for
a performance boost.  I would very much appreciate any opinions on how g77
compares to Digital Fortran with respect to performance on alpha cpu's.  I
would prefer to stick with Linux/g77 after switching to the alpha, and am
wondering if and how much performance will be compromised as compared to
Digital UNIX/Fortran.

I realize this message does not contain too much "meat" regarding what
type of algorithms the code uses, but as I am just now beginning to take a
look at the guts of the code I am afraid I cannot offer much more to go
on.

Perhaps someone can address with what types of algorithms or code
structure either of the two Fortran compiliers excel or do not excel.
(or any other Fortran 77 compilers for alpha for that matter...)

Thank you in advance.

Yours,
Olgun Guvench

 
 
 

g77 performance

Post by Toon Moen » Sun, 18 Jan 1998 04:00:00



Quote:> Currently I am a RedHat 4.1 user on a Pentium 166 MMX.  I am running some
> floating point intensive molecular dynamics Fortran code compiled under
> g77 2.7.2.3 and am hoping to move to an Alpha processor based computer for
> a performance boost.  I would very much appreciate any opinions on how g77
> compares to Digital Fortran with respect to performance on alpha cpu's.  I
> would prefer to stick with Linux/g77 after switching to the alpha, and am
> wondering if and how much performance will be compromised as compared to
> Digital UNIX/Fortran.

Currently, we've only got data on the SPECfp95 suite for a 500 Mhz, 1 Mbyte
cache, non-SDRAM Alpha.  For this configuration, Digital Fortran gets around
13.3 and egcs-1.0.1/g77 gets approximately 8.5.

Don't bother with the combination g77-0.5.21+gcc-2.7.2.3 for _speed_.

Quote:> Perhaps someone can address with what types of algorithms or code
> structure either of the two Fortran compiliers excel or do not excel.
> (or any other Fortran 77 compilers for alpha for that matter...)

You'll run into performance problems in the following cases:

1. Your code does a lot of REAL -> INTEGER or INTEGER -> REAL conversions.
2. It does a lot of sqrt's (Digital's compiler uses a special 4-sqrts-
   at-a-time run time library routine).
3. Your code has a lot of array accesses that are a constant number
   of bytes apart in loops, like (note the B's):

      A(1) = 0.0
      DO I = 2, N
         A(I) = B(I) + B(I-1)
      ENDDO

   egcs/g77 tends to spend too many registers on this, which hurts in larger
   loops.  Work is underway on this shortcoming.

HTH,

--

Saturnushof 14, 3738 XG  Maartensdijk, The Netherlands
Phone: +31 346 214290; Fax: +31 346 214286


 
 
 

g77 performance

Post by H.W. Stockma » Sun, 18 Jan 1998 04:00:00




> > Currently I am a RedHat 4.1 user on a Pentium 166 MMX.  I am running some
> > floating point intensive molecular dynamics Fortran code compiled under
> > g77 2.7.2.3 and am hoping to move to an Alpha processor based computer for
> > a performance boost.  I would very much appreciate any opinions on how g77
[...]
> > Perhaps someone can address with what types of algorithms or code
> > structure either of the two Fortran compiliers excel or do not excel.
> > (or any other Fortran 77 compilers for alpha for that matter...)
> You'll run into performance problems in the following cases:
> 1. Your code does a lot of REAL -> INTEGER or INTEGER -> REAL conversions.
> 2. It does a lot of sqrt's (Digital's compiler uses a special 4-sqrts-
>    at-a-time run time library routine).

[...]
The sqrts could indeed be the speed limiting factor,
since most molecular dynamics calculations need to
calculate something like sqrt((x1-x2)**2 + (y1-y2)**2 + (z1-z2)**2)
often.

A similar thread came up in comp.arch about a 4 months ago,
in light of the recognition that most MD programs really
need sqrt(1/rSqrd).  It was pointed out that the standard
Newton's method formulation is easily cast in 1/rSqrd,
removing a lot of unnecessary calculation (in particular,
the division).  Terje Mathisen was tracking the various
methods at that time, and indeed it was possible to
achieve quite a bit of register-level parallelism.

Not all MD methods may benefit by this approach, but it is
possible that a few carefully-selected hand optimizations
might overwhelm the differences among the compilers.

 
 
 

g77 performance

Post by Christopher Grayc » Tue, 20 Jan 1998 04:00:00



> (sorry about the first aborted post)

> Hi,

> Currently I am a RedHat 4.1 user on a Pentium 166 MMX.  I am
> running some floating point intensive molecular dynamics Fortran
> code compiled under g77 2.7.2.3 and am hoping to move to an Alpha
> processor based computer for a performance boost.  I would very much
> appreciate any opinions on how g77 compares to Digital Fortran with
> respect to performance on alpha cpu's.  I

I do MD and MC simulations of polymers.  Bottom line is that the
DEC compiler is significantly better and generates code that is
about 50% faster, no matter how carefully I tune the source.  Don't
know why, but those folks at Digital apparently know their business.
Haven't tried the latest incarnation of g77 and egcs, but then I'm
not using the newest DEC compiler either.  

Christopher Grayce
Dept of Chemistry
UC Irvine
cgrayce at uci dot edu

 
 
 

g77 performance

Post by Craig Burle » Wed, 21 Jan 1998 04:00:00



> I do MD and MC simulations of polymers.  Bottom line is that the
> DEC compiler is significantly better and generates code that is
> about 50% faster, no matter how carefully I tune the source.  Don't
> know why, but those folks at Digital apparently know their business.
> Haven't tried the latest incarnation of g77 and egcs, but then I'm
> not using the newest DEC compiler either.  

egcs includes some performance improvements to g77.  These might
help close the gap for some applications.

But, the folks at Digital indeed do know their business, when
it comes to producing decent Fortran compilers anyway.  They
spent a fair amount of time and effort making sure their Fortran
compilers optimized properly for Alphas, using techniques that
the gcc/egcs back end doesn't know about yet (like true
loop prefetching/unrolling).  And they also made the
underlying run-time libraries fast in the critical places.
--

"Practice random senselessness and act kind of beautiful."

 
 
 

g77 performance

Post by Christian Worle » Fri, 23 Jan 1998 04:00:00



> I do MD and MC simulations of polymers.  Bottom line is that the
> DEC compiler is significantly better and generates code that is
> about 50% faster, no matter how carefully I tune the source.  Don't
> know why, but those folks at Digital apparently know their business.

Will Digitals compiler for DUX run under AXP/Linux?

Chris
--
  When I die, please cast my ashes upon Bill Gates
   --for once, let him clean up after me!

 
 
 

g77 performance

Post by Greg Linda » Sat, 24 Jan 1998 04:00:00



> Will Digitals compiler for DUX run under AXP/Linux?

 
 
 

1. X-Performance = Ram ?, report YOUR performance after upgrade.

I run a 486DX4-100mhz, 256kb cache, 8mb ram, 540 mb harddisk 13ms,
with linux...and I would really like to know _how_ strongly preformance
depends on the amount of ram...if it's really worth it to put money on lots
of ram ?
I think primarly on the performance in X-windows...
Or maybe it's better to buy a faster harddisk for those money ?

Please don't post things like "get 36 megs and you'll be happy",
that's not my point anyway...the question is when the increase in performance
is greatest at say an addition of 4 mb..and _how_ big difference it is...
so maybe we could get a neat list of reports for reference for different
machines...then anyone can judge for themselves wether it's worth the
money or not ?

Suppose I upgrade to 12mb, roughly how much faster will X go ?
..or if I uppgrade to 16 mb or 20mb ? is it like the difference
between 8 and 12 is significantly bigger than between 12 and 16 ?

...post what happened to your system!

All of you linux users who have upgraded your ram, you _can_ answer
these questions, please do !

Any reports are velcome, please post it either here or by email to me,
although I'm sure a lot of people would be interested in this...
Please specify your system in any post...

If there is any documents or faq's on this question, please forgive me
..and then maybe someone could give me hint were to find them ?

 /Fredrik

2. Telnet: TELOPT_ENVIRON => TELOPT_{NEW,OLD}-ENVIRON?

3. X graphics performance vs. Windows performance

4. split keyboards

5. Vax 11/780 performance vs Sun 4/280 performance

6. Using a CD-ROM on an Acer Acros DX266

7. performance tools for analyzing java performance

8. Apache proxy host

9. Xfree Performance vs. Accelerated-X Performance

10. Ide performance (was RAID0 Performance problems)

11. X graphics performance vs. Windows performance

12. GCC and g77 upgrade

13. g77 does not run