alpha interval gotcha

David G. Hough at validgh dgh
Sat Feb 19 19:50:19 PST 1994


Does this sound right?

Article: 28501 of comp.arch
From: tlbachardonnay.harvard.edu (Trevor Blackwell)
Newsgroups: comp.arch
Subject: Alpha 21064 Floating Point Rounding Modes can be Real Slow
Date: 19 Feb 94 20:16:15 GMT

I am writing some interval arithmetic code on my Alpha (21064) and it
is running terribly slowly. It appears that all the floating point
rounding modes except the default (nearest) _trap_.

So, doing a mult/d or mult/m (for dynamic and
towards-negative-infinity rounding respectively) takes about 10000
clock cycles, according to my little test program which uses the PCC
to time these instructions.

10000 cycles seems PRETTY DAMN SLOW to emulate these instructions. I
suspect most of that is kernel dispatch, and finding the offending
instruction (imprecise FP interrupts, you know.) Does anyone have some
code that would let me do it directly, faster?

My Alpha architecture handbook doesn't make any mention of this
behaviour - I assume it is specific to the 21064 implementation.

Can anyone confirm this, and point me to a reference to that details
what instructions the 21064 actually runs in hardware?




More information about the Numeric-interest mailing list