Several strategies can be used for performing approximate computing.
Approximate circuits
Approximate arithmetic circuits: Approximate computing has been used in a variety of domains where the applications are error-tolerant, such as multimedia processing, machine learning, signal processing, scientific computing. Therefore, approximate computing is mostly driven by applications that are related to human perception/cognition and have inherent error resilience. Many of these applications are based on statistical or probabilistic computation, such as different approximations can be made to better suit the desired objectives.
One notable application in machine learning is that Google is using this approach in their Tensor processing units (TPU, a custom ASIC).
The main issue in approximate computing is the identification of the section of the application that can be approximated. In the case of large scale applications, it is very common to find people holding the expertise on approximate computing techniques not having enough expertise on the application domain (and vice versa). In order to solve this problem, programming paradigms have been proposed. They all have in common the clear role separation between application programmer and application domain expert. These approaches allow the spread of the most common optimizations and approximate computing techniques.
J. Han and M. Orshansky, "Approximate computing: An emerging paradigm for energy-efficient design", in the 18th IEEE European Test Symposium, pp. 1-6, 2013. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.701.4955&rep=rep1&type=pdf
A. Sampson, et al. "EnerJ: Approximate data types for safe and general low-power computation", In ACM SIGPLAN Notices, vol. 46, no. 6, 2011. http://dl.acm.org/citation.cfm?id=1993518
Jiang et al., "Approximate Arithmetic Circuits: A Survey, Characterization, and Recent Applications", the Proceedings of the IEEE, Vol. 108, No. 12, pp. 2108 - 2135, 2020. http://www.ece.ualberta.ca/~jhan8/publications/survey.pdf
J. Echavarria, et al. "FAU: Fast and Error-Optimized Approximate Adder Units on LUT-Based FPGAs", FPT, 2016.
J. Miao, et al. "Modeling and synthesis of quality-energy optimal approximate adders", ICCAD, 2012 https://repositories.lib.utexas.edu/bitstream/handle/2152/19706/miao_thesis_201291.pdf?sequence=1
Rehman, Semeen; El-Harouni, Walaa; Shafique, Muhammad; Kumar, Akash; Henkel, Jörg (2016-11-07). Architectural-space exploration of approximate multipliers. ACM. p. 80. doi:10.1145/2966986.2967005. ISBN 9781450344661. S2CID 5326133. 9781450344661
S. Venkataramani, et al. "SALSA: systematic logic synthesis of approximate circuits", DAC, 2012. http://algos.inesc-id.pt/projectos/approx/FCT/Ref-15.pdf
J. Miao, et al. "Approximate logic synthesis under general error magnitude and frequency constraints", ICCAD, 2013 http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.453.7870&rep=rep1&type=pdf
R. Hegde et al. "Energy-efficient signal processing via algorithmic noise-tolerance", ISLPED, 1999. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.33.8929&rep=rep1&type=pdf
Camus, Vincent; Mei, Linyan; Enz, Christian; Verhelst, Marian (December 2019). "Review and Benchmarking of Precision-Scalable Multiply-Accumulate Unit Architectures for Embedded Neural-Network Processing". IEEE Journal on Emerging and Selected Topics in Circuits and Systems. 9 (4): 697–711. Bibcode:2019IJEST...9..697C. doi:10.1109/JETCAS.2019.2950386. ISSN 2156-3357. The implementation chosen in this study assumes a rightshifting sequential multiplier as it requires a smaller firststage adder than a left-shifting design, preventing long carry propagation and sign-bit extension. https://doi.org/10.1109%2FJETCAS.2019.2950386
Nagornov, Nikolay N.; Lyakhov, Pavel A.; Bergerman, Maxim V.; Kalita, Diana I. (2024). "Modern Trends in Improving the Technical Characteristics of Devices and Systems for Digital Image Processing". IEEE Access. 12: 44659–44681. Bibcode:2024IEEEA..1244659N. doi:10.1109/ACCESS.2024.3381493. ISSN 2169-3536. Addition and accumulation of high order bits are not performed until the partial product reduction for the next multiplication in the proposed architecture. https://doi.org/10.1109%2FACCESS.2024.3381493
Raha, A.; Sutar, S.; Jayakumar, H.; Raghunathan, V. (July 2017). "Quality Configurable Approximate DRAM". IEEE Transactions on Computers. 66 (7): 1172–1187. doi:10.1109/TC.2016.2640296. ISSN 0018-9340. https://doi.org/10.1109%2FTC.2016.2640296
Kim, Yongjune; Choi, Won Ho; Guyot, Cyril; Cassuto, Yuval (December 2019). "On the Optimal Refresh Power Allocation for Energy-Efficient Memories". 2019 IEEE Global Communications Conference (GLOBECOM). Waikoloa, HI, USA: IEEE. pp. 1–6. arXiv:1907.01112. doi:10.1109/GLOBECOM38437.2019.9013465. ISBN 978-1-7281-0962-6. S2CID 195776538. 978-1-7281-0962-6
Frustaci, Fabio; Blaauw, David; Sylvester, Dennis; Alioto, Massimo (June 2016). "Approximate SRAMs With Dynamic Energy-Quality Management". IEEE Transactions on Very Large Scale Integration (VLSI) Systems. 24 (6): 2128–2141. doi:10.1109/TVLSI.2015.2503733. ISSN 1063-8210. S2CID 8051173. /wiki/David_Blaauw
Kim, Yongjune; Kang, Mingu; Varshney, Lav R.; Shanbhag, Naresh R. (2018). "Generalized Water-filling for Source-aware Energy-efficient SRAMs". IEEE Transactions on Communications. 66 (10): 4826–4841. arXiv:1710.07153. doi:10.1109/TCOMM.2018.2841406. ISSN 0090-6778. S2CID 24512949. https://ieeexplore.ieee.org/document/8368137
Kim, Yongjune; Jeon, Yoocharn; Choi, Hyeokjin; Guyot, Cyril; Cassuto, Yuval (2022). "Optimizing Write Fidelity of MRAMs by Alternating Water-filling Algorithm". IEEE Transactions on Communications. 70 (9): 5825–5836. doi:10.1109/TCOMM.2022.3190868. ISSN 0090-6778. S2CID 250565077. https://ieeexplore.ieee.org/document/9829735
C.Alippi, Intelligence for Embedded Systems: a Methodological approach, Springer, 2014, pp. 283
Esmaeilzadeh, Hadi; Sampson, Adrian; Ceze, Luis; Burger, Doug (2012). Neural acceleration for general-purpose approximate programs. 45th Annual IEEE/ACM International Symposium on Microarchitecture. Vancouver, BC: IEEE. pp. 449–460. doi:10.1109/MICRO.2012.48. /wiki/Doi_(identifier)
Raha, Arnab; Raghunathan, Vijay (2017). "Towards Full-System Energy-Accuracy Tradeoffs". Proceedings of the 54th Annual Design Automation Conference 2017. DAC '17. New York, NY, USA: ACM. pp. 74:1–74:6. doi:10.1145/3061639.3062333. ISBN 9781450349277. S2CID 2503638. 9781450349277
Ghosh, Soumendu Kumar; Raha, Arnab; Raghunathan, Vijay (2023-07-24). "Energy-Efficient Approximate Edge Inference Systems". ACM Transactions on Embedded Computing Systems. 22 (4): 77:1–77:50. doi:10.1145/3589766. ISSN 1539-9087. https://dl.acm.org/doi/10.1145/3589766
Liu, Weiqiang; Lombardi, Fabrizio; Schulte, Michael (Dec 2020). "Approximate Computing: From Circuits to Applications". Proceedings of the IEEE. 108 (12): 2103. doi:10.1109/JPROC.2020.3033361. https://doi.org/10.1109%2FJPROC.2020.3033361
Liu, Weiqiang; Lombardi, Fabrizio; Schulte, Michael (Dec 2020). "Approximate Computing: From Circuits to Applications". Proceedings of the IEEE. 108 (12): 2104. doi:10.1109/JPROC.2020.3033361. https://doi.org/10.1109%2FJPROC.2020.3033361
Nguyen, Donald; Lenharth, Andrew; Pingali, Keshav (2013). "A lightweight infrastructure for graph analytics". Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles. ACM. pp. 456–471. doi:10.1145/2517349.2522739. ISBN 9781450323888. 9781450323888