Approximate computing across the hardware and software stacks

Muhammad Shafique, Osman Hasan, Rehan Hafiz, Sana Mazahir, Muhammad Abdullah Hanif, Semeen Rehman

Research output: Chapter in Book/Report/Conference proceedingChapter


Emerging fields like big data and IoT have brought a number of challenges for hardware as well as software design community. Some of the major challenges are to scale the computational and memory resources and the efficiency of the processing devices as per the growing needs. In the past few years, a number of fields have emerged for addressing these challenges. We focus on one of the prominent paradigms that have the potential to improve the resource efficiency regardless of the underlying technology, i.e., approximate computing (AC). AC aims at relaxing the bounds of exact computing to provide new opportunities for achieving gains in terms of energy, power, performance, and/or area efficiency at the cost of reduced output quality, typically within the tolerable range. We first provide an overview of AC and the techniques which are commonly being employed at different abstraction levels for alleviating the resource requirements of computationally intensive applications. Afterwards, a detailed discussion on component-level approximations and their probabilistic behavior by considering approximate adders and multipliers is presented. At the next step, a methodology used to construct efficient accelerators from these components will be discussed. The discussion will then be extended to approximate memories and runtime management systems. Toward the end of the chapter, we present a methodology for designing energy efficient many-core systems based upon approximate components followed by the challenges in adopting a cross-layer approach for designing highly energy, power, and performance-efficient systems.

Original languageEnglish (US)
Title of host publicationMany-Core Computing
PublisherInstitution of Engineering and Technology
Number of pages26
ISBN (Electronic)9781785615825
StatePublished - Jan 1 2019


  • AC
  • Adders
  • Approximate adders
  • Approximate computing
  • Approximate multipliers
  • Component-level approximations
  • Computational resources
  • Computationally intensive applications
  • Cross-layer approach
  • Energy efficient many-core systems
  • Exact computing
  • Logic and switching circuits
  • Memory architecture
  • Memory resources
  • Multiplying circuits
  • Multiprocessing systems
  • Multiprocessing systems
  • Operating systems
  • Output quality
  • Parallel architecture
  • Parallel architectures
  • Power aware computing
  • Processing devices
  • Resource allocation
  • Runtime management systems
  • Storage system design

ASJC Scopus subject areas

  • General Computer Science


Dive into the research topics of 'Approximate computing across the hardware and software stacks'. Together they form a unique fingerprint.

Cite this