Proposal for Accurate Floating-Point Vector Arithmetic

Publisher Summary Many computers today provide accurate and reliable scalar arithmetic for floating-point numbers. An accurate definition of the four elementary floating-point operations (+, -, *, and /) is given in the Institute of Electrical and Electronics Engineers (IEEE) standards for floating-point arithmetic, and it was well established long before. An increasing number of computers feature IEEE arithmetic; many others provide at least faithful scalar arithmetic. This chapter discusses vector operations in a manner consistent with the elementary scalar arithmetic operations. The rounding modes and accuracy requirements, as well as the data formats of the operands and results of the vector operations, are fully consistent with the existing scalar floating-point arithmetic. Some vector/matrix operations—such as addition and subtraction—can be easily obtained by performing the corresponding scalar operations on the vector/matrix components. Their accuracy is the same as for scalar operands. For vector/matrix multiplications, however, the situation is completely different because the reduction of the dot product to a sequence of scalar floating-point operations does not, in general, produce accurate (or even meaningful) results.