A parametric error analysis of Goldschmidt's division algorithm

Guy Even*, Peter M. Seidel, Warren E. Ferguson

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

Abstract

Back in the 1960s Goldschmidt presented a variation of Newton-Raphson iterations for division that is well suited for pipelining. The problem in using Goldschmidt's division algorithm is to present an error analysis that enables one to save hardware by using just the right amount of precision for intermediate calculations while still providing correct rounding. Previous implementations relied on combining formal proof methods (that span thousands of lines) with millions of test vectors. These techniques yield correct designs but the analysis is hard to follow and is not quite tight. We present a simple parametric error analysis of Goldschmidt's division algorithm. This analysis sheds more light on the effect of the different parameters on the error. In addition, we derive closed error formulae that allow to determine optimal parameter choices in four practical settings. We apply our analysis to show that a few bits of precision can be saved in the floating-point division (FP-DIV) micro-architecture of the AMD-K7™microprocessor. These reductions in precision apply to the initial approximation and to the lengths of the multiplicands in the multiplier. When translated to cost, the reductions reflect a savings of 10.6% in the overall cost of the FP-DIV micro-architecture.

Original languageEnglish
Pages (from-to)118-139
Number of pages22
JournalJournal of Computer and System Sciences
Volume70
Issue number1
DOIs
StatePublished - Feb 2005

Keywords

  • Floating point arithmetic
  • Goldschmidt's division algorithm
  • Parametric error analysis

Fingerprint

Dive into the research topics of 'A parametric error analysis of Goldschmidt's division algorithm'. Together they form a unique fingerprint.

Cite this