Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Clothes make the man. Naked people have little or no influence on society. -- Mark Twain


devel / comp.arch / Re: Perfect roudning of trogonometric functions

SubjectAuthor
* Mixed EGU/EGO floating-pointQuadibloc
`* Re: Mixed EGU/EGO floating-pointMitchAlsup
 +* Re: Mixed EGU/EGO floating-pointMitchAlsup
 |`- Re: Mixed EGU/EGO floating-pointQuadibloc
 +* Re: Mixed EGU/EGO floating-pointQuadibloc
 |`* Re: Mixed EGU/EGO floating-pointAnton Ertl
 | +* Re: Mixed EGU/EGO floating-pointMitchAlsup
 | |`- Re: Mixed EGU/EGO floating-pointMichael S
 | +* Re: Mixed EGU/EGO floating-pointJohn Levine
 | |+- Re: Mixed EGU/EGO floating-pointJohn Dallman
 | |+- Re: Mixed EGU/EGO floating-pointAnton Ertl
 | |+* Re: Mixed EGU/EGO floating-pointJimBrakefield
 | ||`- Re: Mixed EGU/EGO floating-pointEricP
 | |`- Re: Mixed EGU/EGO floating-pointMichael S
 | `* Re: Mixed EGU/EGO floating-pointTerje Mathisen
 |  +* Re: Mixed EGU/EGO floating-pointIvan Godard
 |  |+* Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  ||`- Re: Mixed EGU/EGO floating-pointIvan Godard
 |  |+* Re: Mixed EGU/EGO floating-pointAnton Ertl
 |  ||`* Re: Mixed EGU/EGO floating-pointThomas Koenig
 |  || +* Re: Mixed EGU/EGO floating-pointEricP
 |  || |+* Re: Mixed EGU/EGO floating-pointThomas Koenig
 |  || ||`- Re: Mixed EGU/EGO floating-pointBGB
 |  || |+- Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  || |`* Re: Mixed EGU/EGO floating-pointStephen Fuld
 |  || | +- Re: Mixed EGU/EGO floating-pointEricP
 |  || | +- Re: Mixed EGU/EGO floating-pointJohn Levine
 |  || | +* Re: Mixed EGU/EGO floating-pointTerje Mathisen
 |  || | |`- Re: Mixed EGU/EGO floating-pointIvan Godard
 |  || | `- Re: Mixed EGU/EGO floating-pointGeorge Neuner
 |  || +* Re: Mixed EGU/EGO floating-pointStephen Fuld
 |  || |`- Re: Mixed EGU/EGO floating-pointEricP
 |  || +- Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  || `* Re: Mixed EGU/EGO floating-pointAnton Ertl
 |  ||  `* Re: Mixed EGU/EGO floating-pointThomas Koenig
 |  ||   +* Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  ||   |`* Re: Mixed EGU/EGO floating-pointThomas Koenig
 |  ||   | +* Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  ||   | |+* Re: Mixed EGU/EGO floating-pointStefan Monnier
 |  ||   | ||+- Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  ||   | ||`* Re: Mixed EGU/EGO floating-pointIvan Godard
 |  ||   | || `* Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  ||   | ||  `* Re: Mixed EGU/EGO floating-pointBGB
 |  ||   | ||   `* Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  ||   | ||    `- Re: Mixed EGU/EGO floating-pointBGB
 |  ||   | |`* Re: Mixed EGU/EGO floating-pointAnton Ertl
 |  ||   | | `- Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  ||   | `* Re: Mixed EGU/EGO floating-pointAnton Ertl
 |  ||   |  `- Re: Mixed EGU/EGO floating-pointThomas Koenig
 |  ||   `* Re: Mixed EGU/EGO floating-pointAnton Ertl
 |  ||    +* Re: Mixed EGU/EGO floating-pointBGB
 |  ||    |`- Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  ||    `* Re: Mixed EGU/EGO floating-pointThomas Koenig
 |  ||     `- Re: Mixed EGU/EGO floating-pointMitchAlsup
 |  |`- Re: Mixed EGU/EGO floating-pointTerje Mathisen
 |  `* Re: Mixed EGU/EGO floating-pointMitchAlsup
 |   `- Re: Mixed EGU/EGO floating-pointBGB
 +* Re: Mixed EGU/EGO floating-pointJimBrakefield
 |`* Re: Mixed EGU/EGO floating-pointQuadibloc
 | +* Re: Mixed EGU/EGO floating-pointMitchAlsup
 | |+- Re: Mixed EGU/EGO floating-pointJimBrakefield
 | |`* Perfect roudning of trogonometric functions (was: Mixed EGU/EGO floating-point)Stefan Monnier
 | | `* Re: Perfect roudning of trogonometric functionsTerje Mathisen
 | |  `* Re: Perfect roudning of trogonometric functionsStefan Monnier
 | |   `- Re: Perfect roudning of trogonometric functionsTerje Mathisen
 | `* Re: Mixed EGU/EGO floating-pointEricP
 |  `* Re: Mixed EGU/EGO floating-pointMitchAlsup
 |   +- Re: Mixed EGU/EGO floating-pointJimBrakefield
 |   +- Re: Mixed EGU/EGO floating-pointTerje Mathisen
 |   `- Re: Mixed EGU/EGO floating-pointEricP
 `* Re: Mixed EGU/EGO floating-pointBGB
  `* Re: Mixed EGU/EGO floating-pointMitchAlsup
   +* Re: Mixed EGU/EGO floating-pointStefan Monnier
   |`* Re: Mixed EGU/EGO floating-pointBGB
   | `* Re: Mixed EGU/EGO floating-pointJohn Dallman
   |  +- Re: Mixed EGU/EGO floating-pointMitchAlsup
   |  +* Re: Mixed EGU/EGO floating-pointThomas Koenig
   |  |+- Re: Mixed EGU/EGO floating-pointJohn Dallman
   |  |+* Re: Mixed EGU/EGO floating-pointBGB
   |  ||`* Re: Mixed EGU/EGO floating-pointMitchAlsup
   |  || `* Re: Mixed EGU/EGO floating-pointBGB
   |  ||  `* Re: Mixed EGU/EGO floating-pointMitchAlsup
   |  ||   +* Re: Mixed EGU/EGO floating-pointIvan Godard
   |  ||   |`- Re: Mixed EGU/EGO floating-pointMitchAlsup
   |  ||   `* Re: Mixed EGU/EGO floating-pointBGB
   |  ||    `* Re: Mixed EGU/EGO floating-pointMitchAlsup
   |  ||     `* Re: Mixed EGU/EGO floating-pointBGB
   |  ||      `* Re: Mixed EGU/EGO floating-pointMitchAlsup
   |  ||       `- Re: Mixed EGU/EGO floating-pointBGB
   |  |`* Re: Mixed EGU/EGO floating-pointAnton Ertl
   |  | `* Re: Mixed EGU/EGO floating-pointMitchAlsup
   |  |  +* Re: Mixed EGU/EGO floating-pointQuadibloc
   |  |  |+- Re: Mixed EGU/EGO floating-pointMitchAlsup
   |  |  |`* Re: Mixed EGU/EGO floating-pointAnton Ertl
   |  |  | `- Re: Mixed EGU/EGO floating-pointQuadibloc
   |  |  `* Re: Mixed EGU/EGO floating-pointAnton Ertl
   |  |   `* Re: Mixed EGU/EGO floating-pointMitchAlsup
   |  |    +* Re: Mixed EGU/EGO floating-pointBGB
   |  |    |`* Re: Mixed EGU/EGO floating-pointBGB
   |  |    | `* Re: Mixed EGU/EGO floating-pointQuadibloc
   |  |    |  +- Re: Mixed EGU/EGO floating-pointBGB
   |  |    |  `* Re: Mixed EGU/EGO floating-pointMitchAlsup
   |  |    +- Re: Mixed EGU/EGO floating-pointAnton Ertl
   |  |    `- Re: Mixed EGU/EGO floating-pointQuadibloc
   |  `* Re: Mixed EGU/EGO floating-pointQuadibloc
   `* Re: Mixed EGU/EGO floating-pointBGB

Pages:12345
Mixed EGU/EGO floating-point

<de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25231&group=comp.arch#25231

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:622a:110f:b0:2f3:c9f1:ada4 with SMTP id e15-20020a05622a110f00b002f3c9f1ada4mr2865569qty.197.1652415822630;
Thu, 12 May 2022 21:23:42 -0700 (PDT)
X-Received: by 2002:a4a:e1b4:0:b0:35f:5299:9b43 with SMTP id
20-20020a4ae1b4000000b0035f52999b43mr1220243ooy.37.1652415822367; Thu, 12 May
2022 21:23:42 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Thu, 12 May 2022 21:23:42 -0700 (PDT)
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:c868:a203:69ec:2ee8;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:c868:a203:69ec:2ee8
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
Subject: Mixed EGU/EGO floating-point
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Fri, 13 May 2022 04:23:42 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 3703
 by: Quadibloc - Fri, 13 May 2022 04:23 UTC

I tried sending an E-mail about this brainstorm of mine to posituhb.org, and in
my unsuccessful attempt to do so, I discovered that John L. Gustafson's E-mail
address at the University of Singapore is no longer valid.
Also, the most recent news of him I have heard of was that he was hired by
ClearSpeed Technology, but that company no longer exists; another company
with a similar name makes AI software, not chips.

Anyways, the brainstorm I was inspired with by reading the discussion about
NaNs is this:

Let us consider a floating-point format which is identical to the IEEE 754 floating-point format... when the first three bits of the excess-n exponent
field are in the range [001 ... 110].

