Exploiting Errors for Efficiency: A Survey from Circuits to Algorithms

Phillip Stanley-Marbell, Armin Alaghi, Michael Carbin, Eva Darulova, Lara Dolecek, Andreas Gerstlauer, Syed Ghayoor Abbas Gillani, Djordje Jevdjic, Thierry Moreau, Mattia Cacciotti, Alexandros Daglis, Natalie Enright Jerger, Babak Falsafi, Sasa Misailovic, Adrian Sampson, Damien Zufferey

Research output: Working paperProfessional

10 Downloads (Pure)

Abstract

When a computational task tolerates a relaxation of its specification or when an algorithm tolerates the effects of noise in its execution, hardware, programming languages, and system software can trade deviations from correct behavior for lower resource usage. We present, for the first time, a synthesis of research results on computing systems that only make as many errors as their users can tolerate, from across the disciplines of computer aided design of circuits, digital system design, computer architecture, programming languages, operating systems, and information theory.
Rather than over-provisioning resources at each layer to avoid errors, it can be more efficient to exploit the masking of errors occurring at one layer which can prevent them from propagating to a higher layer. We survey tradeoffs for individual layers of computing systems from the circuit level to the operating system level and illustrate the potential benefits of end-to-end approaches using two illustrative examples. To tie together the survey, we present a consistent formalization of terminology, across the layers, which does not significantly deviate from the terminology traditionally used by research communities in their layer of focus.
Original languageEnglish
PublisherArXiv
Number of pages35
DOIs
Publication statusSubmitted - 2018

Fingerprint

Terminology
Computer programming languages
Networks (circuits)
Computer architecture
Computer operating systems
Information theory
Digital circuits
System theory
Computer hardware
Computer aided design
Computer systems
Systems analysis
Specifications

Cite this

Stanley-Marbell, P., Alaghi, A., Carbin, M., Darulova, E., Dolecek, L., Gerstlauer, A., ... Zufferey, D. (2018). Exploiting Errors for Efficiency: A Survey from Circuits to Algorithms. ArXiv. https://doi.org/arXiv:1809.05859 [cs.AR]
Stanley-Marbell, Phillip ; Alaghi, Armin ; Carbin, Michael ; Darulova, Eva ; Dolecek, Lara ; Gerstlauer, Andreas ; Gillani, Syed Ghayoor Abbas ; Jevdjic, Djordje ; Moreau, Thierry ; Cacciotti, Mattia ; Daglis, Alexandros ; Jerger, Natalie Enright ; Falsafi, Babak ; Misailovic, Sasa ; Sampson, Adrian ; Zufferey, Damien. / Exploiting Errors for Efficiency : A Survey from Circuits to Algorithms. ArXiv, 2018.
@techreport{c0da77742f804b1c91718d757f467fae,
title = "Exploiting Errors for Efficiency: A Survey from Circuits to Algorithms",
abstract = "When a computational task tolerates a relaxation of its specification or when an algorithm tolerates the effects of noise in its execution, hardware, programming languages, and system software can trade deviations from correct behavior for lower resource usage. We present, for the first time, a synthesis of research results on computing systems that only make as many errors as their users can tolerate, from across the disciplines of computer aided design of circuits, digital system design, computer architecture, programming languages, operating systems, and information theory. Rather than over-provisioning resources at each layer to avoid errors, it can be more efficient to exploit the masking of errors occurring at one layer which can prevent them from propagating to a higher layer. We survey tradeoffs for individual layers of computing systems from the circuit level to the operating system level and illustrate the potential benefits of end-to-end approaches using two illustrative examples. To tie together the survey, we present a consistent formalization of terminology, across the layers, which does not significantly deviate from the terminology traditionally used by research communities in their layer of focus.",
author = "Phillip Stanley-Marbell and Armin Alaghi and Michael Carbin and Eva Darulova and Lara Dolecek and Andreas Gerstlauer and Gillani, {Syed Ghayoor Abbas} and Djordje Jevdjic and Thierry Moreau and Mattia Cacciotti and Alexandros Daglis and Jerger, {Natalie Enright} and Babak Falsafi and Sasa Misailovic and Adrian Sampson and Damien Zufferey",
year = "2018",
doi = "arXiv:1809.05859 [cs.AR]",
language = "English",
publisher = "ArXiv",
type = "WorkingPaper",
institution = "ArXiv",

}

