Re: [potato] Floating point exception
Christopher C Chimelis <email@example.com> writes:
> I agree, yet disagree. While -mieee would definitely help alot of
> packages, it is much more than just a minor slowdown in many cases. I've
> had software take an unusually longer amount of time due to -mieee. Plus,
> to add that much overhead to the execution of every programme is just not
> needed in 95% of the cases.
I do not share your assumptions on how many programs are affected and
on how much slowdown -mieee brings: judging from the documentation of
cpml and from my own experience with my own floating-point-intensive
program, the slowdown is really not all that much. Alpha is to my
knowledge the only widespread architecture that does not do IEEE in
hardware and therefore most programmers are not aware of the
implications. If you define "not needed" as "under normal
circumstances this program doesn't emit FP-exceptions" then maybe your
95% estimate holds, but I'd prefer to only compile programs without
-mieee iff the program has it's own exception handler or other
security measures that do _not_ rely on finite() and friends or the
MAXFLOAT #defines from <math.h>. Those programs are rather rare.
> As for compiling for the submodel, I'm assuming you mean for the machine
> type. I wish we could (I have a 21164PC and would love to use that BMX
> instruction for once), but we can't due to the large amount of 21066's and
> 21164's out there. As I found out accidentally with glibc (I miscompiled
> it with alphapca56 as a target), things just won't run on other Alphas
> with differing processors if compiled as such. I assumed that the kernels
> were providing some of the instruction set functionality for processors
> without them (albeit slower), but it does not.
So what you say is that all packages should be compiled for 21066s so
they run on any machine. Then using -mieee is a logical conclusion
imho, because the merit is to have _working_ binaries. If a program
turns out to be particularly slow, one has to recompile anyway.
Anyhow, it is clear to me, that Alphas are not necessarily lightning fast.
My SX164 did a damn good job chewing on my program but in day-to-day
usage, it's sometimes disappointing. (particularly in XEmacs; my
AMD-K6-200 performs better there) I think this point should be made
clear to alpha-newcomers, that these processors have their weak sides
too, and that the reputation they have comes from their strength in
cleanly programmed floating-point calculations.
Eberhard Burr PGP key ID: DAF93D11 fingerprint: 1D 0B F9 53 E1 CA 21 1A
91 55 DB C8 1F 4C 0C B6
Remember: While root can do most everything, there are certain
privileges that only a partner can grant.
-- Telsa Gwynne