The Laplace Microarchitecture for Tracking Data Uncertainty and Its Implementation in a RISC-V Processor

We present Laplace, a microarchitecture for tracking machine representations of probability distributions paired with architectural state. We present two new methods for in-processor distribution representations which are approximations of probability distributions just as floating-point number representations are approximations of real-valued numbers. Laplace executes unmodified RISC-V binaries and can track uncertainty through them. We present two sets of ISA extensions to provide a mechanism to initialize distributional information in the microarchitecture and to allow applications to query statistics of the distributional information without exposing the uncertainty representations above the ISA. We evaluate the accuracy and performance of Laplace using a suite of 21 benchmarks spanning domains ranging from variational quantum algorithms and sensor data processing to materials properties modeling. Monte Carlo simulation on the benchmarks requires 2 076 × more instructions on average (and up to 21 343 × in some cases) to achieve the same accuracy that Laplace can achieve in a single execution. Compared to state-of-the-art alternatives to Monte Carlo, Laplace achieves an average 1.3 × accuracy improvement versus PaCAL [22] and more than 4.6 × accuracy improvement versus the method used by the NIST Uncertainty Machine [26], quantified using the Wasserstein distance to Monte Carlo. Unlike existing methods for uncertainty tracking which require software to be rewritten in a domain-specific language or extensive source-level changes, Laplace achieves all of these benefits while requiring no changes to existing binaries in order to track uncertainty through them, with only minimal changes required to get uncertainty information into the microarchitecture. We have deployed an implementation of Laplace as a commercial product in the form of a cloud-accessible virtual machine.

[1]  P. Moral Nonlinear filtering : Interacting particle resolution , 1997 .

[2]  Ian Briggs,et al.  Rigorous Estimation of Floating-Point Round-Off Errors with Symbolic Taylor Expansions , 2015, FM.

[3]  Jun S. Liu,et al.  Sequential Monte Carlo methods for dynamic systems , 1997 .

[4]  Reuven Y. Rubinstein,et al.  Simulation and the Monte Carlo method , 1981, Wiley series in probability and mathematical statistics.

[5]  H. Watanabe,et al.  RISC approach to design of fuzzy processor architecture , 1992, [1992 Proceedings] IEEE International Conference on Fuzzy Systems.

[6]  Alessandro De Gloria,et al.  Fuzzy logic microcontroller , 1997, IEEE Micro.

[7]  Thomas Lafarge,et al.  The NIST Uncertainty Machine , 2015 .

[8]  Robert LIN,et al.  NOTE ON FUZZY SETS , 2014 .

[9]  R. Weisberg A-N-D , 2011 .

[10]  Neil I. Gillespie,et al.  Practical Quantum Computing: The value of local computation. , 2020, 2009.08513.

[11]  Song Liu,et al.  Flikker: saving DRAM refresh-power through critical data partitioning , 2011, ASPLOS XVI.

[12]  Marco Cuturi,et al.  On Wasserstein Two-Sample Testing and Related Families of Nonparametric Tests , 2015, Entropy.

[13]  Luis Ceze,et al.  Neural Acceleration for General-Purpose Approximate Programs , 2014, IEEE Micro.

[14]  George J. Klir,et al.  Fuzzy Sets, Fuzzy Logic, and Fuzzy Systems - Selected Papers by Lotfi A Zadeh , 1996, Advances in Fuzzy Systems - Applications and Theory.

[15]  Szymon Jaroszewicz,et al.  Arithmetic Operations on Independent Random Variables: A Numerical Approach , 2012, SIAM J. Sci. Comput..

[16]  Isaac L. Chuang,et al.  Confident Learning: Estimating Uncertainty in Dataset Labels , 2019, J. Artif. Intell. Res..

[17]  Rudolph van der Merwe,et al.  The unscented Kalman filter for nonlinear estimation , 2000, Proceedings of the IEEE 2000 Adaptive Systems for Signal Processing, Communications, and Control Symposium (Cat. No.00EX373).

[18]  Isabelle Guyon,et al.  Comparison of classifier methods: a case study in handwritten digit recognition , 1994, Proceedings of the 12th IAPR International Conference on Pattern Recognition, Vol. 3 - Conference C: Signal Processing (Cat. No.94CH3440-5).

[19]  David Chen,et al.  Evaluation of min/max instructions for fuzzy information processing , 1996, IEEE Trans. Fuzzy Syst..

[20]  E. Iso,et al.  Measurement Uncertainty and Probability: Guide to the Expression of Uncertainty in Measurement , 1995 .

