Constrained Precision Tuning
Precision tuning or customized precision number representations is emerging, in these recent years, as one of the most promising techniques that has a positive impact on the footprint of programs concerning energy consumption, bandwidth usage and computation time of numerical programs. In contrast to the uniform precision, mixed precision tuning assigns different finite-precision types to each variable and arithmetic operation of a program and offers many additional optimization opportunities. However, this technique introduces new challenge related to the cost of operations or type conversions which can overload the program execution after tuning. In this article, we extend our tool POP (Precision OPtimizer), with efficient ways to limit the number of drawbacks of mixed precision and to achieve best compromise between performance and memory consumption. On a popular set of tests from the FPBench suite, we discuss the results obtained by POP.
READ FULL TEXT