What is stochastic computation?

  • Authors:
  • Naresh Shanbhag

  • Affiliations:
  • University of Illinois at Urbana-Champaign

  • Venue:
  • ACM SIGDA Newsletter
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Stochastic computation [shan-1] is a communications-inspired [shan-2] model of computation for jointly achieving robustness and energy-efficiency in systems implemented in nanoscale processes. Emerging applications, driven by societal needs in security, health and energy [jan], tend to be media/sensory data-intensive with primary emphasis on the extraction of features/models in order to enable cognitive, detection and decision-making tasks. Stochastic computation exploits the somewhat relaxed definition of "correctness" afforded by such applications by incorporating application-awareness and statistical performance metrics (e.g., signal-to-noise ratio (SNR) and bit error-rate (BER) in communications, probability of anomaly detection in biomedical applications and others) into the design of computational platforms. Nanoscale circuit and device fabrics exhibit artifacts such as process, voltage and temperature (PVT) variations, leakage, soft errors, and noise leading to intermittent errors and hence a reliability problem. Stochastic computation matches the error statistics of the underlying circuit fabrics to the statistical performance metrics of emerging applications in order to enhance robustness by orders-of-magnitude and simultaneously achieve significant energy-efficiency. It may seem that stochastic computation may not be applicable to small class of critical applications such as those in finance/banking, flight control systems, and others whereas precise definition of correctness is mandatory. This is until one realizes that the inherent communication mechanisms in such systems are in fact stochastic in nature.