So for the "inner 75%" of the range of IEEE 754 floats, not one bit of
precision is lost.

In the bottom 12.5%, we have Extremely Gradual Underflow, which I have
described before.

So if the exponent field starts with 000, _and_ the first bit of the
significand field is 1, then:

- that first bit of the significand field corresponds to the first bit of the
significand, and is no longer "hidden", and
- the effective value of the exponent is adjusted the same way the
effective value of an all-zeroes exponent is adjusted for conventional
IEEE-754 floats; one is added to it..

Nothing new here, except that a bit seems to be wasted for no good
reason.
But if you remember how EGU works, or if you're familiar with posits,
you will know what comes next.
If the significand field begins with "01", now the effective value of the
exponent is adjusted by how it needs to be adjusted so that the range of
floats with "01" significands is tacked on neatly to the low end of the
range of floats with "1" significands.

Or, in posit language, exponents starting with 000 are followed by a
"regime" field before a significand field (still with a hidden first bit)
starts.

And the same happens, but on the high (EGO - Extremely Gradual
Overflow) end, for exponents starting with 111.

The order of bits can be shuffled around to make the resulting number
look more like a posit, if you like. (That is, put the regime field
immediately after the 000 and 111, then put in the rest of the exponent,
before starting the significand, instead of putting the regime field
after the whole exponent.)

The idea is that now one can switch to this... 25% solution of posits...
without the complaint that, oh, noes, we're losing one bit of precision.

Now it's only at the outer 25% of the old floating point range, which is
obviously totally irrelevant if you don't even believe that posits are
necessary and/or useful!

John Savard

Re: Mixed EGU/EGO floating-point

<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25236&group=comp.arch#25236

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:620a:795:b0:69f:d074:6067 with SMTP id 21-20020a05620a079500b0069fd0746067mr3662422qka.527.1652450764815;
Fri, 13 May 2022 07:06:04 -0700 (PDT)
X-Received: by 2002:a9d:34b:0:b0:605:f0f1:e28e with SMTP id
69-20020a9d034b000000b00605f0f1e28emr1885083otv.304.1652450764484; Fri, 13
May 2022 07:06:04 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 07:06:04 -0700 (PDT)
In-Reply-To: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7c95:96fc:af36:3315;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7c95:96fc:af36:3315
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Fri, 13 May 2022 14:06:04 +0000
Content-Type: text/plain; charset="UTF-8"
 by: MitchAlsup - Fri, 13 May 2022 14:06 UTC

On Thursday, May 12, 2022 at 11:23:44 PM UTC-5, Quadibloc wrote:
> I tried sending an E-mail about this brainstorm of mine to posituhb.org, and in
> my unsuccessful attempt to do so, I discovered that John L. Gustafson's E-mail
> address at the University of Singapore is no longer valid.
> Also, the most recent news of him I have heard of was that he was hired by
> ClearSpeed Technology, but that company no longer exists; another company
> with a similar name makes AI software, not chips.
>
> Anyways, the brainstorm I was inspired with by reading the discussion about
> NaNs is this:
>
> Let us consider a floating-point format which is identical to the IEEE 754 floating-point format... when the first three bits of the excess-n exponent
> field are in the range [001 ... 110].
>
> So for the "inner 75%" of the range of IEEE 754 floats, not one bit of
> precision is lost.
>
> In the bottom 12.5%, we have Extremely Gradual Underflow, which I have
> described before.
>
> So if the exponent field starts with 000, _and_ the first bit of the
> significand field is 1, then:
>
> - that first bit of the significand field corresponds to the first bit of the
> significand, and is no longer "hidden", and
> - the effective value of the exponent is adjusted the same way the
> effective value of an all-zeroes exponent is adjusted for conventional
> IEEE-754 floats; one is added to it..
>
> Nothing new here, except that a bit seems to be wasted for no good
> reason.
> But if you remember how EGU works, or if you're familiar with posits,
> you will know what comes next.
> If the significand field begins with "01", now the effective value of the
> exponent is adjusted by how it needs to be adjusted so that the range of
> floats with "01" significands is tacked on neatly to the low end of the
> range of floats with "1" significands.
>
> Or, in posit language, exponents starting with 000 are followed by a
> "regime" field before a significand field (still with a hidden first bit)
> starts.
>
> And the same happens, but on the high (EGO - Extremely Gradual
> Overflow) end, for exponents starting with 111.
<
Why not a hierarchy of infinities ?
>
> The order of bits can be shuffled around to make the resulting number
> look more like a posit, if you like. (That is, put the regime field
> immediately after the 000 and 111, then put in the rest of the exponent,
> before starting the significand, instead of putting the regime field
> after the whole exponent.)
>
> The idea is that now one can switch to this... 25% solution of posits...
> without the complaint that, oh, noes, we're losing one bit of precision.
>
> Now it's only at the outer 25% of the old floating point range, which is
> obviously totally irrelevant if you don't even believe that posits are
> necessary and/or useful!
<
The most useful thing about posits is that they do not come with all
the IEEE 754 baggage.
>
> John Savard

Re: Mixed EGU/EGO floating-point

<bb328c99-7985-4576-ab01-12d6855f88a7n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25237&group=comp.arch#25237

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:622a:6206:b0:2f1:d7bc:7522 with SMTP id hj6-20020a05622a620600b002f1d7bc7522mr4739094qtb.556.1652450890194;
Fri, 13 May 2022 07:08:10 -0700 (PDT)
X-Received: by 2002:a05:6870:eaa5:b0:da:b3f:2b45 with SMTP id
s37-20020a056870eaa500b000da0b3f2b45mr8572260oap.228.1652450889844; Fri, 13
May 2022 07:08:09 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 07:08:09 -0700 (PDT)
In-Reply-To: <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7c95:96fc:af36:3315;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7c95:96fc:af36:3315
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com> <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <bb328c99-7985-4576-ab01-12d6855f88a7n@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Fri, 13 May 2022 14:08:10 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 1377
 by: MitchAlsup - Fri, 13 May 2022 14:08 UTC

On Friday, May 13, 2022 at 9:06:06 AM UTC-5, MitchAlsup wrote:
Oh and BTW:
John's email (as of Feb) is John Gustafson (johngustafson@earthlink.net)

Re: Mixed EGU/EGO floating-point

<a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25239&group=comp.arch#25239

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:1d29:b0:45b:cf:f242 with SMTP id f9-20020a0562141d2900b0045b00cff242mr5184994qvd.82.1652462099349;
Fri, 13 May 2022 10:14:59 -0700 (PDT)
X-Received: by 2002:a05:6808:11ca:b0:2d9:a01a:488b with SMTP id
p10-20020a05680811ca00b002d9a01a488bmr8350147oiv.214.1652462099133; Fri, 13
May 2022 10:14:59 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 10:14:58 -0700 (PDT)
In-Reply-To: <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:dc66:e09b:c99a:5974;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:dc66:e09b:c99a:5974
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com> <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Fri, 13 May 2022 17:14:59 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 2334
 by: Quadibloc - Fri, 13 May 2022 17:14 UTC

On Friday, May 13, 2022 at 8:06:06 AM UTC-6, MitchAlsup wrote:

> Why not a hierarchy of infinities ?

I would not be able to define the arithmetic rules fully, given
that the continuum problem hasn't been solved.

Actually, though, that's probably not what you mean, and instead
you're talking about infinities all with the cardinality of aleph-null,
but behaving like calculus infinitesimals, so you can have infinity
squared and so on.

I'm not sure what the point would be; sure, NaN handling might be
potentially subject to improvement, but I was concentrating on ordinary
numbers as the most practical thing.

> The most useful thing about posits is that they do not come with all
> the IEEE 754 baggage.

It's true IEEE 754 has some complexities. But they serve the same goal
as posits have: to make numerical computation better. And the IEEE 754
standard has been hugely popular, as illustrated by its wide adoption.

This could be due to the market power of the x86 due to Windows, and not
to any particular merit of the standard, of course; it's hard to tell.

John Savard

Re: Mixed EGU/EGO floating-point

<9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25241&group=comp.arch#25241

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:622a:1212:b0:2f3:bd14:1ec6 with SMTP id y18-20020a05622a121200b002f3bd141ec6mr5802913qtx.342.1652464545766;
Fri, 13 May 2022 10:55:45 -0700 (PDT)
X-Received: by 2002:a05:6871:438b:b0:ee:326d:b3f9 with SMTP id
lv11-20020a056871438b00b000ee326db3f9mr8990434oab.126.1652464545449; Fri, 13
May 2022 10:55:45 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 10:55:45 -0700 (PDT)
In-Reply-To: <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=136.50.14.162; posting-account=AoizIQoAAADa7kQDpB0DAj2jwddxXUgl
NNTP-Posting-Host: 136.50.14.162
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com> <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: jim.brak...@ieee.org (JimBrakefield)
Injection-Date: Fri, 13 May 2022 17:55:45 +0000
Content-Type: text/plain; charset="UTF-8"
 by: JimBrakefield - Fri, 13 May 2022 17:55 UTC

