Return to search

Using Runtime Floating Point Accuracy Feedback to Make Automated Precision/Performance Improvements or Tradeoffs

<p>In this thesis, we design frameworks for efficient and accurate floating point computation. The principle underlying our frameworks is making information usually discarded in the hardware, specifically, in the floating point unit, visible to the programmer. The programmer, or automated tools that we developed, can use this information to make accuracy/performance improvements or tradeoffs. </p><p>We make the error of floating point additions architecturally visible to programmers and experimentally demonstrate that programmers can use this error to improve the accuracy of their applications or improve the application's performance without affecting the accuracy of the final result. To free programmers from having to manually instrument their code, we develop a compiler pass to automate this process.</p><p>We also design a framework to profile applications to measure undesirable numerical behavior at the floating point operation level. We develop a debugger that programmers can use to find variables with "bad" behavior. In addition, we present a profile driven mixed precision analysis framework that heuristically determines the precision of all variables in an application based on their numerical behavior. We experimentally evaluate the mixed precision analysis to show that it can generate a range of results with different accuracies and precisions.</p> / Dissertation

Identiferoai:union.ndltd.org:DUKE/oai:dukespace.lib.duke.edu:10161/9813
Date January 2015
CreatorsNathan, Ralph
ContributorsSorin, Daniel J
Source SetsDuke University
Detected LanguageEnglish
TypeDissertation

Page generated in 0.0021 seconds