[21]  P. Bowen,et al.  On the modelling of precipitation kinetics in a turbine disc nickel based superalloy , 2020 .

[22]  Kathryn S. McKinley,et al.  Uncertain: a first-order type for uncertain data , 2014, ASPLOS.

[23]  Henry Medeiros,et al.  A parallel histogram-based particle filter for object tracking on SIMD-based smart cameras , 2010, Comput. Vis. Image Underst..

[24]  Valentina Salapura,et al.  A fuzzy RISC processor , 2000, IEEE Trans. Fuzzy Syst..

[25]  Woongki Baek,et al.  Green: a framework for supporting energy-conscious programming using controlled approximation , 2010, PLDI '10.

[26]  Yvon Savaria,et al.  Parallel array histogram architecture for embedded implementations , 2013 .

[27]  Enrique Fernández-Blanco,et al.  A Public Domain Dataset for Real-Life Human Activity Recognition Using Smartphone Sensors , 2020, Sensors.

[28]  J. A. Rodriguez,et al.  VLSI architecture design for particle filtering in real-time , 2014, 2014 Argentine Conference on Micro-Nanoelectronics, Technology and Applications (EAMTA).

[29]  Marc Pouzet,et al.  Reactive probabilistic programming , 2019, PLDI.

[30]  Luis Ceze,et al.  Architecture support for disciplined approximate programming , 2012, ASPLOS XVII.

[31]  M. Sasaki,et al.  7.5 MFLIPS fuzzy microprocessor using SIMD and logic-in-memory structure , 1993, [Proceedings 1993] Second IEEE International Conference on Fuzzy Systems.

[32]  Yvon Savaria,et al.  A reformulated systematic resampling algorithm for particle filters and its parallel implementation in an application-specific instruction-set processor , 2013, 2013 IEEE 56th International Midwest Symposium on Circuits and Systems (MWSCAS).

[33]  Robin Willink,et al.  Measurement Uncertainty and Probability: References , 2013 .

[34]  Diana Marculescu,et al.  Sunflower : Full-System, Embedded Microarchitecture Evaluation , 2007, HiPEAC.

[35]  Simon J. Julier,et al.  The scaled unscented transformation , 2002, Proceedings of the 2002 American Control Conference (IEEE Cat. No.CH37301).

[36]  Fredrik Bagge Carlson MonteCarloMeasurements.jl: Nonlinear Propagation of Arbitrary Multivariate Distributions by means of Method Overloading , 2020, ArXiv.

[37]  Matthieu Martel,et al.  Toward a Standard Benchmark Format and Suite for Floating-Point Analysis , 2016, NSV@CAV.

[38]  Andrew Waterman,et al.  The RISC-V Instruction Set Manual. Volume 1: User-Level ISA, Version 2.0 , 2014 .

[39]  H. Watanabe,et al.  Evaluation of fuzzy instructions in a RISC processor , 1993, [Proceedings 1993] Second IEEE International Conference on Fuzzy Systems.

[40]  Thu D. Nguyen,et al.  Uncertainty Propagation in Data Processing Systems , 2018, SoCC.

[41]  K. Pearson Contributions to the Mathematical Theory of Evolution. II. Skew Variation in Homogeneous Material , 1895 .

[42]  Yunsup Lee,et al.  The RISC-V Instruction Set Manual , 2014 .

[43]  Shuja A. Abbasi,et al.  VLSI Architecture of Fuzzy Logic Hardware Implementation: a Review , 2011 .

[44]  Simon Maskell,et al.  A Single Instruction Multiple Data Particle Filter , 2006, 2006 IEEE Nonlinear Statistical Signal Processing Workshop.

[45]  Ganesh Gopalakrishnan,et al.  Rigorous Estimation of Floating-Point Round-off Errors with Symbolic Taylor Expansions , 2015, FM.

[46]  Heiko Becker,et al.  Combining Tools for Optimization and Analysis of Floating-Point Computations , 2018, FM.

[47]  W. G. Bowman,et al.  Young's modulus , 2014 .

[48]  James Bornholt Abstractions and Techniques for Programming with Uncertain Data , 2013 .

[49]  Nathan Wiebe,et al.  Efficient Bayesian Phase Estimation. , 2015, Physical review letters.

[50]  Henry Medeiros,et al.  A parallel color-based particle filter for object tracking , 2008, 2008 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops.

[51]  S. Brierley,et al.  Accelerated Variational Quantum Eigensolver. , 2018, Physical review letters.