On Friday, May 13, 2022 at 9:06:06 AM UTC-5, MitchAlsup wrote:
> On Thursday, May 12, 2022 at 11:23:44 PM UTC-5, Quadibloc wrote:
> > I tried sending an E-mail about this brainstorm of mine to posituhb.org, and in
> > my unsuccessful attempt to do so, I discovered that John L. Gustafson's E-mail
> > address at the University of Singapore is no longer valid.
> > Also, the most recent news of him I have heard of was that he was hired by
> > ClearSpeed Technology, but that company no longer exists; another company
> > with a similar name makes AI software, not chips.
> >
> > Anyways, the brainstorm I was inspired with by reading the discussion about
> > NaNs is this:
> >
> > Let us consider a floating-point format which is identical to the IEEE 754 floating-point format... when the first three bits of the excess-n exponent
> > field are in the range [001 ... 110].
> >
> > So for the "inner 75%" of the range of IEEE 754 floats, not one bit of
> > precision is lost.
> >
> > In the bottom 12.5%, we have Extremely Gradual Underflow, which I have
> > described before.
> >
> > So if the exponent field starts with 000, _and_ the first bit of the
> > significand field is 1, then:
> >
> > - that first bit of the significand field corresponds to the first bit of the
> > significand, and is no longer "hidden", and
> > - the effective value of the exponent is adjusted the same way the
> > effective value of an all-zeroes exponent is adjusted for conventional
> > IEEE-754 floats; one is added to it..
> >
> > Nothing new here, except that a bit seems to be wasted for no good
> > reason.
> > But if you remember how EGU works, or if you're familiar with posits,
> > you will know what comes next.
> > If the significand field begins with "01", now the effective value of the
> > exponent is adjusted by how it needs to be adjusted so that the range of
> > floats with "01" significands is tacked on neatly to the low end of the
> > range of floats with "1" significands.
> >
> > Or, in posit language, exponents starting with 000 are followed by a
> > "regime" field before a significand field (still with a hidden first bit)
> > starts.
> >
> > And the same happens, but on the high (EGO - Extremely Gradual
> > Overflow) end, for exponents starting with 111.
> <
> Why not a hierarchy of infinities ?
> >
> > The order of bits can be shuffled around to make the resulting number
> > look more like a posit, if you like. (That is, put the regime field
> > immediately after the 000 and 111, then put in the rest of the exponent,
> > before starting the significand, instead of putting the regime field
> > after the whole exponent.)
> >
> > The idea is that now one can switch to this... 25% solution of posits...
> > without the complaint that, oh, noes, we're losing one bit of precision.
> >
> > Now it's only at the outer 25% of the old floating point range, which is
> > obviously totally irrelevant if you don't even believe that posits are
> > necessary and/or useful!
> <
> The most useful thing about posits is that they do not come with all
> the IEEE 754 baggage.
> >
> > John Savard

|> The most useful thing about posits is that they do not come with all
|> the IEEE 754 baggage.

The revised Posit standard now fixes the number of "es" bits at two for all data sizes.
Simplifies the memory to/from register format conversion somewhat.

https://posithub.org/

Still think there is room for further improvement. However it comes at a cost of
non-2's complement compare of Posits.
Have gradually leaned toward taking a bit to indicate exact versus inexact values
which allows a simpler handling of the Posit regime field.
Another plus for an exact/inexact bit is to have entirely different formats for the two.
Such as something like 754 for exacts (with no denorms) and Posit otherwise.

Re: Mixed EGU/EGO floating-point

<a0117bc7-c5b8-4ca0-a486-35e7f56c510cn@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25242&group=comp.arch#25242

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:518c:b0:45a:8430:1737 with SMTP id kl12-20020a056214518c00b0045a84301737mr5481787qvb.4.1652465225380;
Fri, 13 May 2022 11:07:05 -0700 (PDT)
X-Received: by 2002:a05:6870:5818:b0:ee:e90:46cc with SMTP id
r24-20020a056870581800b000ee0e9046ccmr3299169oap.37.1652465225151; Fri, 13
May 2022 11:07:05 -0700 (PDT)
Path: i2pn2.org!rocksolid2!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 11:07:04 -0700 (PDT)
In-Reply-To: <bb328c99-7985-4576-ab01-12d6855f88a7n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:dc66:e09b:c99a:5974;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:dc66:e09b:c99a:5974
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <bb328c99-7985-4576-ab01-12d6855f88a7n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <a0117bc7-c5b8-4ca0-a486-35e7f56c510cn@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Fri, 13 May 2022 18:07:05 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 1590
 by: Quadibloc - Fri, 13 May 2022 18:07 UTC

On Friday, May 13, 2022 at 8:08:11 AM UTC-6, MitchAlsup wrote:

> John's email (as of Feb) is

Thank you very much!
Incidentally, I've now created a page at
http://www.quadibloc.com/comp/cp020101.htm
which includes a more fully fleshed-out description of this proposed
numeric format.

John Savard

Re: Mixed EGU/EGO floating-point

<d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25243&group=comp.arch#25243

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:620a:a44:b0:6a0:aa6:801b with SMTP id j4-20020a05620a0a4400b006a00aa6801bmr4693312qka.152.1652465501310;
Fri, 13 May 2022 11:11:41 -0700 (PDT)
X-Received: by 2002:a05:6870:a108:b0:ec:43ef:5338 with SMTP id
m8-20020a056870a10800b000ec43ef5338mr8629540oae.16.1652465501184; Fri, 13 May
2022 11:11:41 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 11:11:41 -0700 (PDT)
In-Reply-To: <9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:dc66:e09b:c99a:5974;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:dc66:e09b:c99a:5974
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Fri, 13 May 2022 18:11:41 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 2276
 by: Quadibloc - Fri, 13 May 2022 18:11 UTC

On Friday, May 13, 2022 at 11:55:47 AM UTC-6, JimBrakefield wrote:

> Have gradually leaned toward taking a bit to indicate exact versus inexact values
> which allows a simpler handling of the Posit regime field.
> Another plus for an exact/inexact bit is to have entirely different formats for the two.
> Such as something like 754 for exacts (with no denorms) and Posit otherwise.

Huh?

I was thinking that you could get proper sorting of numbers with an inexact bit as
follows:

1) Put the inexact bit at the end of the number. 0 = exact, 1 = inexact.

2) Round inexacts to the halfway points between successive exacts,
instead of to the numerical values that can be represented with exacts.

That way, all the inexacts between two exacts have the representation that
lies between the representations for the two exacts.

Or, if you think of the inexact bit as the last bit of the mantissa - all odd
mantissas are inexact, all even mantissas are exact.

John Savard

Re: Mixed EGU/EGO floating-point

<2022May13.200449@mips.complang.tuwien.ac.at>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25244&group=comp.arch#25244

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.arch
Subject: Re: Mixed EGU/EGO floating-point
Date: Fri, 13 May 2022 18:04:49 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 18
Message-ID: <2022May13.200449@mips.complang.tuwien.ac.at>
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com> <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com>
Injection-Info: reader02.eternal-september.org; posting-host="001fc72ba0d1c4c20e2aa51a86ccd9ba";
logging-data="28945"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX184p+bz2Gc4qzFB/HNiGRm5"
Cancel-Lock: sha1:X83200zv3XB1WmA8V+oeF+dsfzQ=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Fri, 13 May 2022 18:04 UTC

Quadibloc <jsavard@ecn.ab.ca> writes:
>And the IEEE 754
>standard has been hugely popular, as illustrated by its wide adoption.
>
>This could be due to the market power of the x86 due to Windows, and not
>to any particular merit of the standard, of course; it's hard to tell.

This particular claim is easy to refute: IEEE 754 won before Windows,
so it did not become popular because of Windows. Basically all new
architectures after IEEE 754 (1985) and a few before (e.g., 8087
(1980), 68881 (1984)) adopted IEEE 754, and in time the older
architectures adopted it as well. By contrast, Windows was not
really successful before Windows 3 (1990).

- anton
--
'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
Mitch Alsup, <c17fcd89-f024-40e7-a594-88a85ac10d20o@googlegroups.com>

Re: Mixed EGU/EGO floating-point

<0b089a6c-6257-4675-8767-772d5e2a8ce5n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25246&group=comp.arch#25246

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ac8:5d8b:0:b0:2f3:df07:d752 with SMTP id d11-20020ac85d8b000000b002f3df07d752mr6183229qtx.528.1652473109947;
Fri, 13 May 2022 13:18:29 -0700 (PDT)
X-Received: by 2002:a05:6870:5818:b0:ee:e90:46cc with SMTP id
r24-20020a056870581800b000ee0e9046ccmr3551683oap.37.1652473109710; Fri, 13
May 2022 13:18:29 -0700 (PDT)
Path: i2pn2.org!i2pn.org!aioe.org!news.mixmin.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 13:18:29 -0700 (PDT)
In-Reply-To: <d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7c95:96fc:af36:3315;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7c95:96fc:af36:3315
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>
<d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <0b089a6c-6257-4675-8767-772d5e2a8ce5n@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Fri, 13 May 2022 20:18:29 +0000
Content-Type: text/plain; charset="UTF-8"
 by: MitchAlsup - Fri, 13 May 2022 20:18 UTC

On Friday, May 13, 2022 at 1:11:42 PM UTC-5, Quadibloc wrote:
> On Friday, May 13, 2022 at 11:55:47 AM UTC-6, JimBrakefield wrote:
>
> > Have gradually leaned toward taking a bit to indicate exact versus inexact values
> > which allows a simpler handling of the Posit regime field.
> > Another plus for an exact/inexact bit is to have entirely different formats for the two.
> > Such as something like 754 for exacts (with no denorms) and Posit otherwise.
> Huh?
>
> I was thinking that you could get proper sorting of numbers with an inexact bit as
> follows:
>
> 1) Put the inexact bit at the end of the number. 0 = exact, 1 = inexact.
>
> 2) Round inexacts to the halfway points between successive exacts,
> instead of to the numerical values that can be represented with exacts.
>
> That way, all the inexacts between two exacts have the representation that
> lies between the representations for the two exacts.
>
> Or, if you think of the inexact bit as the last bit of the mantissa - all odd
> mantissas are inexact, all even mantissas are exact.
<
This gains nothing !!
<
Consider that you lose 1 bit from the fraction in order to represent inexact.
The inexact bit tells you to prepare and operand that is 1.fraction+epsilon
Which is exactly what you would have had if you simply rounded to where
the inexact bit would have been.
>
> John Savard

