Article View: comp.lang.fortran
Article #6535Re: Precision of floating point multiply
From: Nick Maclaren
Date: Tue, 30 Sep 2003 07:50
Date: Tue, 30 Sep 2003 07:50
42 lines
3365 bytes
3365 bytes
In article <Zs2eb.157980$0v4.11847973@bgtnsc04-news.ops.worldnet.att.net>, "James Giles" <jamesgiles@worldnet.att.net> writes: |> Glen Herrmannsfeldt wrote: |> > "James Giles" <jamesgiles@worldnet.att.net> wrote in message |> > news:r%0eb.163529$3o3.11771639@bgtnsc05-news.ops.worldnet.att.net... |> ... |> >> That's probably a correct assessment. In fact, on the system in question, |> >> where "rounding" results to single precision is done by truncation, it |> >> could be argued that leaving "garbage bits" simulates the missing data! |> >> Yes, I have heard appalling reasoning of that kind. |> > |> > Well, since truncating is systematic at puting in zeros, random bits would, |> > on the average, be closer. |> > |> > The process of digitizing analog data, such as converting analog audio into |> > digital form, works best with a process called dithering. Random noise of |> > approximately 1 LSB in amplitude is added before sampling. The left over |> > bits in registers might not be very random, though. Using true random |> > bits, one might even be able to sum into a single precision register and get |> > good results! |> |> Or not. The problem is that using "garbage bits" doesn't permit any |> useful or reliable analysis of the algorithms. Clearing the bits does. |> Further, clearing the bits allows algorithmic work-arounds (like |> Kahan's summation). Keeping "garbage bits" simply makes that |> inoperable. Yes, definitely. Despite Kahan's analysis, there are very good reasons to want true probabilistic rounding. Several of us have analysed that it has BETTER properties than nearest rounding (of any type) in some important operations, like vector summation. My limited experiments indicated that these benefits mean that it delivers comparable accuracy to nearest rounding on at least one of the analyses where the latter does well. But note that means TRUE probabilistic rounding - accept no imitations! Regards, Nick Maclaren.
Technical Details
Message-ID:
<blbcjf$lrn$1@pegasus.csx.cam.ac.uk>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!newsfeed.stanford.edu!headwall.stanford.edu!fu-berlin.de!server1.netnews.ja.net!pegasus.csx.cam.ac.uk!nmm1References:
<dG4db.598668$uu5.97984@sccrnsc04> <xrXdb.631209$Ho3.121609@sccrnsc03> <bl9ild$abv$1@pegasus.csx.cam.ac.uk> <Rh0eb.632709$Ho3.121617@sccrnsc03> <bla4k2$nas$1@pegasus.csx.cam.ac.uk> <FR0eb.637973$uu5.101567@sccrnsc04> <r%0eb.163529$3o3.11771639@bgtnsc05-news.ops.worldnet.att.net> <bY1eb.633341$Ho3.121512@sccrnsc03> <Zs2eb.157980$0v4.11847973@bgtnsc04-news.ops.worldnet.att.net>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fd4af,7830916812112af0 X-Google-Attributes: gidfd4af,public X-Google-Thread: fd705,7830916812112af0 X-Google-Attributes: gidfd705,public X-Google-Thread: 102b75,7830916812112af0 X-Google-Attributes: gid102b75,public X-Google-Thread: 1094ba,7830916812112af0 X-Google-Attributes: gid1094ba,public X-Google-ArrivalTime: 2003-09-30 00:50:14 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!newsfeed.stanford.edu!headwall.stanford.edu!fu-berlin.de!server1.netnews.ja.net!pegasus.csx.cam.ac.uk!nmm1 From: nmm1@cus.cam.ac.uk (Nick Maclaren) Newsgroups: comp.lang.fortran,comp.arch,bit.listserv.ibm-main,alt.folklore.computers Subject: Re: Precision of floating point multiply Date: 30 Sep 2003 07:50:07 GMT Organization: University of Cambridge, England Lines: 42 Message-ID: <blbcjf$lrn$1@pegasus.csx.cam.ac.uk> References: <dG4db.598668$uu5.97984@sccrnsc04> <xrXdb.631209$Ho3.121609@sccrnsc03> <bl9ild$abv$1@pegasus.csx.cam.ac.uk> <Rh0eb.632709$Ho3.121617@sccrnsc03> <bla4k2$nas$1@pegasus.csx.cam.ac.uk> <FR0eb.637973$uu5.101567@sccrnsc04> <r%0eb.163529$3o3.11771639@bgtnsc05-news.ops.worldnet.att.net> <bY1eb.633341$Ho3.121512@sccrnsc03> <Zs2eb.157980$0v4.11847973@bgtnsc04-news.ops.worldnet.att.net> NNTP-Posting-Host: virgo.cus.cam.ac.uk Originator: nmm1@virgo.cus.cam.ac.uk