Title :
Low-Cost Microarchitectural Support for Improved Floating-Point Accuracy
Author :
Dieter, William R. ; Kaveti, Akil ; Dietz, Henry G.
Abstract :
Some processors designed for consumer applications, such as graphics processing units (CPUs) and the CELL processor, promise outstanding floating-point performance for scientific applications at commodity prices. However, IEEE single precision is the most precise floating-point data type these processors directly support in hardware. Pairs of native floating-point numbers can be used to represent a base result and a residual term to increase accuracy, but the resulting order of magnitude slowdown dramatically reduces the price/performance advantage of these systems. By adding a few simple microarchitectural features, acceptable accuracy can be obtained with relatively little performance penalty. To reduce the cost of native-pair arithmetic, a residual register is used to hold information that would normally have been discarded after each floating-point computation. The residual register dramatically simplifies the code, providing both lower latency and better instruction-level parallelism.
Keywords :
computer architecture; floating point arithmetic; parallel processing; CELL processor; IEEE single precision; floating-point accuracy; graphics processing units; instruction-level parallelism; microarchitectural support; Application software; Costs; Floating-point arithmetic; Graphics; Hardware; Microarchitecture; Pipelines; Registers; Software algorithms; Software performance; B Hardware; B.2 Arithmetic and Logic Structures; B.2.4 High-Speed Arithmetic; B.2.4.b Cost/performance; C Computer Systems Organization; C.0 General; C.0.b Hardware/software interfaces; C.1 Processor Architectures; C.1.5 Micro-architecture implementation considerations; G Mathematics of Computing; G.1 Numerical Analysis; G.1.0 General; G.1.0.e Multiple precision arithmetic; I Computing Methodologies; I.3 Computer Graphics; I.3.1 Hardware Architecture; I.3.1.a Graphics processors;
Journal_Title :
Computer Architecture Letters
DOI :
10.1109/L-CA.2007.1