Re: Mixed EGU/EGO floating-point

<49e3cbef-574a-4a5f-9ba2-c637980a63b0n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25247&group=comp.arch#25247

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:622a:1714:b0:2f3:e638:84a1 with SMTP id h20-20020a05622a171400b002f3e63884a1mr6051746qtk.268.1652473435323;
Fri, 13 May 2022 13:23:55 -0700 (PDT)
X-Received: by 2002:a05:6808:c2:b0:325:eb71:7266 with SMTP id
t2-20020a05680800c200b00325eb717266mr8787938oic.269.1652473435104; Fri, 13
May 2022 13:23:55 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 13:23:54 -0700 (PDT)
In-Reply-To: <2022May13.200449@mips.complang.tuwien.ac.at>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7c95:96fc:af36:3315;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7c95:96fc:af36:3315
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com>
<2022May13.200449@mips.complang.tuwien.ac.at>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <49e3cbef-574a-4a5f-9ba2-c637980a63b0n@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Fri, 13 May 2022 20:23:55 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 2582
 by: MitchAlsup - Fri, 13 May 2022 20:23 UTC

On Friday, May 13, 2022 at 1:14:13 PM UTC-5, Anton Ertl wrote:
> Quadibloc <jsa...@ecn.ab.ca> writes:
> >And the IEEE 754
> >standard has been hugely popular, as illustrated by its wide adoption.
> >
> >This could be due to the market power of the x86 due to Windows, and not
> >to any particular merit of the standard, of course; it's hard to tell.
<
> This particular claim is easy to refute: IEEE 754 won before Windows,
> so it did not become popular because of Windows. Basically all new
> architectures after IEEE 754 (1985) and a few before (e.g., 8087
<
All of the first generation RISC machines were IEEE 754 with some allowance
to compliance. These came out contemporaneously with 68881 and x87 but
later. By 1985 there was nobody making CPUs, and trying to sell them in the
millions*, that was not IEEE 754.
<
(*) leaves out IBM 360 derivatives, Boroughs, Univac, Honeywell, ...
<
> (1980), 68881 (1984)) adopted IEEE 754, and in time the older
> architectures adopted it as well. By contrast, Windows was not
> really successful before Windows 3 (1990).
>
> - anton
> --
> 'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
> Mitch Alsup, <c17fcd89-f024-40e7...@googlegroups.com>

Re: Mixed EGU/EGO floating-point

<CsAfK.41450$qMI1.15625@fx96.iad>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25249&group=comp.arch#25249

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx96.iad.POSTED!not-for-mail
From: ThatWoul...@thevillage.com (EricP)
User-Agent: Thunderbird 2.0.0.24 (Windows/20100228)
MIME-Version: 1.0
Newsgroups: comp.arch
Subject: Re: Mixed EGU/EGO floating-point
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com> <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com> <d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com>
In-Reply-To: <d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 33
Message-ID: <CsAfK.41450$qMI1.15625@fx96.iad>
X-Complaints-To: abuse@UsenetServer.com
NNTP-Posting-Date: Fri, 13 May 2022 21:54:42 UTC
Date: Fri, 13 May 2022 17:54:27 -0400
X-Received-Bytes: 2181
 by: EricP - Fri, 13 May 2022 21:54 UTC

Quadibloc wrote:
> On Friday, May 13, 2022 at 11:55:47 AM UTC-6, JimBrakefield wrote:
>
>> Have gradually leaned toward taking a bit to indicate exact versus inexact values
>> which allows a simpler handling of the Posit regime field.
>> Another plus for an exact/inexact bit is to have entirely different formats for the two.
>> Such as something like 754 for exacts (with no denorms) and Posit otherwise.
>
> Huh?
>
> I was thinking that you could get proper sorting of numbers with an inexact bit as
> follows:
>
> 1) Put the inexact bit at the end of the number. 0 = exact, 1 = inexact.
>
> 2) Round inexacts to the halfway points between successive exacts,
> instead of to the numerical values that can be represented with exacts.
>
> That way, all the inexacts between two exacts have the representation that
> lies between the representations for the two exacts.
>
> Or, if you think of the inexact bit as the last bit of the mantissa - all odd
> mantissas are inexact, all even mantissas are exact.
>
> John Savard

The Posit inexact bits were sticky so how did they get reset?
I looked through that Posit book and didn't see a rule.
Because it looked to me as though once they got set,
they would propagate through a calculation.
And if so then they would pretty much always get set on a result.

Re: Mixed EGU/EGO floating-point

<9067dfbc-98e8-4ff6-9006-549834a297d5n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25250&group=comp.arch#25250

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:e6b:b0:45b:474:1035 with SMTP id jz11-20020a0562140e6b00b0045b04741035mr6545851qvb.39.1652480869586;
Fri, 13 May 2022 15:27:49 -0700 (PDT)
X-Received: by 2002:a05:6870:eaa5:b0:da:b3f:2b45 with SMTP id
s37-20020a056870eaa500b000da0b3f2b45mr9561325oap.228.1652480869232; Fri, 13
May 2022 15:27:49 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 15:27:49 -0700 (PDT)
In-Reply-To: <0b089a6c-6257-4675-8767-772d5e2a8ce5n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=136.50.14.162; posting-account=AoizIQoAAADa7kQDpB0DAj2jwddxXUgl
NNTP-Posting-Host: 136.50.14.162
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>
<d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com> <0b089a6c-6257-4675-8767-772d5e2a8ce5n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9067dfbc-98e8-4ff6-9006-549834a297d5n@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: jim.brak...@ieee.org (JimBrakefield)
Injection-Date: Fri, 13 May 2022 22:27:49 +0000
Content-Type: text/plain; charset="UTF-8"
 by: JimBrakefield - Fri, 13 May 2022 22:27 UTC

On Friday, May 13, 2022 at 3:18:31 PM UTC-5, MitchAlsup wrote:
> On Friday, May 13, 2022 at 1:11:42 PM UTC-5, Quadibloc wrote:
> > On Friday, May 13, 2022 at 11:55:47 AM UTC-6, JimBrakefield wrote:
> >
> > > Have gradually leaned toward taking a bit to indicate exact versus inexact values
> > > which allows a simpler handling of the Posit regime field.
> > > Another plus for an exact/inexact bit is to have entirely different formats for the two.
> > > Such as something like 754 for exacts (with no denorms) and Posit otherwise.
> > Huh?
> >
> > I was thinking that you could get proper sorting of numbers with an inexact bit as
> > follows:
> >
> > 1) Put the inexact bit at the end of the number. 0 = exact, 1 = inexact.
> >
> > 2) Round inexacts to the halfway points between successive exacts,
> > instead of to the numerical values that can be represented with exacts.
> >
> > That way, all the inexacts between two exacts have the representation that
> > lies between the representations for the two exacts.
> >
> > Or, if you think of the inexact bit as the last bit of the mantissa - all odd
> > mantissas are inexact, all even mantissas are exact.
> <
> This gains nothing !!
> <
> Consider that you lose 1 bit from the fraction in order to represent inexact.
> The inexact bit tells you to prepare and operand that is 1.fraction+epsilon
> Which is exactly what you would have had if you simply rounded to where
> the inexact bit would have been.
> >
> > John Savard

|> This gains nothing !!
The other choice is to have distinct load and store floating instructions for exact and inexact.

|> > Or, if you think of the inexact bit as the last bit of the mantissa - all odd
|> > mantissas are inexact, all even mantissas are exact.
Yeah!

Re: Mixed EGU/EGO floating-point

<a85b15bd-f3ab-4bc0-8410-dd5f6d96388an@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25251&group=comp.arch#25251

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:23cc:b0:44f:4974:4c1c with SMTP id hr12-20020a05621423cc00b0044f49744c1cmr6235821qvb.116.1652480988385;
Fri, 13 May 2022 15:29:48 -0700 (PDT)
X-Received: by 2002:a05:6830:1645:b0:606:fe3:fa21 with SMTP id
h5-20020a056830164500b006060fe3fa21mr2644546otr.268.1652480988154; Fri, 13
May 2022 15:29:48 -0700 (PDT)
Path: i2pn2.org!i2pn.org!paganini.bofh.team!pasdenom.info!usenet-fr.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 15:29:47 -0700 (PDT)
In-Reply-To: <CsAfK.41450$qMI1.15625@fx96.iad>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7c95:96fc:af36:3315;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7c95:96fc:af36:3315
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>
<d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com> <CsAfK.41450$qMI1.15625@fx96.iad>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <a85b15bd-f3ab-4bc0-8410-dd5f6d96388an@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Fri, 13 May 2022 22:29:48 +0000
Content-Type: text/plain; charset="UTF-8"
 by: MitchAlsup - Fri, 13 May 2022 22:29 UTC

