Skip to main content

Approximation on Data Flow Graph Execution for Energy Efficiency

  • Chapter
  • First Online:
Approximate Computing
  • 911 Accesses

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 99.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 129.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Boggs PT, Tolle JW. Sequential quadratic programming. Acta Numer. 1995;4:1–51.

    Article  MathSciNet  Google Scholar 

  2. 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.

    Google Scholar 

  3. 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.

    Article  Google Scholar 

  4. 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.

    Google Scholar 

  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.

    Google Scholar 

  6. 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.

    Google Scholar 

  7. 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.

    Google Scholar 

  8. 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

    Article  Google Scholar 

  9. 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.

    Google Scholar 

  10. Hua S, Qu G, Bhattacharyya SS. Probabilistic design of multimedia embedded systems. ACM Trans Embed Comput Syst. 2007;6 3:15–es.

    Google Scholar 

  11. 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.

    Chapter  Google Scholar 

  12. 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.

    Google Scholar 

  13. 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.

    Google Scholar 

  14. 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.

    Google Scholar 

  15. 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.

    Article  MathSciNet  Google Scholar 

  16. Liu W, Lombardi F, Shulte M. A retrospective and prospective view of approximate computing [point of view]. Proc IEEE 2020;108 3: 394–9.

    Article  Google Scholar 

  17. 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.

    Article  Google Scholar 

  18. 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.

    Chapter  Google Scholar 

  19. Nannarelli A. Tunable floating-point adder. IEEE Trans Comput. 2019;68 10:1553–60.

    Article  MathSciNet  Google Scholar 

  20. 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.

    Google Scholar 

  21. Riehme J, Naumann U. Significance analysis for numerical models. In: 1st workshop on approximate computing (WAPCO); 2015. p. 0278–0070.

    Google Scholar 

  22. 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.

    Chapter  Google Scholar 

  23. 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.

    Google Scholar 

  24. 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.

    Google Scholar 

  25. 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.

    Google Scholar 

  26. TMS320 DSP development support reference guide. Tech. Rep., Texas Instruments; 1998.

    Google Scholar 

  27. 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.

    Chapter  Google Scholar 

  28. 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.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gang Qu .

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics