Dissertation

Automated Floating-Point Precision Analysis

Abstract

As scientific computation continues to scale upward, correct and efficient use of floating-point arithmetic is crucially important. Users of floating-point arithmetic encounter many problems, including rounding error, cancellation, and a tradeoff between performance and accuracy. This dissertation addresses these issues by introducing techniques for automated floating-point precision analysis. The contributions include a software framework that enables floating-point program analysis at the binary level, as well as specific techniques for cancellation detection, mixed-precision configuration, and reduced-precision sensitivity analysis. This work demonstrates that automated, practical techniques can provide insights regarding floating-point behavior as well as guidance towards acceptable precision level reduction. The tools and techniques in this dissertation represent novel contributions to the fields of high performance computing and program analysis, and serve as the first major step towards the larger vision of automated floating-point precision and performance tuning.

My thesis statement is as follows:

Automated runtime analysis techniques can inform application developers regarding floating-point behavior, and can provide insights to guide developers towards reducing precision with minimal impact on accuracy.

As part of my dissertation research, I have developed a software system called CRAFT: Configurable Runtime Analysis for Floating-point Tuning. For more information, please visit the project page.

Papers/Presentations

  • M. Lam. “Automated Floating-Point Precision Analysis.” Ph.D. Dissertation. 17 January 2014. (PDF)
  • M. Lam, J. Hollingsworth, B. de Supinski, and M. LeGendre. “Automatically Adapting Programs for Mixed-Precision Floating-Point Computation.” ICS’13. (PDF)
  • M. Lam, G.W. Stewart, and J. Hollingsworth. “Dynamic floating-point cancellation detection.” PARCO 2012. (PDF)
  • M. Lam. “Automatic Floating-Point Precision Analysis (Proposal).” Thesis proposal. Department of Computer Science, University of Maryland. 26 October 2011. (PDF)
  • M. Lam, G.W. Stewart, and J. Hollingsworth. “Dynamic Floating-Point Cancellation Detection.” WHIST ’11. (PDF)
  • D. An, R. Blue, M. Lam, S. Piper, and G. Stoker. “FPInst: Floating Point Error Analysis Using Dyninst.” Report. 15 Dec 2008. (PDF)

Posters/Presentations

  • M. Lam. “Automated Floating-Point Precision Analysis.” Thesis defense. 6 January 2014. (PPTX)
  • M. Lam, J. Hollingsworth, B. de Supinski, and M. LeGendre. “Automatically Adapting Programs for Mixed-Precision Floating-Point Computation.” ICS’13. 14 June 2013. (PPT)
  • M. Lam, J. Hollingsworth, B. de Supinski, and M. LeGendre. “Automatically Adapting Programs for Mixed-Precision Floating-Point Computation.” Poster, SC’12. (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, and J. Hollingsworth. “Dynamic Floating-Point Cancellation Detection.” WHIST ’11. 4 June 2011. (PPT)

Leave a Reply

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