On Friday, May 13, 2022 at 4:54:45 PM UTC-5, EricP wrote:
> Quadibloc wrote:
> > On Friday, May 13, 2022 at 11:55:47 AM UTC-6, JimBrakefield wrote:
> >
> >> Have gradually leaned toward taking a bit to indicate exact versus inexact values
> >> which allows a simpler handling of the Posit regime field.
> >> Another plus for an exact/inexact bit is to have entirely different formats for the two.
> >> Such as something like 754 for exacts (with no denorms) and Posit otherwise.
> >
> > Huh?
> >
> > I was thinking that you could get proper sorting of numbers with an inexact bit as
> > follows:
> >
> > 1) Put the inexact bit at the end of the number. 0 = exact, 1 = inexact.
> >
> > 2) Round inexacts to the halfway points between successive exacts,
> > instead of to the numerical values that can be represented with exacts.
> >
> > That way, all the inexacts between two exacts have the representation that
> > lies between the representations for the two exacts.
> >
> > Or, if you think of the inexact bit as the last bit of the mantissa - all odd
> > mantissas are inexact, all even mantissas are exact.
> >
> > John Savard
> The Posit inexact bits were sticky so how did they get reset?
<
You store something that is exact into the memory/register.
<
> I looked through that Posit book and didn't see a rule.
<
Obvious rules don't need to be specified.
<
> Because it looked to me as though once they got set,
> they would propagate through a calculation.
> And if so then they would pretty much always get set on a result.
<
One of the crazy things about IEEE 754 is that if you go out of your
way to write exact floating point arithmetic sequences (twoAdd, twoMul),
you invariably end up setting the inexact bit. My 66000 does not set
the inexact bit (or raise exception) when all of the bits of the result
get stored in the result containers. So,
<
CARRY R7,{{0}}
FMUL R6,R5,R4
<
Delivers the exact product to R6 and R7 and does not set the inexact bit.

Re: Mixed EGU/EGO floating-point

<64bd6833-af74-40d7-b012-b1bdfac37afbn@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25252&group=comp.arch#25252

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:518c:b0:45a:8430:1737 with SMTP id kl12-20020a056214518c00b0045a84301737mr6388822qvb.4.1652482604416;
Fri, 13 May 2022 15:56:44 -0700 (PDT)
X-Received: by 2002:a05:6830:2aa1:b0:606:3a07:646b with SMTP id
s33-20020a0568302aa100b006063a07646bmr2633017otu.229.1652482604092; Fri, 13
May 2022 15:56:44 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 13 May 2022 15:56:43 -0700 (PDT)
In-Reply-To: <a85b15bd-f3ab-4bc0-8410-dd5f6d96388an@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=136.50.14.162; posting-account=AoizIQoAAADa7kQDpB0DAj2jwddxXUgl
NNTP-Posting-Host: 136.50.14.162
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>
<d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com> <CsAfK.41450$qMI1.15625@fx96.iad>
<a85b15bd-f3ab-4bc0-8410-dd5f6d96388an@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <64bd6833-af74-40d7-b012-b1bdfac37afbn@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: jim.brak...@ieee.org (JimBrakefield)
Injection-Date: Fri, 13 May 2022 22:56:44 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 3951
 by: JimBrakefield - Fri, 13 May 2022 22:56 UTC

On Friday, May 13, 2022 at 5:29:49 PM UTC-5, MitchAlsup wrote:
> On Friday, May 13, 2022 at 4:54:45 PM UTC-5, EricP wrote:
> > Quadibloc wrote:
> > > On Friday, May 13, 2022 at 11:55:47 AM UTC-6, JimBrakefield wrote:
> > >
> > >> Have gradually leaned toward taking a bit to indicate exact versus inexact values
> > >> which allows a simpler handling of the Posit regime field.
> > >> Another plus for an exact/inexact bit is to have entirely different formats for the two.
> > >> Such as something like 754 for exacts (with no denorms) and Posit otherwise.
> > >
> > > Huh?
> > >
> > > I was thinking that you could get proper sorting of numbers with an inexact bit as
> > > follows:
> > >
> > > 1) Put the inexact bit at the end of the number. 0 = exact, 1 = inexact.
> > >
> > > 2) Round inexacts to the halfway points between successive exacts,
> > > instead of to the numerical values that can be represented with exacts.
> > >
> > > That way, all the inexacts between two exacts have the representation that
> > > lies between the representations for the two exacts.
> > >
> > > Or, if you think of the inexact bit as the last bit of the mantissa - all odd
> > > mantissas are inexact, all even mantissas are exact.
> > >
> > > John Savard
> > The Posit inexact bits were sticky so how did they get reset?
> <
> You store something that is exact into the memory/register.
> <
> > I looked through that Posit book and didn't see a rule.
> <
> Obvious rules don't need to be specified.
> <
> > Because it looked to me as though once they got set,
> > they would propagate through a calculation.
> > And if so then they would pretty much always get set on a result.
> <
> One of the crazy things about IEEE 754 is that if you go out of your
> way to write exact floating point arithmetic sequences (twoAdd, twoMul),
> you invariably end up setting the inexact bit. My 66000 does not set
> the inexact bit (or raise exception) when all of the bits of the result
> get stored in the result containers. So,
> <
> CARRY R7,{{0}}
> FMUL R6,R5,R4
> <
> Delivers the exact product to R6 and R7 and does not set the inexact bit.

I think the 754 committee overlooked the need (and support thereof) for extended precision.

Also the typical status register should be replaced by a "residue" register, whether within the
register file or separate; collecting floating-point residue, remainder, carry and overflow.
Not arguing for or against the way MY 66000 does it.

Re: Mixed EGU/EGO floating-point

<t5mqb6$1jpo$1@gal.iecc.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25253&group=comp.arch#25253

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!news.iecc.com!.POSTED.news.iecc.com!not-for-mail
From: joh...@taugh.com (John Levine)
Newsgroups: comp.arch
Subject: Re: Mixed EGU/EGO floating-point
Date: Fri, 13 May 2022 23:41:26 -0000 (UTC)
Organization: Taughannock Networks
Message-ID: <t5mqb6$1jpo$1@gal.iecc.com>
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com> <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com> <2022May13.200449@mips.complang.tuwien.ac.at>
Injection-Date: Fri, 13 May 2022 23:41:26 -0000 (UTC)
Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970";
logging-data="53048"; mail-complaints-to="abuse@iecc.com"
In-Reply-To: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com> <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com> <2022May13.200449@mips.complang.tuwien.ac.at>
Cleverness: some
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: johnl@iecc.com (John Levine)
 by: John Levine - Fri, 13 May 2022 23:41 UTC

According to Anton Ertl <anton@mips.complang.tuwien.ac.at>:
>Quadibloc <jsavard@ecn.ab.ca> writes:
>>And the IEEE 754
>>standard has been hugely popular, as illustrated by its wide adoption.
>>
>>This could be due to the market power of the x86 due to Windows, and not
>>to any particular merit of the standard, of course; it's hard to tell.
>
>This particular claim is easy to refute: IEEE 754 won before Windows,
>so it did not become popular because of Windows. Basically all new
>architectures after IEEE 754 (1985) and a few before (e.g., 8087
>(1980), 68881 (1984)) adopted IEEE 754, and in time the older
>architectures adopted it as well. By contrast, Windows was not
>really successful before Windows 3 (1990).

MS-DOS was certainly popular in the 1980s. I was one of the authors of
Javelin, a time-series modelling package for MS DOS in the mid-1980s,
and all of the numeric stuff depended on 8087 arithmetic. There was a
hack to trap to an emulator if you didn't have a real 8087 but I think
the people who did stuff like bond yields usually did.

At the time, the alternatives were IBM hex arithmetic which only ran on
expensive mainframes and has well-known performance issues, and I suppose
the formats that DEC used on the PDP-11 and Vax. Who else was selling
significant amounts of FP hardware in the 1980s? Moto didn't ship the
68881 until 1984 which was pretty late.

R's,
John
--
Regards,
John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
Please consider the environment before reading this e-mail. https://jl.ly

Re: Mixed EGU/EGO floating-point

<memo.20220514083656.11824A@jgd.cix.co.uk>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25255&group=comp.arch#25255

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: jgd...@cix.co.uk (John Dallman)
Newsgroups: comp.arch
Subject: Re: Mixed EGU/EGO floating-point
Date: Sat, 14 May 2022 08:36 +0100 (BST)
Organization: A noiseless patient Spider
Lines: 20
Message-ID: <memo.20220514083656.11824A@jgd.cix.co.uk>
References: <t5mqb6$1jpo$1@gal.iecc.com>
Reply-To: jgd@cix.co.uk
Injection-Info: reader02.eternal-september.org; posting-host="567748bebbcfe80879937f747e6aca76";
logging-data="8759"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX196EdgytCm+WP9WPeDgNLHk+7O+nO3Kzbk="
Cancel-Lock: sha1:ulItHmCsSg+uQQAriJ/I2VblaHU=
 by: John Dallman - Sat, 14 May 2022 07:36 UTC

In article <t5mqb6$1jpo$1@gal.iecc.com>, johnl@taugh.com (John Levine)
wrote:

> At the time, the alternatives were IBM hex arithmetic which only
> ran on expensive mainframes and has well-known performance issues,

Also on Data General's bigger machines, and some other minis.

> and I suppose the formats that DEC used on the PDP-11 and Vax.

Those are recognizably ancestors of IEEE. They have a few more mantissa
bits and correspondingly fewer in the exponent, but work the same way.

> Who else was selling significant amounts of FP hardware in the 1980s?

Lots of smaller players, with a wide variety of formats. Some are here:

https://nssdc.gsfc.nasa.gov/nssdc/formats/

