Skip to main content

Research Repository

Advanced Search

TAFFO: The compiler-based precision tuner

Cattaneo, Daniele; Chiari, Michele; Agosta, Giovanni; Cherubin, Stefano


Daniele Cattaneo

Michele Chiari

Giovanni Agosta


We present taffo, a framework that automatically performs precision tuning to exploit the performance/accuracy trade-off. In order to avoid expensive dynamic analyses, taffo leverages programmer annotations which encapsulate domain knowledge about the conditions under which the software being optimized will run. As a result, taffo is easy to use and provides state-of-the-art optimization efficacy in a variety of hardware configurations and application domains. We provide guidelines for the effective exploitation of taffo by showing a typical example of usage on a simple application, achieving a speedup up to 60% at the price of an absolute error of 3.53×10−5. taffo is modular and based on the solid llvm technology, which allows extensibility to improved analysis techniques, and comprehensive support for the most common precision-reduced data types and programming languages. As a result, the taffo technology has been selected as the precision tuning tool of the European Training Network on Approximate Computing.


Cattaneo, D., Chiari, M., Agosta, G., & Cherubin, S. (2022). TAFFO: The compiler-based precision tuner. SoftwareX, 20, Article 101238.

Journal Article Type Article
Acceptance Date Oct 15, 2022
Online Publication Date Nov 3, 2022
Publication Date 2022-12
Deposit Date Nov 3, 2022
Publicly Available Date Nov 3, 2022
Journal SoftwareX
Print ISSN 2352-7110
Publisher Elsevier
Peer Reviewed Peer Reviewed
Volume 20
Article Number 101238
Keywords Mixed precision, Compiler, Approximate computing
Public URL
Publisher URL


You might also like

Downloadable Citations