Precimonious: Tuning Assistant for Floating-Point Precision

Speaker: Cindy Rubio Gonzalez , University of California, Berkeley

Date: Wednesday, November 06, 2013

Time: 11:00 AM to 12:00 PM Note: all times are in the Eastern Time Zone

Refreshments: 10:45 AM

Public: Yes

Location: 32-G449

Event Type:

Room Description:

Host: Martin Rinard/Michael Carbin, CSAIL

Contact: Mary McDavitt, 617-253-9620,

Relevant URL:

Speaker URL: None

Speaker Photo:


Reminder Subject: TALK: Precimonious: Tuning Assistant for Floating-Point Precision

The use of floating-point applications has been growing rapidly over the past few years. Unfortunately, testing and debugging floating-point programs is a difficult task given the large variety of numerical errors that can occur in these programs, including extreme sensitivity to roundoff, incorrectly handled exceptions, and nonreproducibility across machines or even across runs on the same machine. One common practice employed by developers without an advanced background in numerical analysis is using the highest available precision. While more robust, this can affect program performance significantly.

In this talk, I will present Precimonious, our dynamic program analysis tool to assist developers in tuning the precision of their floating-point programs. Precimonious performs a search on the types of the floating-point program variables trying to lower their precision subject to accuracy constraints and performance goals. Our tool recommends a type instantiation that uses lower precision while producing an accurate enough answer without causing exceptions. We have evaluated Precimonious on the NAS Parallel Benchmarks, a few widely-used functions from the GNU Scientific Library, and three other numerical programs. For most of the programs tested, Precimonious successfully reduces precision, which results in performance improvements as high as 41%.

Cindy is currently a Postdoctoral Researcher in the EECS Department at the University of California, Berkeley, where she works with Koushik Sen, James Demmel, William Kahan, and Costin Iancu. She recently received her Ph.D. in Computer Sciences from the University of Wisconsin–Madison, advised by Prof. Ben Liblit. Her research area of interest is Programming Languages, with a specific focus on Program Analysis. For her doctoral dissertation, she worked on applying static program analysis techniques to find error-propagation bugs in large software systems, including the Linux kernel.
She is an AAUW International Doctoral Fellow, and currently serves as a Latina in Computing ambassador for the Anita Borg Institute. Cindy earned her M.S. in Computer Science from the University of Wisconsin–Milwaukee and her B.S. in Computer Systems Engineering from Saltillo Institute of Technology (Mexico). She also received a B.M. in Piano Performance from the Autonomous University of Coahuila (Mexico). Cindy is originally from Saltillo, Coahuila, México.

Research Areas:

Impact Areas:

This event is not part of a series.

Created by Mary McDavitt Email at Wednesday, October 30, 2013 at 1:00 PM.