John

Re: Mixed EGU/EGO floating-point

<2022May14.093342@mips.complang.tuwien.ac.at>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25258&group=comp.arch#25258

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.arch
Subject: Re: Mixed EGU/EGO floating-point
Date: Sat, 14 May 2022 07:33:42 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 55
Message-ID: <2022May14.093342@mips.complang.tuwien.ac.at>
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com> <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com> <2022May13.200449@mips.complang.tuwien.ac.at> <t5mqb6$1jpo$1@gal.iecc.com>
Injection-Info: reader02.eternal-september.org; posting-host="a02afb20dde026e3b7d278094936d6ec";
logging-data="31077"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/6EvtJW2aWE+lkToUDhuCN"
Cancel-Lock: sha1:gB9AjlQnb3DIdx3XVVx0wjl8Bbw=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Sat, 14 May 2022 07:33 UTC

John Levine <johnl@taugh.com> writes:
>According to Anton Ertl <anton@mips.complang.tuwien.ac.at>:
>>Quadibloc <jsavard@ecn.ab.ca> writes:
>>>And the IEEE 754
>>>standard has been hugely popular, as illustrated by its wide adoption.
>>>
>>>This could be due to the market power of the x86 due to Windows, and not
>>>to any particular merit of the standard, of course; it's hard to tell.
>>
>>This particular claim is easy to refute: IEEE 754 won before Windows,
>>so it did not become popular because of Windows. Basically all new
>>architectures after IEEE 754 (1985) and a few before (e.g., 8087
>>(1980), 68881 (1984)) adopted IEEE 754, and in time the older
>>architectures adopted it as well. By contrast, Windows was not
>>really successful before Windows 3 (1990).
>
>MS-DOS was certainly popular in the 1980s.

True, but the claim did not mention MS-DOS.

The IBM PC, PC XT, and its clones were popular and had an 8087 socket,
so these machines were the way to go if you needed to do a lot of FP
and could not afford a minicomputer with an FPU (e.g., a VAX).

But according to
<https://en.wikipedia.org/wiki/IEEE_754-1985#History>, other vendors
were already worried about Intel's work in the late 70s, i.e., before
the IBM PC, and set up a standardization effort. That standardization
work then included Kahan and Intel and adopted a large part of Intel's
work (Intel's 80-bit format was not as standardized as the 64 and
32-bit formats).

It's interesting that Intel, who AFAIK played a much smaller role in
the late 70s than today would worry the other vendors so much. I
guess the perspective of a low-cost micro eating the FP lunch of minis
and maybe even mainframes was worrying even if they did not consider
micros to be proper computers otherwise.

>At the time, the alternatives were IBM hex arithmetic which only ran on
>expensive mainframes and has well-known performance issues, and I suppose
>the formats that DEC used on the PDP-11 and Vax. Who else was selling
>significant amounts of FP hardware in the 1980s? Moto didn't ship the
>68881 until 1984 which was pretty late.

All the mini companies and all the mainframe companies had computers
with FP units, but of course DEC and IBM were the big players in these
markets.

And of course all the RISCs (except ARM AFAIK) had FPUs, but that was
from 1985 onwards, and by that time IEEE 754 had already won.

- anton
--
'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
Mitch Alsup, <c17fcd89-f024-40e7-a594-88a85ac10d20o@googlegroups.com>

Re: Mixed EGU/EGO floating-point

<t5o8t8$1oj6$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25262&group=comp.arch#25262

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!aioe.org!10O9MudpjwoXIahOJRbDvA.user.46.165.242.91.POSTED!not-for-mail
From: terje.ma...@tmsw.no (Terje Mathisen)
Newsgroups: comp.arch
Subject: Re: Mixed EGU/EGO floating-point
Date: Sat, 14 May 2022 14:56:15 +0200
Organization: Aioe.org NNTP Server
Message-ID: <t5o8t8$1oj6$1@gioia.aioe.org>
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>
<9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>
<d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com>
<CsAfK.41450$qMI1.15625@fx96.iad>
<a85b15bd-f3ab-4bc0-8410-dd5f6d96388an@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="57958"; posting-host="10O9MudpjwoXIahOJRbDvA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101
Firefox/68.0 SeaMonkey/2.53.12
X-Notice: Filtered by postfilter v. 0.9.2
 by: Terje Mathisen - Sat, 14 May 2022 12:56 UTC

MitchAlsup wrote:
> On Friday, May 13, 2022 at 4:54:45 PM UTC-5, EricP wrote:
>> Quadibloc wrote:
>>> On Friday, May 13, 2022 at 11:55:47 AM UTC-6, JimBrakefield wrote:
>>>
>>>> Have gradually leaned toward taking a bit to indicate exact versus inexact values
>>>> which allows a simpler handling of the Posit regime field.
>>>> Another plus for an exact/inexact bit is to have entirely different formats for the two.
>>>> Such as something like 754 for exacts (with no denorms) and Posit otherwise.
>>>
>>> Huh?
>>>
>>> I was thinking that you could get proper sorting of numbers with an inexact bit as
>>> follows:
>>>
>>> 1) Put the inexact bit at the end of the number. 0 = exact, 1 = inexact.
>>>
>>> 2) Round inexacts to the halfway points between successive exacts,
>>> instead of to the numerical values that can be represented with exacts.
>>>
>>> That way, all the inexacts between two exacts have the representation that
>>> lies between the representations for the two exacts.
>>>
>>> Or, if you think of the inexact bit as the last bit of the mantissa - all odd
>>> mantissas are inexact, all even mantissas are exact.
>>>
>>> John Savard
>> The Posit inexact bits were sticky so how did they get reset?
> <
> You store something that is exact into the memory/register.
> <
>> I looked through that Posit book and didn't see a rule.
> <
> Obvious rules don't need to be specified.
> <
>> Because it looked to me as though once they got set,
>> they would propagate through a calculation.
>> And if so then they would pretty much always get set on a result.
> <
> One of the crazy things about IEEE 754 is that if you go out of your
> way to write exact floating point arithmetic sequences (twoAdd, twoMul),
> you invariably end up setting the inexact bit. My 66000 does not set
> the inexact bit (or raise exception) when all of the bits of the result
> get stored in the result containers. So,
> <
> CARRY R7,{{0}}
> FMUL R6,R5,R4
> <
> Delivers the exact product to R6 and R7 and does not set the inexact bit.
>
For the exact same reason, the new Augmented[Addition|Multiplication]
operations (two-in, two-out) will report exact results for everything
except borderline operations, like gradual underflow of subnormals.

Your CARRY is of course a wonderful way to implement these: Not just
nice to have here but generally extremely useful.

Terje

--
- <Terje.Mathisen at tmsw.no>
"almost all programming can be viewed as an exercise in caching"

Re: Mixed EGU/EGO floating-point

<pdOfK.22000$6dof.6945@fx13.iad>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25263&group=comp.arch#25263

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx13.iad.POSTED!not-for-mail
From: ThatWoul...@thevillage.com (EricP)
User-Agent: Thunderbird 2.0.0.24 (Windows/20100228)
MIME-Version: 1.0
Newsgroups: comp.arch
Subject: Re: Mixed EGU/EGO floating-point
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com> <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com> <d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com> <CsAfK.41450$qMI1.15625@fx96.iad> <a85b15bd-f3ab-4bc0-8410-dd5f6d96388an@googlegroups.com>
In-Reply-To: <a85b15bd-f3ab-4bc0-8410-dd5f6d96388an@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 65
Message-ID: <pdOfK.22000$6dof.6945@fx13.iad>
X-Complaints-To: abuse@UsenetServer.com
NNTP-Posting-Date: Sat, 14 May 2022 13:34:13 UTC
Date: Sat, 14 May 2022 09:33:40 -0400
X-Received-Bytes: 3680
 by: EricP - Sat, 14 May 2022 13:33 UTC

MitchAlsup wrote:
> On Friday, May 13, 2022 at 4:54:45 PM UTC-5, EricP wrote:
>> Quadibloc wrote:
>>> On Friday, May 13, 2022 at 11:55:47 AM UTC-6, JimBrakefield wrote:
>>>
>>>> Have gradually leaned toward taking a bit to indicate exact versus inexact values
>>>> which allows a simpler handling of the Posit regime field.
>>>> Another plus for an exact/inexact bit is to have entirely different formats for the two.
>>>> Such as something like 754 for exacts (with no denorms) and Posit otherwise.
>>> Huh?
>>>
>>> I was thinking that you could get proper sorting of numbers with an inexact bit as
>>> follows:
>>>
>>> 1) Put the inexact bit at the end of the number. 0 = exact, 1 = inexact.
>>>
>>> 2) Round inexacts to the halfway points between successive exacts,
>>> instead of to the numerical values that can be represented with exacts.
>>>
>>> That way, all the inexacts between two exacts have the representation that
>>> lies between the representations for the two exacts.
>>>
>>> Or, if you think of the inexact bit as the last bit of the mantissa - all odd
>>> mantissas are inexact, all even mantissas are exact.
>>>
>>> John Savard
>> The Posit inexact bits were sticky so how did they get reset?
> <
> You store something that is exact into the memory/register.

Ok, so explicit reset only.
Functions Exact() and Inexact() to clear or set it,
and IsExact() to test it.