Stanley-Marbell, P, Alaghi, A, Carbin, M, Darulova, E, Dolecek, L, Gerstlauer, A, Gillani, SGA, Jevdjic, D, Moreau, T, Cacciotti, M, Daglis, A, Jerger, NE, Falsafi, B, Misailovic, S, Sampson, A & Zufferey, D 2018 'Exploiting Errors for Efficiency: A Survey from Circuits to Algorithms' ArXiv. https://doi.org/arXiv:1809.05859 [cs.AR]

Exploiting Errors for Efficiency : A Survey from Circuits to Algorithms. / Stanley-Marbell, Phillip; Alaghi, Armin; Carbin, Michael; Darulova, Eva; Dolecek, Lara; Gerstlauer, Andreas; Gillani, Syed Ghayoor Abbas; Jevdjic, Djordje; Moreau, Thierry; Cacciotti, Mattia; Daglis, Alexandros; Jerger, Natalie Enright; Falsafi, Babak; Misailovic, Sasa; Sampson, Adrian; Zufferey, Damien.

ArXiv, 2018.

Research output: Working paperProfessional

TY - UNPB

T1 - Exploiting Errors for Efficiency

T2 - A Survey from Circuits to Algorithms

AU - Stanley-Marbell, Phillip

AU - Alaghi, Armin

AU - Carbin, Michael

AU - Darulova, Eva

AU - Dolecek, Lara

AU - Gerstlauer, Andreas

AU - Gillani, Syed Ghayoor Abbas

AU - Jevdjic, Djordje

AU - Moreau, Thierry

AU - Cacciotti, Mattia

AU - Daglis, Alexandros

AU - Jerger, Natalie Enright

AU - Falsafi, Babak

AU - Misailovic, Sasa

AU - Sampson, Adrian

AU - Zufferey, Damien

PY - 2018

Y1 - 2018

N2 - When a computational task tolerates a relaxation of its specification or when an algorithm tolerates the effects of noise in its execution, hardware, programming languages, and system software can trade deviations from correct behavior for lower resource usage. We present, for the first time, a synthesis of research results on computing systems that only make as many errors as their users can tolerate, from across the disciplines of computer aided design of circuits, digital system design, computer architecture, programming languages, operating systems, and information theory. Rather than over-provisioning resources at each layer to avoid errors, it can be more efficient to exploit the masking of errors occurring at one layer which can prevent them from propagating to a higher layer. We survey tradeoffs for individual layers of computing systems from the circuit level to the operating system level and illustrate the potential benefits of end-to-end approaches using two illustrative examples. To tie together the survey, we present a consistent formalization of terminology, across the layers, which does not significantly deviate from the terminology traditionally used by research communities in their layer of focus.

AB - When a computational task tolerates a relaxation of its specification or when an algorithm tolerates the effects of noise in its execution, hardware, programming languages, and system software can trade deviations from correct behavior for lower resource usage. We present, for the first time, a synthesis of research results on computing systems that only make as many errors as their users can tolerate, from across the disciplines of computer aided design of circuits, digital system design, computer architecture, programming languages, operating systems, and information theory. Rather than over-provisioning resources at each layer to avoid errors, it can be more efficient to exploit the masking of errors occurring at one layer which can prevent them from propagating to a higher layer. We survey tradeoffs for individual layers of computing systems from the circuit level to the operating system level and illustrate the potential benefits of end-to-end approaches using two illustrative examples. To tie together the survey, we present a consistent formalization of terminology, across the layers, which does not significantly deviate from the terminology traditionally used by research communities in their layer of focus.

U2 - arXiv:1809.05859 [cs.AR]

DO - arXiv:1809.05859 [cs.AR]

M3 - Working paper

BT - Exploiting Errors for Efficiency

PB - ArXiv

ER -

Stanley-Marbell P, Alaghi A, Carbin M, Darulova E, Dolecek L, Gerstlauer A et al. Exploiting Errors for Efficiency: A Survey from Circuits to Algorithms. ArXiv. 2018. https://doi.org/arXiv:1809.05859 [cs.AR]