Dissertation

Automated Floating-Point Precision Analysis

Overview

As scientific computation continues to scale, it is crucial to use floating-point arithmetic processors as efficiently as possible. Lower precision allows streaming architectures to perform more operations per second and can reduce memory bandwidth pressure on all architectures. However, using a precision that is too low for a given algorithm and data set will result in inaccurate results. Thus, developers must balance speed and accuracy when choosing the floating-point precision of their subroutines and data structures. I am investigating techniques to help developers learn about the runtime floating-point behavior of their programs, and to help them make decisions concerning the choice of precision in implementation.

I am developing methods that will generate floating-point precision configurations, automatically testing and validating them using binary instrumentation. The goal is ultimately to make a recommendation to the developer regarding which parts of the program can be reduced to single-precision. My thesis statement is as follows:

Automated analysis techniques can make recommendations regarding the precision levels that each part of a computer program must use to maintain overall accuracy, with the goal of improving performance on scientific codes.

I am currently pursuing my thesis by developing a software system called CRAFT: Configurable Runtime Analysis for Floating-point Tuning. For more information, please visit the project page.

Papers/Presentations

  • M. Lam. “Automatic Floating-Point Precision Analysis (Proposal).” Thesis proposal. Department of Computer Science, University of Maryland. 26 October 2011. (PDF)
  • M. Lam. “Binary-Level Tools for Floating-Point Correctness Analysis.” Project report. Laurence Livermore National Lab. 29 July 2011. (PPT)
  • M. Lam, G.W. Stewart, J. Hollingsworth. “Dynamic Floating-Point Cancellation Detection.” WHIST ’11. 4 June 2011. (PDF | PPT)
  • M. Lam. “Dynamic Floating-Point Cancellation Detection.” Master’s degree scholarly paper. Department of Computer Science, University of Maryland. 20 April 2010. (PDF)
  • M. Lam, G.W. Stewart, J. Hollingsworth. “Dynamic Floating-Point Cancellation Detection.” Presentation. Paradyn/Dyninst Week ’10. 13 April 2010. (PPT)
  • M. Lam, G.W. Stewart, J. Hollingsworth. “Using Dyninst to Measure Floating-point Error.” Presentation. Paradyn/Dyninst Week ’09. 28 April 2009. (PPT)
  • D. An, R. Blue, M. Lam, S. Piper, and G. Stoker. “FPInst: Floating Point Error Analysis Using Dyninst.” Report. 15 Dec 2008. (PDF)

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>