PC164 mysteriously slow

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

PC164 mysteriously slow

Christian Weisgerber
I have two Alphas, an AlphaPC 164 and an AlphaServer 800.  Both are
21164A @ 500MHz machines with a 2117x core chipset.

I fired up the AS800 for the gcc4 stuff, and now that I have both
machines running in parallel I notice that the PC164 is slower than
the AS800.

A simple "md5 -ttt" shows:
PC164: 302 s
AS800: 210 s

In other words, the PC164 is running at 70% the speed of the AS800.
That is weird.

My first thought was, maybe the PC164 isn't really running at 500
MHz.  But it uses kern.timecounter.hardware=rpcc, and the RPCC
directly reflects the clock rate.  If that was wrong, the system
clock would diverge wildly, which it doesn't (ntpd.drift: 2.984988e-05).
I checked rpcc_timecounter.tc_frequency: 499989720.  500 MHz.  That
is calibrated against a time-of-year clock chip, I think, which has
a separate crystal.

So the CPU clock speed is okay.  What else is there?  md5 -t is a
very stupid test.  It runs a 10000-byte block of data through a
small loop; that shouldn't involve main memory or even the lower
cache levels.  Besides, I checked the board, and the CPU clock
divisor, Bcache size, and memory bus width jumpers are all in the
expected positions.

Any ideas?

--
Christian "naddy" Weisgerber                          [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: PC164 mysteriously slow

Christian Weisgerber
Christian Weisgerber <[hidden email]> wrote:

> I fired up the AS800 for the gcc4 stuff, and now that I have both
> machines running in parallel I notice that the PC164 is slower than
> the AS800.
>
> A simple "md5 -ttt" shows:
> PC164: 302 s
> AS800: 210 s

And we have a winner: gcc4.

I stupidly forgot to consider that I had already rebuilt /bin/md5
with gcc4 on the AS800.  The machines really are the same speed
when you use the same executable.

But gcc4 doesn't just speed up a silly md5 -t test.  In fact, gcc4
produces so much better code that gcc4-built gcc4 itself is faster
than gcc3-built gcc3:

kernel "make depend && make":
(PC164) gcc3: 91 min
(AS800) gcc4: 80 min

That is quite amazing.

--
Christian "naddy" Weisgerber                          [hidden email]