> <
>> I looked through that Posit book and didn't see a rule.
> <
> Obvious rules don't need to be specified.
> <
>> Because it looked to me as though once they got set,
>> they would propagate through a calculation.
>> And if so then they would pretty much always get set on a result.
> <
> One of the crazy things about IEEE 754 is that if you go out of your
> way to write exact floating point arithmetic sequences (twoAdd, twoMul),
> you invariably end up setting the inexact bit. My 66000 does not set
> the inexact bit (or raise exception) when all of the bits of the result
> get stored in the result containers. So,
> <
> CARRY R7,{{0}}
> FMUL R6,R5,R4
> <
> Delivers the exact product to R6 and R7 and does not set the inexact bit.

But the Posit inexact bit, which John is referring to, is in
the lsb of the mantissa not in a separate status register.
And if it almost always gets set, how is that not just making
the mantissa 1 bit smaller and tacking a "1" on the end?

For an Inexact lsb to be useful, calculations would check it
every so often (otherwise why have it on every value) and do what?
And they would sprinkle Exact() calls about to clear it every so often.
Presumably there would be guidelines for when to toss the Inexact bit.

Re: Mixed EGU/EGO floating-point

<33507c37-6a00-47a5-a161-fb73f2373eden@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25264&group=comp.arch#25264

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:622a:54d:b0:2f3:ce29:234a with SMTP id m13-20020a05622a054d00b002f3ce29234amr8461266qtx.559.1652536587153;
Sat, 14 May 2022 06:56:27 -0700 (PDT)
X-Received: by 2002:a05:6870:d1cd:b0:e1:e7ee:faa0 with SMTP id
b13-20020a056870d1cd00b000e1e7eefaa0mr10665823oac.5.1652536586839; Sat, 14
May 2022 06:56:26 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sat, 14 May 2022 06:56:26 -0700 (PDT)
In-Reply-To: <t5mqb6$1jpo$1@gal.iecc.com>
Injection-Info: google-groups.googlegroups.com; posting-host=136.50.14.162; posting-account=AoizIQoAAADa7kQDpB0DAj2jwddxXUgl
NNTP-Posting-Host: 136.50.14.162
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com>
<2022May13.200449@mips.complang.tuwien.ac.at> <t5mqb6$1jpo$1@gal.iecc.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <33507c37-6a00-47a5-a161-fb73f2373eden@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: jim.brak...@ieee.org (JimBrakefield)
Injection-Date: Sat, 14 May 2022 13:56:27 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 3169
 by: JimBrakefield - Sat, 14 May 2022 13:56 UTC

On Friday, May 13, 2022 at 6:41:29 PM UTC-5, John Levine wrote:
> According to Anton Ertl <an...@mips.complang.tuwien.ac.at>:
> >Quadibloc <jsa...@ecn.ab.ca> writes:
> >>And the IEEE 754
> >>standard has been hugely popular, as illustrated by its wide adoption.
> >>
> >>This could be due to the market power of the x86 due to Windows, and not
> >>to any particular merit of the standard, of course; it's hard to tell.
> >
> >This particular claim is easy to refute: IEEE 754 won before Windows,
> >so it did not become popular because of Windows. Basically all new
> >architectures after IEEE 754 (1985) and a few before (e.g., 8087
> >(1980), 68881 (1984)) adopted IEEE 754, and in time the older
> >architectures adopted it as well. By contrast, Windows was not
> >really successful before Windows 3 (1990).
> MS-DOS was certainly popular in the 1980s. I was one of the authors of
> Javelin, a time-series modelling package for MS DOS in the mid-1980s,
> and all of the numeric stuff depended on 8087 arithmetic. There was a
> hack to trap to an emulator if you didn't have a real 8087 but I think
> the people who did stuff like bond yields usually did.
>
> At the time, the alternatives were IBM hex arithmetic which only ran on
> expensive mainframes and has well-known performance issues, and I suppose
> the formats that DEC used on the PDP-11 and Vax. Who else was selling
> significant amounts of FP hardware in the 1980s? Moto didn't ship the
> 68881 until 1984 which was pretty late.
>
> R's,
> John
> --
> Regards,
> John Levine, jo...@taugh.com, Primary Perpetrator of "The Internet for Dummies",
> Please consider the environment before reading this e-mail. https://jl.ly

|>Who else was selling > significant amounts of FP hardware in the 1980s?
https://en.wikipedia.org/wiki/Floating_Point_Systems

Perfect roudning of trogonometric functions (was: Mixed EGU/EGO floating-point)

<jwvee0wfbw7.fsf-monnier+comp.arch@gnu.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25265&group=comp.arch#25265

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: monn...@iro.umontreal.ca (Stefan Monnier)
Newsgroups: comp.arch
Subject: Perfect roudning of trogonometric functions (was: Mixed EGU/EGO floating-point)
Date: Sat, 14 May 2022 10:15:36 -0400
Organization: A noiseless patient Spider
Lines: 22
Message-ID: <jwvee0wfbw7.fsf-monnier+comp.arch@gnu.org>
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>
<9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>
<d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com>
<0b089a6c-6257-4675-8767-772d5e2a8ce5n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Injection-Info: reader02.eternal-september.org; posting-host="c7ac3f782217ae6b2eebbb2cec91cc8c";
logging-data="17285"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19KZnsns46cQs3bOlcAjatj"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
Cancel-Lock: sha1:VK5742T+9bA32rGw60JjGRW2GaU=
sha1:kDvN7MioYpioFd6Ydrza+m0C2u0=
 by: Stefan Monnier - Sat, 14 May 2022 14:15 UTC

> Consider that you lose 1 bit from the fraction in order to represent inexact.
> The inexact bit tells you to prepare and operand that is 1.fraction+epsilon
> Which is exactly what you would have had if you simply rounded to where
> the inexact bit would have been.

This reminds me of the "round to odd" used in:

https://blog.sigplan.org/2022/04/28/one-polynomial-approximation-to-produce-correctly-rounded-results-for-multiple-representations-and-rounding-modes/

They're not arguing for this "round to odd" behavior as the best choice
for the actual end result, but they take advantage of the fact that at
the cost of 2 extra bits of precision this rounding mode gives you
a number from which you can correctly round to any other (at least 2 bit
shorter) length in any rounding mode without suffering from any double
rounding error.

This lets them return "perfect" (½ ULP) results for sin/cos/... with any
rounding mode without having to use slightly different tables/formulas
for every different rounding.

Stefan

Re: Mixed EGU/EGO floating-point

<F%OfK.5587$56e6.4754@fx34.iad>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25266&group=comp.arch#25266

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx34.iad.POSTED!not-for-mail
From: ThatWoul...@thevillage.com (EricP)
User-Agent: Thunderbird 2.0.0.24 (Windows/20100228)
MIME-Version: 1.0
Newsgroups: comp.arch
Subject: Re: Mixed EGU/EGO floating-point
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com> <2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com> <2022May13.200449@mips.complang.tuwien.ac.at> <t5mqb6$1jpo$1@gal.iecc.com> <33507c37-6a00-47a5-a161-fb73f2373eden@googlegroups.com>
In-Reply-To: <33507c37-6a00-47a5-a161-fb73f2373eden@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 39
Message-ID: <F%OfK.5587$56e6.4754@fx34.iad>
X-Complaints-To: abuse@UsenetServer.com
NNTP-Posting-Date: Sat, 14 May 2022 14:27:49 UTC
Date: Sat, 14 May 2022 10:27:49 -0400
X-Received-Bytes: 2876
 by: EricP - Sat, 14 May 2022 14:27 UTC

JimBrakefield wrote:
> On Friday, May 13, 2022 at 6:41:29 PM UTC-5, John Levine wrote:
>> According to Anton Ertl <an...@mips.complang.tuwien.ac.at>:
>>> Quadibloc <jsa...@ecn.ab.ca> writes:
>>>> And the IEEE 754
>>>> standard has been hugely popular, as illustrated by its wide adoption.
>>>>
>>>> This could be due to the market power of the x86 due to Windows, and not
>>>> to any particular merit of the standard, of course; it's hard to tell.
>>> This particular claim is easy to refute: IEEE 754 won before Windows,
>>> so it did not become popular because of Windows. Basically all new
>>> architectures after IEEE 754 (1985) and a few before (e.g., 8087
>>> (1980), 68881 (1984)) adopted IEEE 754, and in time the older
>>> architectures adopted it as well. By contrast, Windows was not
>>> really successful before Windows 3 (1990).
>> MS-DOS was certainly popular in the 1980s. I was one of the authors of
>> Javelin, a time-series modelling package for MS DOS in the mid-1980s,
>> and all of the numeric stuff depended on 8087 arithmetic. There was a
>> hack to trap to an emulator if you didn't have a real 8087 but I think
>> the people who did stuff like bond yields usually did.
>>
>> At the time, the alternatives were IBM hex arithmetic which only ran on
>> expensive mainframes and has well-known performance issues, and I suppose
>> the formats that DEC used on the PDP-11 and Vax. Who else was selling
>> significant amounts of FP hardware in the 1980s? Moto didn't ship the
>> 68881 until 1984 which was pretty late.
>>
>> R's,
>> John
>> --
>> Regards,
>> John Levine, jo...@taugh.com, Primary Perpetrator of "The Internet for Dummies",
>> Please consider the environment before reading this e-mail. https://jl.ly
>
> |>Who else was selling > significant amounts of FP hardware in the 1980s?
> https://en.wikipedia.org/wiki/Floating_Point_Systems

https://en.wikipedia.org/wiki/Weitek

Re: Mixed EGU/EGO floating-point

