Approximating Beyond the Processor: Exploring Full-System Energy-Accuracy Tradeoffs in a Smart Camera System

The intrinsic error resilience exhibited by emerging application domains enables new avenues for energy optimization of computing systems, namely, the introduction of a small amount of approximations during system operation in exchange for substantial energy savings. Prior work in the area of approximate computing has focused on individual subsystems of a computing system, for example, the computational subsystem or the memory subsystem. Since they focus only on individual subsystems, these techniques are unable to exploit the large energy-saving opportunities that stem from adopting a full-system perspective and approximating multiple subsystems of a computing platform simultaneously in a coordinated manner. This paper proposes a systematic methodology to perform joint approximations across different subsystems, leading to significant energy benefits compared to approximating individual subsystems in isolation. We use the example of a smart camera system that executes various computer vision and image processing applications to illustrate how the sensing, memory, processing, and communication subsystems can all be approximated synergistically. We demonstrate our proposed methodology using two variants of a smart camera system: 1) a compute-intensive smart camera system, <inline-formula> <tex-math notation="LaTeX">$\texttt {AxSYS}_{\texttt {comp}}$ </tex-math></inline-formula>, where the error-resilient application executes locally within the camera and produces the final application output, and 2) a communication-intensive smart camera system, <inline-formula> <tex-math notation="LaTeX">$\texttt {AxSYS}_{\texttt {comp}}$ </tex-math></inline-formula>, that sends the captured image to a remote cloud server, where the error-resilient application is executed and the final output is generated. We have implemented such an approximate smart camera system using an Altera Stratix IV GX FPGA development board, a Terasic TRDB-D5M 5-Megapixel camera module, a Terasic RFS WiFi module, and a 1-GB DDR3 dynamic random access memory small outline dual in-line memory module (SODIMM). Experimental results obtained using six application benchmarks demonstrate significant energy savings (around <inline-formula> <tex-math notation="LaTeX">$7.5\times $ </tex-math></inline-formula> for <inline-formula> <tex-math notation="LaTeX">$\texttt {AxSYS}_{\texttt {comp}}$ </tex-math></inline-formula> and <inline-formula> <tex-math notation="LaTeX">$4\times $ </tex-math></inline-formula> on average for <inline-formula> <tex-math notation="LaTeX">$\texttt {AxSYS}_{\texttt {comp}}$ </tex-math></inline-formula>) for minimal (<1%) loss in application quality. Compared to approximating a single subsystem, the proposed full-system approximation methodology achieves additional energy benefits of <inline-formula> <tex-math notation="LaTeX">$3.5\times $ </tex-math></inline-formula>–<inline-formula> <tex-math notation="LaTeX">$5.5\times $ </tex-math></inline-formula> (in the case of <inline-formula> <tex-math notation="LaTeX">$\texttt {AxSYS}_{\texttt {comp}}$ </tex-math></inline-formula>) and <inline-formula> <tex-math notation="LaTeX">$1.8\times $ </tex-math></inline-formula>–<inline-formula> <tex-math notation="LaTeX">$3.7\times $ </tex-math></inline-formula> (in the case of <inline-formula> <tex-math notation="LaTeX">$\texttt {AxSYS}_{\texttt {comm}}$ </tex-math></inline-formula>) on average for a minimal (<1%) application-level quality loss.