Re: PETSc in double-double and quad-double...
Matthew Knepley wrote:
On Wed, Nov 4, 2009 at 2:06 PM, Barry Smith <[email protected] <mailto:[email protected]>> wrote:
This is tricky because some C/C++ compilers long double uses 128 bits of space but actually (on Intel) only uses 80 of the bits (those are the bits that floating point unit handles). So you do not really get 128 bits. Also MPI may not properly handle the 128 bit doubles.
I figured that his types were just C++ types once he said they were provided by a package.
QD is honest quad-double (32 bytes, all of them significant) http://crd.lbl.gov/~dhbailey/mpdist/ They are C++ types with appropriate overloading, but the operations are implemented in terms of conventional double-precision where as "long double" is a different beast.
I am investigating qd now. Is there any MPI implementation that uses qd? Do you need MPI?
Can't we just make a type the correct number of bytes long?
I think so (on homogeneous hardware), but you have to create your own version of each MPI_Op that does the right thing with this longer type. Jed
participants (1)
-
Jed Brown