Abstract
Data flow graph (DFG) is a popular model for software and its execution. It consists of a list of arithmetic operations without conditionals and their dependencies. Completion time and energy consumption are two main objectives for DFG optimization. In this chapter, we discuss approximation methods at different levels of DFG that can reduce energy consumption with a guaranteed quantity of results. First, we consider a probabilistic design framework that approximates the application by intentionally terminating certain DFG executions before reaching the deadline. Second, we demonstrate a real-time estimation-and-recomputing approach that executes the non-critical parts of the DFG with approximation. Finally, we use the floating-point logarithmic operation as an example to show how to optimize data bit width based on the DFG model.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Boggs PT, Tolle JW. Sequential quadratic programming. Acta Numer. 1995;4:1–51.
Eikerling HJ, Hardt W, Gerlach J, Rosenstiel W. A methodology for rapid analysis and optimization of embedded systems. In: Proceedings IEEE symposium and workshop on engineering of computer-based systems; 1996. p. 252–9.
Gao M, Qu G. Estimate and recompute: a novel paradigm for approximate computing on data flow graphs. IEEE Trans Comput-Aid Des Integr Circuits Syst. 2020;39 2:335–45.
Gao M, Wang Q, Nagendra ASK, Qu G. A novel data format for approximate arithmetic computing. In: 2017 22nd Asia and South Pacific design automation conference (ASP-DAC); 2017. p. 390–5.
Gao M, Wang Q, Qu G. Energy and error reduction using variable bit-width optimization on dynamic fixed point format. In: 2019 IEEE computer society annual symposium on VLSI (ISVLSI); 2019. p. 152–7.
Hashemi S, Bahar RI, Reda S. A low-power dynamic divider for approximate applications. In: 2016 53nd ACM/EDAC/IEEE design automation conference (DAC); 2016. p. 1–6.
Henkel J, Ernst R. High-level estimation techniques for usage in hardware/software co-design. In: Proceedings of 1998 Asia and South Pacific design automation conference; 1998. p. 353–60.
Hu X, Zhou T, Sha EM. Estimating probabilistic timing performance for real-time embedded systems. IEEE Trans Very Large Scale Integr Syst. 2001;9 6:833–844
Hua S, Qu G, Bhattacharyya SS. Energy reduction techniques for multimedia applications with tolerance to deadline misses. In: Proceedings of the 40th annual design automation conference (DAC’03); 2003. p. 131–6.
Hua S, Qu G, Bhattacharyya SS. Probabilistic design of multimedia embedded systems. ACM Trans Embed Comput Syst. 2007;6 3:15–es.
Jiang H, Han J, Lombardi F. A comparative review and evaluation of approximate adders. In: Proceedings of the 25th edition on great lakes symposium on VLSI (GLSVLSI’15). New York: Association for Computing Machinery; 2015. p. 343–8.
Kalavade A, Moghé P. A tool for performance estimation of networked embedded end-systems. In: Proceedings of the 35th annual design automation conference (DAC’98). New York: Association for Computing Machinery; 1998. p. 257–62.
Kianzad V, Bhattacharyya SS, Qu G. Casper: an integrated energy-driven approach for task graph scheduling on distributed embedded systems. In: 2005 IEEE international conference on application-specific systems, architecture processors (ASAP’05); 2005. p. 191–7.
Liu C, Han J, Lombardi F. A low-power, high-performance approximate multiplier with configurable partial error recovery. In: 2014 design, automation test in europe conference exhibition (DATE); 2014. p. 1–4.
Liu W, Qian L, Wang C, Jiang H, Han J, Lombardi F. Design of approximate radix-4 booth multipliers for error-tolerant computing. IEEE Trans Comput. 2017;66 8:1435–41.
Liu W, Lombardi F, Shulte M. A retrospective and prospective view of approximate computing [point of view]. Proc IEEE 2020;108 3: 394–9.
Madsen J, Grode J, Knudsen PV, Petersen ME, Haxthausen A. LYCOS: the lyngby co-synthesis system. Des Autom Embed Syst. 1997;2 2:195–235.
Malik S, Martonosi M, Li YTS. Static timing analysis of embedded software. In: Proceedings of the 34th annual design automation conference (DAC’97). New York: Association for Computing Machinery; 1997. p. 147–52.
Nannarelli A. Tunable floating-point adder. IEEE Trans Comput. 2019;68 10:1553–60.
Nepal K, Li Y, Bahar RI, Reda S. Abacus: a technique for automated behavioral synthesis of approximate computing circuits. In: 2014 design, automation test in Europe conference exhibition (DATE); 2014. p. 1–6.
Riehme J, Naumann U. Significance analysis for numerical models. In: 1st workshop on approximate computing (WAPCO); 2015. p. 0278–0070.
Roy P, Ray R, Wang C, Wong WF. ASAC: automatic sensitivity analysis for approximate computing. In: Proceedings of the 2014 SIGPLAN/SIGBED conference on languages, compilers and tools for embedded systems (LCTES’14). New York: Association for Computing Machinery; 2014. p. 95–104.
Sengupta D, Snigdha FS, Hu J, Sapatnekar SS. Saber: selection of approximate bits for the design of error tolerant circuits. In: 2017 54th ACM/EDAC/IEEE design automation conference (DAC); 2017. p. 1–6.
Snigdha FS, Sengupta D, Hu J, Sapatnekar SS. Optimal design of jpeg hardware under the approximate computing paradigm. In: 2016 53nd ACM/EDAC/IEEE design automation conference (DAC); 2016. p. 1–6.
Tia TS, Deng Z, Shankar M, Storch M, Sun J, Wu LC, Liu JS. Probabilistic performance guarantee for real-time tasks with varying computation times. In: Proceedings real-time technology and applications symposium; 1995. p. 164–73.
TMS320 DSP development support reference guide. Tech. Rep., Texas Instruments; 1998.
Wires KE, Schulte MJ, McCarley D. FPGA resource reduction through truncated multiplication. In: Proceedings of the 11th international conference on field-programmable logic and applications (FPL’01). Berlin: Springer; 2001. p. 574–83.
Xu Q, Sun G, Qu G. BWOLF: bit-width optimization for statistical divergence with -logarithmic functions. In: 2020 IEEE 31st international conference on application-specific systems, architectures and processors (ASAP); 2020. p. 165–72.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this chapter
Cite this chapter
Xu, Q., Arafin, M.T., Qu, G. (2022). Approximation on Data Flow Graph Execution for Energy Efficiency. In: Liu, W., Lombardi, F. (eds) Approximate Computing. Springer, Cham. https://doi.org/10.1007/978-3-030-98347-5_9
Download citation
DOI: https://doi.org/10.1007/978-3-030-98347-5_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-98346-8
Online ISBN: 978-3-030-98347-5
eBook Packages: Computer ScienceComputer Science (R0)