Floating-point arithmetic enables computers to smoothly and efficiently handle widely varying magnitudes such as the diameter of an atom or that of a star, and fit these measures within computer words that come in standard widths. Unfortunately, when calculations are performed on floating numbers, round-off errors are introduced, often causing real-world disasters, such as errant missile launches. While employing large computer word widths can minimize these errors, it also slows down computations, increases their memory, and energy needs. This project could have a broad impact by providing much needed debug support for scientific programmers to develop more reliable floating point programs.

This project develops novel ways to estimate round-off errors, thus helping programmers arrive at efficient floating-point computer codes. Special emphasis is placed on handling tricky cases such as squaring numbers and taking their trigonometric values where prior research had not sufficiently advanced. By developing powerful and automated tools for precision estimation, it allows programmers to tune their codes and pick word widths parsimoniously while not losing accuracy. The investigators use these tools to develop pedagogical material and best practices based on hands-on experience that helps inform students who typically are not taught the pitfalls of floating-point arithmetic.

Project Start
Project End
Budget Start
2014-07-01
Budget End
2018-06-30
Support Year
Fiscal Year
2014
Total Cost
$414,341
Indirect Cost
Name
University of Utah
Department
Type
DUNS #
City
Salt Lake City
State
UT
Country
United States
Zip Code
84112