26 Jul 2005 13:18:20 -0400

Related articles |
---|

Sine and Cosine Accuracy on AMD64 and Pentium 4 scott.ladd@coyotegulch.com (Scott Robert Ladd) (2005-05-26) |

Re: Sine and Cosine Accuracy on AMD64 and Pentium 4 gah@ugcs.caltech.edu (glen herrmannsfeldt) (2005-05-28) |

Re: Sine and Cosine Accuracy on AMD64 and Pentium 4 jcrens@earthlink.net (Jack Crenshaw) (2005-07-17) |

Re: Sine and Cosine Accuracy on AMD64 and Pentium 4 Juergen.Kahrs@vr-web.de (=?ISO-8859-1?Q?J=FCrgen_Kahrs?=) (2005-07-17) |

Re: Sine and Cosine Accuracy on AMD64 and Pentium 4 gah@ugcs.caltech.edu (glen herrmannsfeldt) (2005-07-22) |

Re: Sine and Cosine Accuracy on AMD64 and Pentium 4 henry@spsystems.net (2005-07-26) |

From: | henry@spsystems.net (Henry Spencer) |

Newsgroups: | comp.compilers |

Date: | 26 Jul 2005 13:18:20 -0400 |

Organization: | SP Systems, Toronto, Canada |

References: | 05-05-215 05-07-075 05-07-082 |

Keywords: | arithmetic, testing |

Posted-Date: | 26 Jul 2005 13:18:20 EDT |

glen herrmannsfeldt <gah@ugcs.caltech.edu> wrote:

*>There are algorithms where maintaining identities is more important*

*>than accuracy, some of which go by the name symplectic.*

*>A dynamics problem, for example, may find that conservation of energy*

*>is more important than the accurate final positions of the objects.*

It's *very* common for numerical algorithms to depend much more on the

accuracy with which relationships between intermediate values are

preserved than on the accuracy of the individual intermediate values.

Kahan & Darcy observed, for example, that what matters to most matrix

algorithms is not the component-by-component accuracy of matrix

multiplication, but the magnitude of the error in some matrix norm

(that is, the size of `norm(product - A*B) / (norm(A)*norm(B))')

introduced by multiplication. This is significant because re-ordering

of the operations in matrix multiply to exploit pipelines, caches,

etc. -- which can make a huge difference in speed -- can noticeably

change component values but doesn't introduce significant error in

reasonable norms.

It can be very difficult to figure out just which relationships are

crucial to a particular algorithm, and how best to preserve them.

--

"Think outside the box -- the box isn't our friend." | Henry Spencer

-- George Herbert | henry@spsystems.net

Post a followup to this message

Return to the
comp.compilers page.

Search the
comp.compilers archives again.