<babee3d8-8d26-4e41-afb6-4cc2d5363419n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25270&group=comp.arch#25270

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a37:9442:0:b0:699:fd32:bc7d with SMTP id w63-20020a379442000000b00699fd32bc7dmr7418332qkd.615.1652553626985;
Sat, 14 May 2022 11:40:26 -0700 (PDT)
X-Received: by 2002:a05:6808:11ca:b0:2d9:a01a:488b with SMTP id
p10-20020a05680811ca00b002d9a01a488bmr10596217oiv.214.1652553626781; Sat, 14
May 2022 11:40:26 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sat, 14 May 2022 11:40:26 -0700 (PDT)
In-Reply-To: <49e3cbef-574a-4a5f-9ba2-c637980a63b0n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2a0d:6fc2:55b0:ca00:65dd:bb7:48b5:b678;
posting-account=ow8VOgoAAAAfiGNvoH__Y4ADRwQF1hZW
NNTP-Posting-Host: 2a0d:6fc2:55b0:ca00:65dd:bb7:48b5:b678
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com>
<2022May13.200449@mips.complang.tuwien.ac.at> <49e3cbef-574a-4a5f-9ba2-c637980a63b0n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <babee3d8-8d26-4e41-afb6-4cc2d5363419n@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: already5...@yahoo.com (Michael S)
Injection-Date: Sat, 14 May 2022 18:40:26 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 3206
 by: Michael S - Sat, 14 May 2022 18:40 UTC

On Friday, May 13, 2022 at 11:23:56 PM UTC+3, MitchAlsup wrote:
> On Friday, May 13, 2022 at 1:14:13 PM UTC-5, Anton Ertl wrote:
> > Quadibloc <jsa...@ecn.ab.ca> writes:
> > >And the IEEE 754
> > >standard has been hugely popular, as illustrated by its wide adoption.
> > >
> > >This could be due to the market power of the x86 due to Windows, and not
> > >to any particular merit of the standard, of course; it's hard to tell.
> <
> > This particular claim is easy to refute: IEEE 754 won before Windows,
> > so it did not become popular because of Windows. Basically all new
> > architectures after IEEE 754 (1985) and a few before (e.g., 8087
> <
> All of the first generation RISC machines were IEEE 754 with some allowance
> to compliance. These came out contemporaneously with 68881 and x87 but
> later. By 1985 there was nobody making CPUs, and trying to sell them in the
> millions*, that was not IEEE 754.

That is true for rather narrow definition of "CPU" that does not include TMS320C30/C40 series
that definitely was sold in higher numbers than S/360 and all dwarfs combined, and likely
by orders of magnitude.
I think, but not sure, that Motorola's 96000 series was also non- IEEE 754, but this one was not
particularly successful.
On the other hand, ADI 21000/SHARC series was IEEE-754 based from the beginning.

> <
> (*) leaves out IBM 360 derivatives, Boroughs, Univac, Honeywell, ...
> <
> > (1980), 68881 (1984)) adopted IEEE 754, and in time the older
> > architectures adopted it as well. By contrast, Windows was not
> > really successful before Windows 3 (1990).
> >
> > - anton
> > --
> > 'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
> > Mitch Alsup, <c17fcd89-f024-40e7...@googlegroups.com>

Re: Mixed EGU/EGO floating-point

<b3e306f5-0c7c-40a3-a278-51d64b44a062n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25272&group=comp.arch#25272

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a37:68ca:0:b0:6a0:4bd:6098 with SMTP id d193-20020a3768ca000000b006a004bd6098mr7745570qkc.605.1652554539496;
Sat, 14 May 2022 11:55:39 -0700 (PDT)
X-Received: by 2002:a05:6870:80ca:b0:f1:8fad:d9d1 with SMTP id
r10-20020a05687080ca00b000f18fadd9d1mr53226oab.125.1652554539263; Sat, 14 May
2022 11:55:39 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sat, 14 May 2022 11:55:39 -0700 (PDT)
In-Reply-To: <t5mqb6$1jpo$1@gal.iecc.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2a0d:6fc2:55b0:ca00:65dd:bb7:48b5:b678;
posting-account=ow8VOgoAAAAfiGNvoH__Y4ADRwQF1hZW
NNTP-Posting-Host: 2a0d:6fc2:55b0:ca00:65dd:bb7:48b5:b678
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com> <a4400d89-ce0d-4c76-aeb2-de2d13f40318n@googlegroups.com>
<2022May13.200449@mips.complang.tuwien.ac.at> <t5mqb6$1jpo$1@gal.iecc.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b3e306f5-0c7c-40a3-a278-51d64b44a062n@googlegroups.com>
Subject: Re: Mixed EGU/EGO floating-point
From: already5...@yahoo.com (Michael S)
Injection-Date: Sat, 14 May 2022 18:55:39 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 3403
 by: Michael S - Sat, 14 May 2022 18:55 UTC

On Saturday, May 14, 2022 at 2:41:29 AM UTC+3, John Levine wrote:
> According to Anton Ertl <an...@mips.complang.tuwien.ac.at>:
> >Quadibloc <jsa...@ecn.ab.ca> writes:
> >>And the IEEE 754
> >>standard has been hugely popular, as illustrated by its wide adoption.
> >>
> >>This could be due to the market power of the x86 due to Windows, and not
> >>to any particular merit of the standard, of course; it's hard to tell.
> >
> >This particular claim is easy to refute: IEEE 754 won before Windows,
> >so it did not become popular because of Windows. Basically all new
> >architectures after IEEE 754 (1985) and a few before (e.g., 8087
> >(1980), 68881 (1984)) adopted IEEE 754, and in time the older
> >architectures adopted it as well. By contrast, Windows was not
> >really successful before Windows 3 (1990).
> MS-DOS was certainly popular in the 1980s. I was one of the authors of
> Javelin, a time-series modelling package for MS DOS in the mid-1980s,
> and all of the numeric stuff depended on 8087 arithmetic. There was a
> hack to trap to an emulator if you didn't have a real 8087 but I think
> the people who did stuff like bond yields usually did.
>
> At the time, the alternatives were IBM hex arithmetic which only ran on
> expensive mainframes and has well-known performance issues, and I suppose
> the formats that DEC used on the PDP-11 and Vax. Who else was selling
> significant amounts of FP hardware in the 1980s?

Depends on definition of "significant".
Supercomputer vendors (Cray, NEC, other Japanese vendors and one or two Soviet) we
not selling many machines, but rather significant number of FLOPs. Of course, significant
by standards of the 1st half of 80s, i.e, before the famous attack of the 'Killer Micros'.

> Moto didn't ship the
> 68881 until 1984 which was pretty late.
>
> R's,
> John
> --
> Regards,
> John Levine, jo...@taugh.com, Primary Perpetrator of "The Internet for Dummies",
> Please consider the environment before reading this e-mail. https://jl.ly

Re: Perfect roudning of trogonometric functions

<t5p2er$vso$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=25273&group=comp.arch#25273

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!aioe.org!10O9MudpjwoXIahOJRbDvA.user.46.165.242.91.POSTED!not-for-mail
From: terje.ma...@tmsw.no (Terje Mathisen)
Newsgroups: comp.arch
Subject: Re: Perfect roudning of trogonometric functions
Date: Sat, 14 May 2022 22:12:12 +0200
Organization: Aioe.org NNTP Server
Message-ID: <t5p2er$vso$1@gioia.aioe.org>
References: <de735513-d303-42b6-b375-916b89ddafcan@googlegroups.com>
<2a41be98-e9c8-4159-bef7-ba7999e278ecn@googlegroups.com>
<9264b6fa-e9c9-4f77-957b-4a71dc7ca0d3n@googlegroups.com>
<d6081c6f-68db-4a1b-9110-6087189b427en@googlegroups.com>
<0b089a6c-6257-4675-8767-772d5e2a8ce5n@googlegroups.com>
<jwvee0wfbw7.fsf-monnier+comp.arch@gnu.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Info: gioia.aioe.org; logging-data="32664"; posting-host="10O9MudpjwoXIahOJRbDvA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101
Firefox/68.0 SeaMonkey/2.53.12
X-Notice: Filtered by postfilter v. 0.9.2
 by: Terje Mathisen - Sat, 14 May 2022 20:12 UTC

Stefan Monnier wrote:
>> Consider that you lose 1 bit from the fraction in order to represent inexact.
>> The inexact bit tells you to prepare and operand that is 1.fraction+epsilon
>> Which is exactly what you would have had if you simply rounded to where
>> the inexact bit would have been.
>
> This reminds me of the "round to odd" used in:
>
> https://blog.sigplan.org/2022/04/28/one-polynomial-approximation-to-produce-correctly-rounded-results-for-multiple-representations-and-rounding-modes/
>
> They're not arguing for this "round to odd" behavior as the best choice
> for the actual end result, but they take advantage of the fact that at
> the cost of 2 extra bits of precision this rounding mode gives you
> a number from which you can correctly round to any other (at least 2 bit
> shorter) length in any rounding mode without suffering from any double
> rounding error.
>
> This lets them return "perfect" (½ ULP) results for sin/cos/... with any
> rounding mode without having to use slightly different tables/formulas
> for every different rounding.

Their two extra bits sounds exactly the same as guard & sticky which is
what every FP implementation (hardware or software) need as a minimum
solution in order to handle any rounding mode correctly.

I would not call it "round to odd" though, in reality "sticky" is the OR
of itself and all trailing bits. I.e. if there are _any_ bits set past
the guard bit, then sticky will be true/1.

Terje

--
- <Terje.Mathisen at tmsw.no>
"almost all programming can be viewed as an exercise in caching"

Pages:12345
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor