GEO: Generation and Execution Optimized Stochastic Computing Accelerator for Neural Networks

Tianmu Lia, Wojciech Romaszkanb, Sudhakar Pamartic and Puneet Guptad
Electrical and Computer Engineering Department University of California, Los Angeles Los Angeles, USA
alitianmu1995@ucla.edu
bwromaszkan@ucla.edu
cspamarti@ucla.edu
dpuneetg@ucla.edu

ABSTRACT


Stochastic computing (SC) has seen a renaissance in recent years as a means for machine learning acceleration due to its compact arithmetic and approximation properties. Still, SC accuracy remains an issue, with prior works either not fully utilizing the computational density or suffering from significant accuracy losses. In this work, we propose GEO – Generation and Execution Optimized Stochastic Computing Accelerator for Neural Networks, which optimizes stream generation and execution components of SC, and bridges the accuracy gap between stochastic computing and fixed-point neural networks. It improves accuracy by coupling controlled stream sharing with training and balancing OR and binary accumulations. GEO further optimizes the SC execution through progressive shadow buffering and architectural optimizations. GEO can improve accuracy compared to state-of-the-art SC by 2.2-4.0% points while being up to 4.4X faster and 5.3X more energy efficient. GEO eliminates the accuracy gap between SC and fixed-point architectures while delivering up to 5.6X higher throughput and 2.6X lower energy.



Full Text (PDF)