[Beowulf] Peformance penalty when using 128-bit reals on AMD64

NiftyOMPI Tom Mitchell niftyompi at niftyegg.com
Sat Jun 26 15:40:24 PDT 2010


On Fri, Jun 25, 2010 at 10:30 AM, Nathan Moore <ntmoore at gmail.com> wrote:
...snip...
> I used GMP's arbitrary precision library (rational number arithmetic)
> for my thesis a few years back.  It was very easy to implement, but
> not fast (better on x86 hardware than sun/sgi/power as I recall).  I
> too am curious about the sort of algorithm that would require that
> much precision.

A lot can depend on the dynamic range of the
values being operated on.    If there is a
mix of very large and very small values odd
results can surface especially in parallel code.

Also basic statistics where the squared values can sometimes
unexpectedly overflow a computation when the "input" is well within
range.

It does make a lot of sense to test code and data with 32 and 64 bit
floating point to see if odd results surface.   It would be nice
if systems+compilers had the option of 128 and even 256 bit
operations so code could be tested for sensitivity that
matters.

I sort of wish precision was universally an application ./configure or
a #define
and while I am dreaming, 128 and 256 bit versions would just run...
A +24x slower run would validate a lot of codes and critical runs.

In a 30 second scan of GMP's arbitrary precision library I cannot tell
if 32 and 64bit sizes fall out as equal in performance to native types.

-- 
        NiftyOMPI
        T o m   M i t c h e l l




More information about the Beowulf mailing list