Subject: Re: Floating point in the kernel
To: Jonathan Stone <jonathan@DSG.Stanford.EDU>
From: Andreas Gustafsson <gson@araneus.fi>
List: tech-kern
Date: 09/19/1998 10:10:01
Jonathan Stone <jonathan@DSG.Stanford.EDU> said:
> >In my opinion, this _is_ bad.  Particularly the Alpha.    They have
> >improved since then, but then so has floating point performance.
> 
> Huh?  21064s are pretty old, but. even so, the raw clockrate was
> higher than many other CPus of the same vintage. Overall, FP
> performance wasn't so bad.

Ross Harvey <ross@teraflop.com> replied:
: Heh, I agree, that table was pretty funny. There are lies, damned lies,
: and statistics. :-)
: Comparing clock counts between 25 MHz and 275 MHz cpu units....cute....

The point I'm trying to make is about the relative performance of fixed
point versus floating point, not about the absolute performance of any
particular chip nor about the relative performance of the various chips.

My posting this table may have caused more confusion than
enlightenment because I did not have a corresponding table of cycle
counts for floating point instructions.  I believe all the CPUs in the
table have a throughput of one floating point multiply every 1-2
cycles (please correct me if I'm wrong) - this is what the integer
multiply cycle counts have to be compared against.

For example, the maximum throughput of the 21064 is one floating point
multiply per cycle, and one integer multiply per 19-23 cycles.  This
is what I meant by the 21064 being "particularly bad" at fixed point -
up to 23 times slower than floating point.  Since we were discussing
relative performance, an equivalent (but perhaps more diplomatic) way 
of saying the same thing would be to say that its floating point
performance is particularly good :-)

The 21064 is of course an extreme case - for most other CPUs, the
performance penalty for using fixed point is smaller, but it is still
there.
-- 
Andreas Gustafsson, gson@araneus.fi