Cindy Rubio Gonzalez


Dynamic Analyses for Floating-Point Precision Tuning

December 12, 2017 at 12:00pm (lunch talk) CSE 305


Given the variety of numerical errors that can occur, floating-point programs are difficult to write, test and debug. One common practice among developers is to use the highest available precision. While more robust, this can degrade program performance significantly. In this talk, I will present two dynamic analyses to assist programmers in tuning the precision of their floating-point programs. First, I will present Precimonious, a tool that performs a search on the types of floating-point variables to lower their precision subject to accuracy constraints and performance goals. Second, I will present Blame Analysis, an analysis that performs shadow execution side-by-side with concrete execution to determine, in isolation, the precision requirements of instruction operands for various levels of accuracy. The analysis later propagates precision requirements to produce a global solution given a target instruction and an accuracy constraint. I will present the evaluation of Precimonious, and Blame Analysis. In particular, I will show how combining Blame Analysis and Precimonious leads to more efficient precision tuning (the combined analysis time is 9x faster than Precimonious alone on average).


Cindy Rubio-Gonzalez is an Assistant Professor of Computer Science at the University of California, Davis. Prior to that position, she was a Postdoctoral Researcher in the EECS Department at the University of California, Berkeley. She received her Ph.D. in Computer Science from the University of Wisconsin–Madison in 2012. Cindy’s work spans the areas of Programming Languages and Software Engineering, with a focus on program analysis for automated bug finding, bug fixing, and program optimization. She is particularly interested in the reliability and performance of systems software and scientific computing applications. Cindy is a recipient of the Hellman Fellowship 2017, UC Davis CAMPOS Faculty Award 2014, and AAUW International Doctoral Fellowship 2008. Cindy earned her M.S. in Computer Science from the University of Wisconsin–Milwaukee and her B.S. in Computer Engineering from Saltillo Institute of Technology (Mexico). She also holds a B.M. in Piano Performance from the Autonomous University of Coahuila (Mexico).