How can I convert between a double-double and a decimal string?

such technique as summing 2 floating point variables just effectively doubles the mantissa bitwidth so its enough to just store/load bigger mantissa. Standard IEEE 754 double has 52+1 bit mantissa leading to log10(2^53) = 15.95 = ~16 [dec digits] so when you add 2 such variables then: log10(2^(53+53)) = 31.9 = ~32 [dec digits] so … Read more

Optimize for fast multiplication but slow addition: FMA and doubledouble

To answer my third question I found a faster solution for double-double addition. I found an alternative definition in the paper Implementation of float-float operators on graphics hardware. Theorem 5 (Add22 theorem) Let be ah+al and bh+bl the float-float arguments of the following algorithm: Add22 (ah ,al ,bh ,bl) 1 r = ah ⊕ bh … Read more

Emulate “double” using 2 “float”s

double-float is a technique that uses pairs of single-precision numbers to achieve almost twice the precision of single precision arithmetic accompanied by a slight reduction of the single precision exponent range (due to intermediate underflow and overflow at the far ends of the range). The basic algorithms were developed by T.J. Dekker and William Kahan … Read more