2016 · 101 citations · 26 references
ComputingComputer EngineeringComputer ScienceAlgorithmsComputer ArchitectureMachine LearningApproximation AlgorithmsParallel ArchitecturesParallel ComputationPerformance OptimizationApproximate ComputingApproximate Computing For Low PowerApproximate Computing For Power ReductionApproximate Machine LearningExecution Time AnalysisSynchronization Mechanisms
Approximate computing is gaining traction as a computing paradigm for data analytics and cognitive applications that aim to extract deep insight from vast quantities of data. In this paper, we demonstrate that multiple approximation techniques can be applied to applications in these domains and can be further combined together to compound their benefits. In assessing the potential of approximation in these applications, we took the liberty of changing multiple layers of the system stack: architecture, programming model, and algorithms. Across a set of applications spanning the domains of DSP, robotics, and machine learning, we show that hot loops in the applications can be perforated by an average of 50% with proportional reduction in execution time, while still producing acceptable quality of results. In addition, the width of the data used in the computation can be reduced to 10-16 bits from the currently common 32/64 bits with potential for significant performance and energy benefits. For parallel applications we reduced execution time by 50% using relaxed synchronization mechanisms. Finally, our results also demonstrate that benefits compounded when these techniques are applied concurrently. Our results across different applications demonstrate that approximate computing is a widely applicable paradigm with potential for compounded benefits from applying multiple techniques across the system stack. In order to exploit these benefits it is essential to re-think multiple layers of the system stack to embrace approximations ground-up and to design tightly integrated approximate accelerators. Doing so will enable moving the applications into a world in which the architecture, programming model, and even the algorithms used to implement the application are all fundamentally designed for approximate computing.
26
Learning representations by back-propagating errors
David E. Rumelhart, Geoffrey E. Hinton, Ronald J. Williams · Nature · 1986 · 30.9K citations
Object recognition from local scale-invariant features
David Lowe · 1999 · 16.2K citations
A Stochastic Approximation Method
Herbert Robbins, Sutton Monro · The Annals of Mathematical Statistics · 1951 · 9.6K citations · Full text
A benchmark for the evaluation of RGB-D SLAM systems
Jrgen Sturm, Nikolas Engelhard, Felix Endres et al. · 2012 · 3.9K citations
Maurice Herlihy, J. Eliot B. Moss · 1993 · 2.2K citations