This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Submission of pa8000 changes?



  In message <7da99c9c.3660b6cc@aol.com>you write:
  > Yes, the fused multiply-add may double the performance in some cases,
  > judging by results with HPUX f90; this architecture is quite dependent on
  > it.
Not a big suprise.  Though I think you need to do both to get good results
(generate fused operations and avoid generating fmpyadd and fmpysub). 


  > The out-of-order execution facility presumably reduces the importance of
  > the compiler predicting latencies.
Correct.  If I remember reading correctly, the only latency scheduling HP
recommends is to treat all FP ops as having a 2 cycle latency (with the
possible exception of fsqrt).  They do recommend polarity scheduling (which is
out of the scope of what we can do) and some tricks to schedule for retirement
from the reorder buffers.

The PA8000 basically has icache bandwidth to burn and as a result insns tend
to get into the reorder buffers in plenty of time for them to issue without
generating a stall on the result.

The PA8000 series is limited by its ability to retire instructions from the
reorder buffers.  It also loses for multi-output insns like fmpyadd because they
take 2 slots in the buffer and both operations have to be retired at the same
time.  So, fmpyadd and similar instructions inside loops will tend to suck up
lots of reorder buffer slots and retirement bandwidth, thus limiting
performance.

>From a gcc centric standpoint, the other big win would be to use the long
floating point loads & stores.  The lack of symmetry between the displacements
allowed in integer and floating point memory operations really hurts gcc's
code.

  >   At my office, the hppa2.0 machines are slipping out of the role of
  > supporting locally built software, which may or may not be a reason for
  > having egcs working well.  In favor of egcs is that it seems easier to
  > copy the support libraries than to get access to the HPUX "native"
  > compiler run-times on machines which don't have those compilers licensed.
Funny.  I was up at the UofU last week and they're shutting down the vast
majority of their HPs.  Kind of sad.  There was a time when the UofU was one
of HP's biggest strongholds at educational institutions.  My how times
change.  Then again, unless you're doing floating point, the PA really isn't
cost effective when compared to a PII.



Jeff





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]