Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Beware of the Turing Tar-pit in which everything is possible but nothing of interest is easy.


tech / sci.electronics.design / high accuracy math library

SubjectAuthor
* high accuracy math libraryHul Tytus
+* Re: high accuracy math libraryjlarkin
|`- Re: high accuracy math libraryHul Tytus
+* Re: high accuracy math libraryMartin Brown
|`* Re: high accuracy math libraryJoe Gwinn
| `* Re: high accuracy math libraryMartin Brown
|  +* Re: high accuracy math libraryjlarkin
|  |+- Re: high accuracy math libraryRick C
|  |`* Re: high accuracy math libraryMartin Brown
|  | +* Re: high accuracy math libraryDon Y
|  | |`* Re: high accuracy math libraryjlarkin
|  | | `* Re: high accuracy math libraryDavid Brown
|  | |  `- Re: high accuracy math libraryClifford Heath
|  | +* Re: high accuracy math libraryDavid Brown
|  | |`* Re: high accuracy math libraryLasse Langwadt Christensen
|  | | +- Re: high accuracy math libraryDavid Brown
|  | | `* Re: high accuracy math librarywhit3rd
|  | |  `- Re: high accuracy math libraryDavid Brown
|  | +* Re: high accuracy math libraryjlarkin
|  | |+* Re: high accuracy math libraryDavid Brown
|  | ||`* Re: high accuracy math libraryLasse Langwadt Christensen
|  | || `- Re: high accuracy math libraryDavid Brown
|  | |+* Re: high accuracy math libraryMartin Brown
|  | ||+- Re: high accuracy math libraryJan Panteltje
|  | ||`* Re: high accuracy math libraryDavid Brown
|  | || `* Re: high accuracy math libraryJan Panteltje
|  | ||  +* Re: high accuracy math libraryPhil Hobbs
|  | ||  |`- Re: high accuracy math libraryJan Panteltje
|  | ||  +* Re: high accuracy math libraryjlarkin
|  | ||  |`- Re: high accuracy math libraryJan Panteltje
|  | ||  `- Re: high accuracy math libraryDecadentLinuxUserNumeroUno
|  | |`- Re: high accuracy math libraryPhil Hobbs
|  | `* Re: high accuracy math libraryPhil Hobbs
|  |  `- Re: high accuracy math libraryMartin Brown
|  `* Re: high accuracy math libraryJoe Gwinn
|   +* Re: high accuracy math libraryPhil Hobbs
|   |`- Re: high accuracy math libraryJoe Gwinn
|   `- Re: high accuracy math libraryMartin Brown
`- Re: high accuracy math libraryClifford Heath

Pages:12
high accuracy math library

<srs9k9$217$2@reader1.panix.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87784&group=sci.electronics.design#87784

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!panix!.POSTED.panix2.panix.com!not-for-mail
From: ht...@panix.com (Hul Tytus)
Newsgroups: sci.electronics.design
Subject: high accuracy math library
Date: Fri, 14 Jan 2022 16:50:17 -0000 (UTC)
Organization: PANIX Public Access Internet and UNIX, NYC
Message-ID: <srs9k9$217$2@reader1.panix.com>
Injection-Date: Fri, 14 Jan 2022 16:50:17 -0000 (UTC)
Injection-Info: reader1.panix.com; posting-host="panix2.panix.com:166.84.1.2";
logging-data="2087"; mail-complaints-to="abuse@panix.com"
 by: Hul Tytus - Fri, 14 Jan 2022 16:50 UTC

There was once a math library in c, if memory serves, with the
basic functions, ie +, -, * and / and some others also. The resolution
was adjustable so changing a reference variable (or was that a #define?)
from 32 to 256 would change the size of the variables to 256 bits.
Anyone rember the name or location of that library?

Hul

Re: high accuracy math library

<kla3ug9htlo1u4jm033aoi4qr4pkj67i8v@4ax.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87785&group=sci.electronics.design#87785

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!nntp.supernews.com!news.supernews.com.POSTED!not-for-mail
NNTP-Posting-Date: Fri, 14 Jan 2022 10:54:38 -0600
From: jlar...@highlandsniptechnology.com
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Fri, 14 Jan 2022 08:54:39 -0800
Message-ID: <kla3ug9htlo1u4jm033aoi4qr4pkj67i8v@4ax.com>
References: <srs9k9$217$2@reader1.panix.com>
X-Newsreader: Forte Agent 3.1/32.783
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 20
X-Trace: sv3-XDVNmxB+CiQfFKXbYqNnqMslrTVXc9VMVhGGGkMYYIjpNYK37wOcjZef1ixL1lRh13mT4M2RVRBaOxg!mXPYK0lsZxtnFTOmOJ48cOzAa2AgWgw/tT3j4KMHi5wXdoJjOh6+Fi+BSABtdrSsWSPb4XZHsH5Z!A02oeQ==
X-Complaints-To: www.supernews.com/docs/abuse.html
X-DMCA-Complaints-To: www.supernews.com/docs/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 1601
 by: jlar...@highlandsniptechnology.com - Fri, 14 Jan 2022 16:54 UTC

On Fri, 14 Jan 2022 16:50:17 -0000 (UTC), Hul Tytus <ht@panix.com>
wrote:

> There was once a math library in c, if memory serves, with the
>basic functions, ie +, -, * and / and some others also. The resolution
>was adjustable so changing a reference variable (or was that a #define?)
>from 32 to 256 would change the size of the variables to 256 bits.
>Anyone rember the name or location of that library?
>
>Hul

There seem to be a bunch:

https://en.wikipedia.org/wiki/List_of_arbitrary-precision_arithmetic_software

--

I yam what I yam - Popeye

Re: high accuracy math library

<srsef1$1trj$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87788&group=sci.electronics.design#87788

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!aioe.org!OIRGNq1ADRVRlWCMma5QPA.user.46.165.242.75.POSTED!not-for-mail
From: '''newsp...@nonad.co.uk (Martin Brown)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Fri, 14 Jan 2022 18:12:43 +0000
Organization: Aioe.org NNTP Server
Message-ID: <srsef1$1trj$1@gioia.aioe.org>
References: <srs9k9$217$2@reader1.panix.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="63347"; posting-host="OIRGNq1ADRVRlWCMma5QPA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.5.0
Content-Language: en-GB
X-Notice: Filtered by postfilter v. 0.9.2
 by: Martin Brown - Fri, 14 Jan 2022 18:12 UTC

On 14/01/2022 16:50, Hul Tytus wrote:
> There was once a math library in c, if memory serves, with the
> basic functions, ie +, -, * and / and some others also. The resolution
> was adjustable so changing a reference variable (or was that a #define?)
> from 32 to 256 would change the size of the variables to 256 bits.
> Anyone rember the name or location of that library?

I don't recall that particular one but GCC can be fairly easily
persuaded to go up to 128 bit reals which are usually good enough for
all but the most insane of floating point calculations.

I think your choices there are limited to 32, 64, 80, 128

https://gcc.gnu.org/onlinedocs/gcc/Floating-Types.html

It includes the most common transcendental functions as well.

Quad floating precision runs slowly so do as much as you can at a lower
precision and then refine the answer using that as a seed value.

I used to like having 80 bit reals available in the good old prehistoric
days of MSC v6. Today it requires some effort to use them with MSC :(

--
Regards,
Martin Brown

Re: high accuracy math library

<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87795&group=sci.electronics.design#87795

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!kf5zxw.com!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Fri, 14 Jan 2022 15:01:13 -0600
From: joegw...@comcast.net (Joe Gwinn)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Fri, 14 Jan 2022 16:01:12 -0500
Message-ID: <vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
User-Agent: ForteAgent/8.00.32.1272
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 46
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-yd2Etp+V/eZbxVlPNjqYmJrhn0MwSLzU+td//QVveGzrCap+OeC+VXmkQ4l4NUagbi6RL94wzVQyhV3!RGuUe8tQMYq+18y7y1mt8v/ovbWv4KlCVm0aM5H9uAwYQamp9L0rtFoOQqWSOJJFGrStp4c=
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 3171
 by: Joe Gwinn - Fri, 14 Jan 2022 21:01 UTC

On Fri, 14 Jan 2022 18:12:43 +0000, Martin Brown
<'''newspam'''@nonad.co.uk> wrote:

>On 14/01/2022 16:50, Hul Tytus wrote:
>> There was once a math library in c, if memory serves, with the
>> basic functions, ie +, -, * and / and some others also. The resolution
>> was adjustable so changing a reference variable (or was that a #define?)
>> from 32 to 256 would change the size of the variables to 256 bits.
>> Anyone rember the name or location of that library?
>
>I don't recall that particular one but GCC can be fairly easily
>persuaded to go up to 128 bit reals which are usually good enough for
>all but the most insane of floating point calculations.
>
>I think your choices there are limited to 32, 64, 80, 128
>
> <https://gcc.gnu.org/onlinedocs/gcc/Floating-Types.html>
>
>It includes the most common transcendental functions as well.
>
>Quad floating precision runs slowly so do as much as you can at a lower
>precision and then refine the answer using that as a seed value.
>
>I used to like having 80 bit reals available in the good old prehistoric
>days of MSC v6. Today it requires some effort to use them with MSC :(

In the old days, only VAX/VMS had hardware support for 128-bit floats
(not IEEE format though). In the cited GCC list, which of these are
directly supported in hardware, versus software emulation?

Most current machines directly support multi precision integer
arithmetic for power-of-2 lengths, but it is done in multiple
coordinated machine-code operations, so it's partly in software.

Of course, when the word size goes up, the various approximations
polynomials must improve, which generally means to use higher-order
polynomials, so the slowdown isn't all due to slower computational
hardware.

The only real application of 128-bit floats that I am aware of was the
design of interferometers such as LIGO, where one is tracking very
small fractions of an optical wavelength over path lengths in the
kilometers, with at least two spare decimal digits to absorb numerical
noise from the ray-trace computations.

Joe Gwinn

Re: high accuracy math library

<16ca45d3a1ea68ad$1$4049807$eadde062@news.thecubenet.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87800&group=sci.electronics.design#87800

  copy link   Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Newsgroups: sci.electronics.design
References: <srs9k9$217$2@reader1.panix.com>
From: no.s...@please.net (Clifford Heath)
Date: Sat, 15 Jan 2022 10:09:47 +1100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <srs9k9$217$2@reader1.panix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
Message-ID: <16ca45d3a1ea68ad$1$4049807$eadde062@news.thecubenet.com>
Lines: 12
Path: i2pn2.org!rocksolid2!news.neodome.net!3.eu.feeder.erje.net!feeder.erje.net!newsfeed.xs4all.nl!newsfeed9.news.xs4all.nl!tr2.eu1.usenetexpress.com!feeder.usenetexpress.com!tr2.iad1.usenetexpress.com!news.thecubenet.com!not-for-mail
NNTP-Posting-Date: Fri, 14 Jan 2022 23:09:49 +0000
X-Received-Bytes: 956
Organization: theCubeNet - www.thecubenet.com
X-Complaints-To: abuse@thecubenet.com
 by: Clifford Heath - Fri, 14 Jan 2022 23:09 UTC

On 15/1/22 3:50 am, Hul Tytus wrote:
> There was once a math library in c, if memory serves, with the
> basic functions, ie +, -, * and / and some others also. The resolution
> was adjustable so changing a reference variable (or was that a #define?)
> from 32 to 256 would change the size of the variables to 256 bits.
> Anyone rember the name or location of that library?

You might be remembering the GNU Multiple Precision Library:
<https://gmplib.org/>

CH

Re: high accuracy math library

<srut1a$adr$1@reader1.panix.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87857&group=sci.electronics.design#87857

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!panix!.POSTED.panix2.panix.com!not-for-mail
From: ht...@panix.com (Hul Tytus)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sat, 15 Jan 2022 16:33:46 -0000 (UTC)
Organization: PANIX Public Access Internet and UNIX, NYC
Message-ID: <srut1a$adr$1@reader1.panix.com>
References: <srs9k9$217$2@reader1.panix.com> <kla3ug9htlo1u4jm033aoi4qr4pkj67i8v@4ax.com>
Injection-Date: Sat, 15 Jan 2022 16:33:46 -0000 (UTC)
Injection-Info: reader1.panix.com; posting-host="panix2.panix.com:166.84.1.2";
logging-data="10683"; mail-complaints-to="abuse@panix.com"
 by: Hul Tytus - Sat, 15 Jan 2022 16:33 UTC

Thanks for the references everyone.

Hul

jlarkin@highlandsniptechnology.com wrote:
> On Fri, 14 Jan 2022 16:50:17 -0000 (UTC), Hul Tytus <ht@panix.com>
> wrote:

> > There was once a math library in c, if memory serves, with the
> >basic functions, ie +, -, * and / and some others also. The resolution
> >was adjustable so changing a reference variable (or was that a #define?)
> >from 32 to 256 would change the size of the variables to 256 bits.
> >Anyone rember the name or location of that library?
> >
> >Hul

> There seem to be a bunch:

> https://en.wikipedia.org/wiki/List_of_arbitrary-precision_arithmetic_software

> --

> I yam what I yam - Popeye

Re: high accuracy math library

<srv1gt$119o$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87862&group=sci.electronics.design#87862

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!aioe.org!OIRGNq1ADRVRlWCMma5QPA.user.46.165.242.75.POSTED!not-for-mail
From: '''newsp...@nonad.co.uk (Martin Brown)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sat, 15 Jan 2022 17:50:14 +0000
Organization: Aioe.org NNTP Server
Message-ID: <srv1gt$119o$1@gioia.aioe.org>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="34104"; posting-host="OIRGNq1ADRVRlWCMma5QPA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.5.0
X-Notice: Filtered by postfilter v. 0.9.2
Content-Language: en-GB
 by: Martin Brown - Sat, 15 Jan 2022 17:50 UTC

On 14/01/2022 21:01, Joe Gwinn wrote:
> On Fri, 14 Jan 2022 18:12:43 +0000, Martin Brown
> <'''newspam'''@nonad.co.uk> wrote:
>
>> On 14/01/2022 16:50, Hul Tytus wrote:
>>> There was once a math library in c, if memory serves, with the
>>> basic functions, ie +, -, * and / and some others also. The resolution
>>> was adjustable so changing a reference variable (or was that a #define?)
>>> from 32 to 256 would change the size of the variables to 256 bits.
>>> Anyone rember the name or location of that library?
>>
>> I don't recall that particular one but GCC can be fairly easily
>> persuaded to go up to 128 bit reals which are usually good enough for
>> all but the most insane of floating point calculations.
>>
>> I think your choices there are limited to 32, 64, 80, 128
>>
>> <https://gcc.gnu.org/onlinedocs/gcc/Floating-Types.html>
>>
>> It includes the most common transcendental functions as well.
>>
>> Quad floating precision runs slowly so do as much as you can at a lower
>> precision and then refine the answer using that as a seed value.
>>
>> I used to like having 80 bit reals available in the good old prehistoric
>> days of MSC v6. Today it requires some effort to use them with MSC :(
>
> In the old days, only VAX/VMS had hardware support for 128-bit floats
> (not IEEE format though). In the cited GCC list, which of these are
> directly supported in hardware, versus software emulation?

32, 64 are native x87 and full SSE floating point support
80 x87 only but GCC does it fairly well
128 emulated and slower

Always work in the hardware supported ones to obtain an approximate
answer unless and until you need that extra precision.

Preferably frame it so you refine an approximate starting guess.
>
> Most current machines directly support multi precision integer
> arithmetic for power-of-2 lengths, but it is done in multiple
> coordinated machine-code operations, so it's partly in software.

32, 64 and 128 integer support are sometimes native at least for some
platforms. +, - and * all execute in one nominal CPU cycle* too!
(at least for 32, 64 bit - I have never bothered with 128 bit int)

* sometimes they can appear to take less than one cycle due to out of
order execution and the opportunities to do work whilst divides are in
progress. Divides are always best avoided or if that is impossible their
number minimised. Divide is between 10-20x slower than all the other
primitive operations and two divides close together can be *much*
slower. Pipeline stalls typically cost around 90 cycles per hit.

divide remains a PITA and worth eliminating where possible.

I have an assembler implementation for a special case division that can
be faster than the hardware divide for the situation it aims to solve.

Basically 1/(1-x) = 1 + x + x^2 + x^3 + x^4 + ...
(1 + x)*(1 + x^2)*(1 + x^4)*(1 + x^8)

And for smallish x it converges faster than hardware FP divide.

> Of course, when the word size goes up, the various approximations
> polynomials must improve, which generally means to use higher-order
> polynomials, so the slowdown isn't all due to slower computational
> hardware.

There aren't all that many that need it.

Most planetary dynamics can be done with 80 bit reals with a bit to spare.

> The only real application of 128-bit floats that I am aware of was the
> design of interferometers such as LIGO, where one is tracking very
> small fractions of an optical wavelength over path lengths in the
> kilometers, with at least two spare decimal digits to absorb numerical
> noise from the ray-trace computations.

That might be a genuine application.

The only times I have played with them have been to investigate the
weird constants that play a part in some chaotic equations. I was
curious to see how much of the behaviour was due to finite mantissa
length and how much was inherent in the mathematics. Doubling the length
of the mantissa goes a long way to solving that particular problem.
(but it is rather slow)

--
Regards,
Martin Brown

Re: high accuracy math library

<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87865&group=sci.electronics.design#87865

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!nntp.supernews.com!news.supernews.com.POSTED!not-for-mail
NNTP-Posting-Date: Sat, 15 Jan 2022 11:58:41 -0600
From: jlar...@highlandsniptechnology.com
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sat, 15 Jan 2022 09:58:42 -0800
Message-ID: <ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org> <vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
X-Newsreader: Forte Agent 3.1/32.783
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 44
X-Trace: sv3-EftMXJfjZe9HVxFcZHL+70ndDPEqz+BDYMf+dNMbs/uim8Tmj7PUNQAW5ArfRn5F/+bXm//iQFNRDL/!t9Ji1MEAubA+VFIMuuESI6PFoI/thcs6ueBEsmcRQ8Gmh2YVNItBciAxeXzvkhQO8IaaXf9QDXFQ!EQtGug==
X-Complaints-To: www.supernews.com/docs/abuse.html
X-DMCA-Complaints-To: www.supernews.com/docs/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 2917
 by: jlar...@highlandsniptechnology.com - Sat, 15 Jan 2022 17:58 UTC

On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
<'''newspam'''@nonad.co.uk> wrote:

>On 14/01/2022 21:01, Joe Gwinn wrote:
>> On Fri, 14 Jan 2022 18:12:43 +0000, Martin Brown
>> <'''newspam'''@nonad.co.uk> wrote:
>>
>>> On 14/01/2022 16:50, Hul Tytus wrote:
>>>> There was once a math library in c, if memory serves, with the
>>>> basic functions, ie +, -, * and / and some others also. The resolution
>>>> was adjustable so changing a reference variable (or was that a #define?)
>>>> from 32 to 256 would change the size of the variables to 256 bits.
>>>> Anyone rember the name or location of that library?
>>>
>>> I don't recall that particular one but GCC can be fairly easily
>>> persuaded to go up to 128 bit reals which are usually good enough for
>>> all but the most insane of floating point calculations.
>>>
>>> I think your choices there are limited to 32, 64, 80, 128
>>>
>>> <https://gcc.gnu.org/onlinedocs/gcc/Floating-Types.html>
>>>
>>> It includes the most common transcendental functions as well.
>>>
>>> Quad floating precision runs slowly so do as much as you can at a lower
>>> precision and then refine the answer using that as a seed value.
>>>
>>> I used to like having 80 bit reals available in the good old prehistoric
>>> days of MSC v6. Today it requires some effort to use them with MSC :(
>>
>> In the old days, only VAX/VMS had hardware support for 128-bit floats
>> (not IEEE format though). In the cited GCC list, which of these are
>> directly supported in hardware, versus software emulation?
>
>32, 64 are native x87 and full SSE floating point support
>80 x87 only but GCC does it fairly well

Power Basic has a native 80-bit float type and a 64-bit integer.

--

I yam what I yam - Popeye

Re: high accuracy math library

<357db0fa-745b-43b2-a453-c9bc93111c82n@googlegroups.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87893&group=sci.electronics.design#87893

  copy link   Newsgroups: sci.electronics.design
X-Received: by 2002:a05:622a:1792:: with SMTP id s18mr12490122qtk.684.1642289343024;
Sat, 15 Jan 2022 15:29:03 -0800 (PST)
X-Received: by 2002:a25:a402:: with SMTP id f2mr20407058ybi.87.1642289342831;
Sat, 15 Jan 2022 15:29:02 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: sci.electronics.design
Date: Sat, 15 Jan 2022 15:29:02 -0800 (PST)
In-Reply-To: <ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com>
Injection-Info: google-groups.googlegroups.com; posting-host=65.207.89.54; posting-account=I-_H_woAAAA9zzro6crtEpUAyIvzd19b
NNTP-Posting-Host: 65.207.89.54
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org> <ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <357db0fa-745b-43b2-a453-c9bc93111c82n@googlegroups.com>
Subject: Re: high accuracy math library
From: gnuarm.d...@gmail.com (Rick C)
Injection-Date: Sat, 15 Jan 2022 23:29:03 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 46
 by: Rick C - Sat, 15 Jan 2022 23:29 UTC

On Saturday, January 15, 2022 at 12:58:54 PM UTC-5, jla...@highlandsniptechnology.com wrote:
> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
> <'''newspam'''@nonad.co.uk> wrote:
>
> >On 14/01/2022 21:01, Joe Gwinn wrote:
> >> On Fri, 14 Jan 2022 18:12:43 +0000, Martin Brown
> >> <'''newspam'''@nonad.co.uk> wrote:
> >>
> >>> On 14/01/2022 16:50, Hul Tytus wrote:
> >>>> There was once a math library in c, if memory serves, with the
> >>>> basic functions, ie +, -, * and / and some others also. The resolution
> >>>> was adjustable so changing a reference variable (or was that a #define?)
> >>>> from 32 to 256 would change the size of the variables to 256 bits.
> >>>> Anyone rember the name or location of that library?
> >>>
> >>> I don't recall that particular one but GCC can be fairly easily
> >>> persuaded to go up to 128 bit reals which are usually good enough for
> >>> all but the most insane of floating point calculations.
> >>>
> >>> I think your choices there are limited to 32, 64, 80, 128
> >>>
> >>> <https://gcc.gnu.org/onlinedocs/gcc/Floating-Types.html>
> >>>
> >>> It includes the most common transcendental functions as well.
> >>>
> >>> Quad floating precision runs slowly so do as much as you can at a lower
> >>> precision and then refine the answer using that as a seed value.
> >>>
> >>> I used to like having 80 bit reals available in the good old prehistoric
> >>> days of MSC v6. Today it requires some effort to use them with MSC :(
> >>
> >> In the old days, only VAX/VMS had hardware support for 128-bit floats
> >> (not IEEE format though). In the cited GCC list, which of these are
> >> directly supported in hardware, versus software emulation?
> >
> >32, 64 are native x87 and full SSE floating point support
> >80 x87 only but GCC does it fairly well
> Power Basic has a native 80-bit float type and a 64-bit integer.

Which corresponds to floating point types supported in the early Intel chips.

--

Rick C.

- Get 1,000 miles of free Supercharging
- Tesla referral code - https://ts.la/richard11209

Re: high accuracy math library

<ss0oci$apf$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87924&group=sci.electronics.design#87924

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!news.uzoreto.com!aioe.org!OIRGNq1ADRVRlWCMma5QPA.user.46.165.242.75.POSTED!not-for-mail
From: '''newsp...@nonad.co.uk (Martin Brown)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sun, 16 Jan 2022 09:26:42 +0000
Organization: Aioe.org NNTP Server
Message-ID: <ss0oci$apf$1@gioia.aioe.org>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="11055"; posting-host="OIRGNq1ADRVRlWCMma5QPA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.5.0
X-Notice: Filtered by postfilter v. 0.9.2
Content-Language: en-GB
 by: Martin Brown - Sun, 16 Jan 2022 09:26 UTC

On 15/01/2022 17:58, jlarkin@highlandsniptechnology.com wrote:
> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
> <'''newspam'''@nonad.co.uk> wrote:
>
>> On 14/01/2022 21:01, Joe Gwinn wrote:
>>>
>>> In the old days, only VAX/VMS had hardware support for 128-bit floats

Probably a very wasteful decision that cost them dear. The requirement
for anything above a 64 bit FP word length is very esoteric.

The most popular back in that era for high speed floating point was the
Cyber 7600 (60 bit word) which powered Manchester universities Jodrell
Bank processing and BMEWS early warning system amongst other things.

>>> (not IEEE format though). In the cited GCC list, which of these are
>>> directly supported in hardware, versus software emulation?
>>
>> 32, 64 are native x87 and full SSE floating point support
>> 80 x87 only but GCC does it fairly well
>
> Power Basic has a native 80-bit float type and a 64-bit integer.

I'm so impressed. NOT

MS C used to have it back in the old v6 days but they rationalised
things to only have 64 bit FP support in C/C++ a very long time ago.

Most decent compilers *do* offer 80 bit reals. It is a pity that
Mickeysoft don't because their code optimiser is streets ahead of both
Intel and GCC's at handling out of order execution parallelism.

Intel C and GCC compilers still support 80 bit floating point.

On the code I have been testing recently Intel generates code that
effectively *forces* a pipeline stall more often than not. MSC somehow
manages the opposite. Pipeline stalls cost around 90 cycles which is not
insignificant in a routine that should take 300 cycles.

Putting two divides close together with the second one dependent on the
result of the other is one way to do it. MSC tries much harder to
utilise the cycles where the divide hardware isn't ready to answer.
(at least it does when you enable every possible speed optimisation)

Sometimes it generates loop unrolled code that is completely wrong too :(

--
Regards,
Martin Brown

Re: high accuracy math library

<ss0qqd$c4r$1@dont-email.me>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87927&group=sci.electronics.design#87927

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: blockedo...@foo.invalid (Don Y)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sun, 16 Jan 2022 03:08:06 -0700
Organization: A noiseless patient Spider
Lines: 25
Message-ID: <ss0qqd$c4r$1@dont-email.me>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 16 Jan 2022 10:08:13 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="0a58ceda9743efc5b5a6e730f7b2af7f";
logging-data="12443"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/i2GYspsT+DNMSCzLcrQ4i"
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101
Thunderbird/52.1.1
Cancel-Lock: sha1:siRYyrP+WqI1xoHHu0Ujgc2FIe8=
In-Reply-To: <ss0oci$apf$1@gioia.aioe.org>
Content-Language: en-US
 by: Don Y - Sun, 16 Jan 2022 10:08 UTC

On 1/16/2022 2:26 AM, Martin Brown wrote:
> On 15/01/2022 17:58, jlarkin@highlandsniptechnology.com wrote:
>> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
>> <'''newspam'''@nonad.co.uk> wrote:
>>
>>> On 14/01/2022 21:01, Joe Gwinn wrote:
>>>>
>>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
>
> Probably a very wasteful decision that cost them dear. The requirement for
> anything above a 64 bit FP word length is very esoteric.
>
> The most popular back in that era for high speed floating point was the Cyber
> 7600 (60 bit word) which powered Manchester universities Jodrell Bank
> processing and BMEWS early warning system amongst other things.

IIRC, the 645 had support for a 71 bit mantissa (?) ca 1970.

OTOH, it's not like there were many units built! ("popular") :>

A shame that so many (all?) of those early machines turned out
to be (mostly) evolutionary dead-ends. Imagine what things
would be like had we started *there* instead of from Intel's
misgivings...

Re: high accuracy math library

<ss0t0h$olt$1@dont-email.me>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87930&group=sci.electronics.design#87930

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!news.freedyn.de!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: david.br...@hesbynett.no (David Brown)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sun, 16 Jan 2022 11:45:36 +0100
Organization: A noiseless patient Spider
Lines: 27
Message-ID: <ss0t0h$olt$1@dont-email.me>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 16 Jan 2022 10:45:37 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="995a5d475f184f3679ec3542d1d117f5";
logging-data="25277"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18sAHwF6s/pI3OyKaLmQk+04Ip+JC9THGQ="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:ThJv8OvFg2+kyAucJDqNCsd5BQQ=
In-Reply-To: <ss0oci$apf$1@gioia.aioe.org>
Content-Language: en-GB
 by: David Brown - Sun, 16 Jan 2022 10:45 UTC

On 16/01/2022 10:26, Martin Brown wrote:
> On 15/01/2022 17:58, jlarkin@highlandsniptechnology.com wrote:
>> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
>> <'''newspam'''@nonad.co.uk> wrote:
>>
>>> On 14/01/2022 21:01, Joe Gwinn wrote:
>>>>
>>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
>
> Probably a very wasteful decision that cost them dear. The requirement
> for anything above a 64 bit FP word length is very esoteric.
>

And thus most VAX processors emulated it in software - only a few had
hardware support. (It is not unlikely that software emulation was
faster than hardware for some tasks - hardware floating point used to be
very slow for anything other than add, subtract and multiply.)

It's rare that 128-bit floats are useful - if you need more than 64-bit,
you probably need more than 128-bit and would be looking at arbitrary
precision floating point libraries.

>
> Sometimes it generates loop unrolled code that is completely wrong too :(
>

It's easy to generate fast code if it doesn't have to be correct!

Re: high accuracy math library

<6he8ug9j479o12bprsegh4vtf5ucl2m786@4ax.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87939&group=sci.electronics.design#87939

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!nntp.supernews.com!news.supernews.com.POSTED!not-for-mail
NNTP-Posting-Date: Sun, 16 Jan 2022 09:50:28 -0600
From: jlar...@highlandsniptechnology.com
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sun, 16 Jan 2022 07:50:30 -0800
Message-ID: <6he8ug9j479o12bprsegh4vtf5ucl2m786@4ax.com>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org> <vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org> <ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
X-Newsreader: Forte Agent 3.1/32.783
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 57
X-Trace: sv3-nZtvCUQ9O8ZbxC4pGvg3AGhdlithZ20bLRFoAgnRx+pP3OPWti6biQrJJL13yCB3X2Xd4Kmifkk3ziZ!46ZbIP0PhqmUySD+plxvxir0BLfV0rw9R+egAHp1V4/xmUEu4pgsSyBVYS85zQAPK6q9gH8LOG1h!BVx/lQ==
X-Complaints-To: www.supernews.com/docs/abuse.html
X-DMCA-Complaints-To: www.supernews.com/docs/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 3379
 by: jlar...@highlandsniptechnology.com - Sun, 16 Jan 2022 15:50 UTC

On Sun, 16 Jan 2022 09:26:42 +0000, Martin Brown
<'''newspam'''@nonad.co.uk> wrote:

>On 15/01/2022 17:58, jlarkin@highlandsniptechnology.com wrote:
>> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
>> <'''newspam'''@nonad.co.uk> wrote:
>>
>>> On 14/01/2022 21:01, Joe Gwinn wrote:
>>>>
>>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
>
>Probably a very wasteful decision that cost them dear. The requirement
>for anything above a 64 bit FP word length is very esoteric.
>
>The most popular back in that era for high speed floating point was the
>Cyber 7600 (60 bit word) which powered Manchester universities Jodrell
>Bank processing and BMEWS early warning system amongst other things.
>
>>>> (not IEEE format though). In the cited GCC list, which of these are
>>>> directly supported in hardware, versus software emulation?
>>>
>>> 32, 64 are native x87 and full SSE floating point support
>>> 80 x87 only but GCC does it fairly well
>>
>> Power Basic has a native 80-bit float type and a 64-bit integer.
>
>I'm so impressed. NOT

Of course not. The word BASIC triggers too much emotion, facts not
required.

We had a couple of cases where we wanted to do a signal processing
routine that processed an array of adc samples, on x86. My official
programmer guys did it in gcc and I did it in Power Basic. Mine used
subscripts in the most obvious loop and they used pointers. Mine ran
4x as fast. After a day of mucking with code and compiler switches,
many combinations, they got within about 40%.

Python looks a lot like Basic to me. Some of the goofier features were
added so that it couldn't be directly accused of being Basic syntax,
which would have been toxic.

PB has wonderful string functions. It has TCP OPEN and such, and can
send/receive emails if you really want to. The cool stuff is native,
not libraries; make an EXE file in half a second and you're done.

We wrote MAX, our material control/BOM program, in PowerBasic. It's
great. We couldn't find any commercial packages that actually
understand electronics manufacturing.

--

I yam what I yam - Popeye

Re: high accuracy math library

<qmf8ug1ti56eeegvp40gn7qv5dr77cf5ja@4ax.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87940&group=sci.electronics.design#87940

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!nntp.supernews.com!news.supernews.com.POSTED!not-for-mail
NNTP-Posting-Date: Sun, 16 Jan 2022 09:52:08 -0600
From: jlar...@highlandsniptechnology.com
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sun, 16 Jan 2022 07:52:10 -0800
Message-ID: <qmf8ug1ti56eeegvp40gn7qv5dr77cf5ja@4ax.com>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org> <vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org> <ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org> <ss0qqd$c4r$1@dont-email.me>
X-Newsreader: Forte Agent 3.1/32.783
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 35
X-Trace: sv3-uXu4n1eS+suBPs+FfEETJbTL9k6i9h4ydNVaDd8m/ZDPgJ7qeb/4UadSopncpaV37djKYXk3zEywGOg!fcmQgybtVqCjsVsQyfFNoaTEb3UODKEXJFwrxNFp+pds7ZrbU8oPOzGJyAgGABLZVd84+U+BkWpT!QifvQg==
X-Complaints-To: www.supernews.com/docs/abuse.html
X-DMCA-Complaints-To: www.supernews.com/docs/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 2470
 by: jlar...@highlandsniptechnology.com - Sun, 16 Jan 2022 15:52 UTC

On Sun, 16 Jan 2022 03:08:06 -0700, Don Y
<blockedofcourse@foo.invalid> wrote:

>On 1/16/2022 2:26 AM, Martin Brown wrote:
>> On 15/01/2022 17:58, jlarkin@highlandsniptechnology.com wrote:
>>> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
>>> <'''newspam'''@nonad.co.uk> wrote:
>>>
>>>> On 14/01/2022 21:01, Joe Gwinn wrote:
>>>>>
>>>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
>>
>> Probably a very wasteful decision that cost them dear. The requirement for
>> anything above a 64 bit FP word length is very esoteric.
>>
>> The most popular back in that era for high speed floating point was the Cyber
>> 7600 (60 bit word) which powered Manchester universities Jodrell Bank
>> processing and BMEWS early warning system amongst other things.
>
>IIRC, the 645 had support for a 71 bit mantissa (?) ca 1970.
>
>OTOH, it's not like there were many units built! ("popular") :>
>
>A shame that so many (all?) of those early machines turned out
>to be (mostly) evolutionary dead-ends. Imagine what things
>would be like had we started *there* instead of from Intel's
>misgivings...

IBMs decision to go Microsoft+Intel was tragic.

--

I yam what I yam - Popeye

Re: high accuracy math library

<ss1gbb$qd3$1@dont-email.me>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87944&group=sci.electronics.design#87944

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!rocksolid2!news.neodome.net!news.mixmin.net!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: david.br...@hesbynett.no (David Brown)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sun, 16 Jan 2022 17:15:39 +0100
Organization: A noiseless patient Spider
Lines: 18
Message-ID: <ss1gbb$qd3$1@dont-email.me>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
<ss0qqd$c4r$1@dont-email.me> <qmf8ug1ti56eeegvp40gn7qv5dr77cf5ja@4ax.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 16 Jan 2022 16:15:40 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="995a5d475f184f3679ec3542d1d117f5";
logging-data="27043"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18jcf0R907HXO+P1R9pqhCuFwoFr1lKgKE="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:K5Q5TixxPjDv4O6FY5msrL5khvg=
In-Reply-To: <qmf8ug1ti56eeegvp40gn7qv5dr77cf5ja@4ax.com>
Content-Language: en-GB
 by: David Brown - Sun, 16 Jan 2022 16:15 UTC

On 16/01/2022 16:52, jlarkin@highlandsniptechnology.com wrote:
> On Sun, 16 Jan 2022 03:08:06 -0700, Don Y

>> A shame that so many (all?) of those early machines turned out
>> to be (mostly) evolutionary dead-ends. Imagine what things
>> would be like had we started *there* instead of from Intel's
>> misgivings...
>
> IBMs decision to go Microsoft+Intel was tragic.
>

Agreed.

The current crop of x86 processors are fantastic engineering to get high
throughputs despite the terrible ISA and often massively inefficient
code written for them. They are fine demonstrations that you really
/can/ polish a turd.

Re: high accuracy math library

<ss1gpg$uib$1@dont-email.me>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87945&group=sci.electronics.design#87945

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: david.br...@hesbynett.no (David Brown)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sun, 16 Jan 2022 17:23:11 +0100
Organization: A noiseless patient Spider
Lines: 50
Message-ID: <ss1gpg$uib$1@dont-email.me>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
<6he8ug9j479o12bprsegh4vtf5ucl2m786@4ax.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 16 Jan 2022 16:23:12 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="995a5d475f184f3679ec3542d1d117f5";
logging-data="31307"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18b1ROY9ZkQgUpeEouLp/HJhzrzGOhEqjw="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:LbDvNOVRHjXSuOzup0nQDZbUceE=
In-Reply-To: <6he8ug9j479o12bprsegh4vtf5ucl2m786@4ax.com>
Content-Language: en-GB
 by: David Brown - Sun, 16 Jan 2022 16:23 UTC

On 16/01/2022 16:50, jlarkin@highlandsniptechnology.com wrote:
> On Sun, 16 Jan 2022 09:26:42 +0000, Martin Brown
> <'''newspam'''@nonad.co.uk> wrote:
>
>> On 15/01/2022 17:58, jlarkin@highlandsniptechnology.com wrote:
>>> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
>>> <'''newspam'''@nonad.co.uk> wrote:
>>>
>>>> On 14/01/2022 21:01, Joe Gwinn wrote:
>>>>>
>>>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
>>
>> Probably a very wasteful decision that cost them dear. The requirement
>> for anything above a 64 bit FP word length is very esoteric.
>>
>> The most popular back in that era for high speed floating point was the
>> Cyber 7600 (60 bit word) which powered Manchester universities Jodrell
>> Bank processing and BMEWS early warning system amongst other things.
>>
>>>>> (not IEEE format though). In the cited GCC list, which of these are
>>>>> directly supported in hardware, versus software emulation?
>>>>
>>>> 32, 64 are native x87 and full SSE floating point support
>>>> 80 x87 only but GCC does it fairly well
>>>
>>> Power Basic has a native 80-bit float type and a 64-bit integer.
>>
>> I'm so impressed. NOT
>
> Of course not. The word BASIC triggers too much emotion, facts not
> required.
>

I suspect he simply means it is not a hard or exciting feature if you
are making a language designed purely to run on a single target
processor family and OS. It is not impressive that Power BASIC has
support for 80-bit floats. It /would/ be impressive if it supported
128-bit floats, because that would require a lot of development effort.

BASIC is okay for small and simple programs. It is not uncommon to need
a something quick and easy - you want a language and tool that has
minimum developer time overhead, is interpreted (to minimise the
edit/run cycle time), has string handling, automatic memory management,
garbage collection (or even just keep all memory until the program
ends), and is easy to understand and write even for people who don't do
much coding. I personally don't see BASIC as a bad choice for that -
though I do think Python is usually a better choice these days.

On the other hand, trying to write /big/ systems in BASIC is an exercise
in madness. Pick the right tool for the job.

Re: high accuracy math library

<738e4ccd-190b-46c6-aa02-1545bcd3d87dn@googlegroups.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87948&group=sci.electronics.design#87948

  copy link   Newsgroups: sci.electronics.design
X-Received: by 2002:a05:622a:1116:: with SMTP id e22mr5950024qty.58.1642353400800;
Sun, 16 Jan 2022 09:16:40 -0800 (PST)
X-Received: by 2002:a25:4cc5:: with SMTP id z188mr22405607yba.248.1642353400607;
Sun, 16 Jan 2022 09:16:40 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: sci.electronics.design
Date: Sun, 16 Jan 2022 09:16:40 -0800 (PST)
In-Reply-To: <ss1gpg$uib$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=94.145.255.13; posting-account=mW5JKwkAAAAMyuWOVeLp8yffyAkVx0g7
NNTP-Posting-Host: 94.145.255.13
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
<6he8ug9j479o12bprsegh4vtf5ucl2m786@4ax.com> <ss1gpg$uib$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <738e4ccd-190b-46c6-aa02-1545bcd3d87dn@googlegroups.com>
Subject: Re: high accuracy math library
From: langw...@fonz.dk (Lasse Langwadt Christensen)
Injection-Date: Sun, 16 Jan 2022 17:16:40 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 54
 by: Lasse Langwadt Chris - Sun, 16 Jan 2022 17:16 UTC

søndag den 16. januar 2022 kl. 17.23.19 UTC+1 skrev David Brown:
> On 16/01/2022 16:50, jla...@highlandsniptechnology.com wrote:
> > On Sun, 16 Jan 2022 09:26:42 +0000, Martin Brown
> > <'''newspam'''@nonad.co.uk> wrote:
> >
> >> On 15/01/2022 17:58, jla...@highlandsniptechnology.com wrote:
> >>> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
> >>> <'''newspam'''@nonad.co.uk> wrote:
> >>>
> >>>> On 14/01/2022 21:01, Joe Gwinn wrote:
> >>>>>
> >>>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
> >>
> >> Probably a very wasteful decision that cost them dear. The requirement
> >> for anything above a 64 bit FP word length is very esoteric.
> >>
> >> The most popular back in that era for high speed floating point was the
> >> Cyber 7600 (60 bit word) which powered Manchester universities Jodrell
> >> Bank processing and BMEWS early warning system amongst other things.
> >>
> >>>>> (not IEEE format though). In the cited GCC list, which of these are
> >>>>> directly supported in hardware, versus software emulation?
> >>>>
> >>>> 32, 64 are native x87 and full SSE floating point support
> >>>> 80 x87 only but GCC does it fairly well
> >>>
> >>> Power Basic has a native 80-bit float type and a 64-bit integer.
> >>
> >> I'm so impressed. NOT
> >
> > Of course not. The word BASIC triggers too much emotion, facts not
> > required.
> >
> I suspect he simply means it is not a hard or exciting feature if you
> are making a language designed purely to run on a single target
> processor family and OS. It is not impressive that Power BASIC has
> support for 80-bit floats. It /would/ be impressive if it supported
> 128-bit floats, because that would require a lot of development effort.
>
> BASIC is okay for small and simple programs. It is not uncommon to need
> a something quick and easy - you want a language and tool that has
> minimum developer time overhead, is interpreted (to minimise the
> edit/run cycle time),

isn't Power BASIC compiled?

Re: high accuracy math library

<60096157-062d-48c0-b6e6-de5b3bc87a60n@googlegroups.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87949&group=sci.electronics.design#87949

  copy link   Newsgroups: sci.electronics.design
X-Received: by 2002:a05:622a:242:: with SMTP id c2mr14314339qtx.559.1642353662328;
Sun, 16 Jan 2022 09:21:02 -0800 (PST)
X-Received: by 2002:a25:c54f:: with SMTP id v76mr3401204ybe.327.1642353662203;
Sun, 16 Jan 2022 09:21:02 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: sci.electronics.design
Date: Sun, 16 Jan 2022 09:21:01 -0800 (PST)
In-Reply-To: <ss0t0h$olt$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=94.145.255.13; posting-account=mW5JKwkAAAAMyuWOVeLp8yffyAkVx0g7
NNTP-Posting-Host: 94.145.255.13
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org> <ss0t0h$olt$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <60096157-062d-48c0-b6e6-de5b3bc87a60n@googlegroups.com>
Subject: Re: high accuracy math library
From: langw...@fonz.dk (Lasse Langwadt Christensen)
Injection-Date: Sun, 16 Jan 2022 17:21:02 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 21
 by: Lasse Langwadt Chris - Sun, 16 Jan 2022 17:21 UTC

søndag den 16. januar 2022 kl. 11.45.44 UTC+1 skrev David Brown:
> On 16/01/2022 10:26, Martin Brown wrote:
> > On 15/01/2022 17:58, jla...@highlandsniptechnology.com wrote:
> >> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
> >> <'''newspam'''@nonad.co.uk> wrote:
> >>
> >>> On 14/01/2022 21:01, Joe Gwinn wrote:
> >>>>
> >>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
> >
> > Probably a very wasteful decision that cost them dear. The requirement
> > for anything above a 64 bit FP word length is very esoteric.
> >
> And thus most VAX processors emulated it in software - only a few had
> hardware support. (It is not unlikely that software emulation was
> faster than hardware for some tasks - hardware floating point used to be
> very slow for anything other than add, subtract and multiply.)

that leaves division which was and still is "slow" compared to +/-/*

Re: high accuracy math library

<3f68ca81-fea5-c635-8d2d-8262d611148d@electrooptical.net>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87972&group=sci.electronics.design#87972

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: pcdhSpam...@electrooptical.net (Phil Hobbs)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Sun, 16 Jan 2022 15:51:02 -0500
Organization: A noiseless patient Spider
Lines: 70
Message-ID: <3f68ca81-fea5-c635-8d2d-8262d611148d@electrooptical.net>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Info: reader02.eternal-september.org; posting-host="7f937c4503244cca3dc732cc15df2f3c";
logging-data="20646"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+vOqTBJ0WnOVYJcTkD151r"
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101
Thunderbird/60.0
Cancel-Lock: sha1:YVArhJQdyvTFz1e1hdB9P0yYrPQ=
In-Reply-To: <ss0oci$apf$1@gioia.aioe.org>
 by: Phil Hobbs - Sun, 16 Jan 2022 20:51 UTC

Martin Brown wrote:
> On 15/01/2022 17:58, jlarkin@highlandsniptechnology.com wrote:
>> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
>> <'''newspam'''@nonad.co.uk> wrote:
>>
>>> On 14/01/2022 21:01, Joe Gwinn wrote:
>>>>
>>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
>
> Probably a very wasteful decision that cost them dear. The requirement
> for anything above a 64 bit FP word length is very esoteric.
>
> The most popular back in that era for high speed floating point was the
> Cyber 7600 (60 bit word) which powered Manchester universities Jodrell
> Bank processing and BMEWS early warning system amongst other things.
>
>>>> (not IEEE format though).  In the cited GCC list, which of these are
>>>> directly supported in hardware, versus software emulation?
>>>
>>> 32, 64  are native x87 and full SSE floating point support
>>> 80     x87 only but GCC does it fairly well
>>
>> Power Basic has a native 80-bit float type and a 64-bit integer.
>
> I'm so impressed. NOT
>
> MS C used to have it back in the old v6 days but they rationalised
> things to only have 64 bit FP support in C/C++ a very long time ago.
>
> Most decent compilers *do* offer 80 bit reals. It is a pity that
> Mickeysoft don't because their code optimiser is streets ahead of both
> Intel and GCC's at handling out of order execution parallelism.

Last time I compared them directly was 2006ish, using almost all
single-precision C++ code. Back then, Intel was streets ahead of
Microsoft for vectorization and loop unrolling, and gcc was a distant
distant third.

> Intel C and GCC compilers still support 80 bit floating point.
>
> On the code I have been testing recently Intel generates code that
> effectively *forces* a pipeline stall more often than not. MSC somehow
> manages the opposite. Pipeline stalls cost around 90 cycles which is not
> insignificant in a routine that should take 300 cycles.

What sorts of code are you comparing?
>
> Putting two divides close together with the second one dependent on the
> result of the other is one way to do it. MSC tries much harder to
> utilise the cycles where the divide hardware isn't ready to answer.
> (at least it does when you enable every possible speed optimisation)
>
> Sometimes it generates loop unrolled code that is completely wrong too :(

Yikes.

Cheers

Phil Hobbs

--
Dr Philip C D Hobbs
Principal Consultant
ElectroOptical Innovations LLC / Hobbs ElectroOptics
Optics, Electro-optics, Photonics, Analog Electronics
Briarcliff Manor NY 10510

http://electrooptical.net
http://hobbs-eo.com

Re: high accuracy math library

<16cae0b6ec145ac9$1$3141850$6cdd666a@news.thecubenet.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=87982&group=sci.electronics.design#87982

  copy link   Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Newsgroups: sci.electronics.design
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org> <vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org> <ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org> <ss0qqd$c4r$1@dont-email.me> <qmf8ug1ti56eeegvp40gn7qv5dr77cf5ja@4ax.com> <ss1gbb$qd3$1@dont-email.me>
From: no.s...@please.net (Clifford Heath)
Date: Mon, 17 Jan 2022 09:28:07 +1100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <ss1gbb$qd3$1@dont-email.me>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
Message-ID: <16cae0b6ec145ac9$1$3141850$6cdd666a@news.thecubenet.com>
Lines: 27
Path: i2pn2.org!rocksolid2!news.neodome.net!news.uzoreto.com!tr3.eu1.usenetexpress.com!feeder.usenetexpress.com!tr3.iad1.usenetexpress.com!news.thecubenet.com!not-for-mail
NNTP-Posting-Date: Sun, 16 Jan 2022 22:28:10 +0000
X-Received-Bytes: 1812
Organization: theCubeNet - www.thecubenet.com
X-Complaints-To: abuse@thecubenet.com
 by: Clifford Heath - Sun, 16 Jan 2022 22:28 UTC

On 17/1/22 3:15 am, David Brown wrote:
> On 16/01/2022 16:52, jlarkin@highlandsniptechnology.com wrote:
>> On Sun, 16 Jan 2022 03:08:06 -0700, Don Y
>
>>> A shame that so many (all?) of those early machines turned out
>>> to be (mostly) evolutionary dead-ends. Imagine what things
>>> would be like had we started *there* instead of from Intel's
>>> misgivings...
>>
>> IBMs decision to go Microsoft+Intel was tragic.
>>
>
> Agreed.
>
> The current crop of x86 processors are fantastic engineering to get high
> throughputs despite the terrible ISA and often massively inefficient
> code written for them. They are fine demonstrations that you really
> /can/ polish a turd.
Only if you have the kind of funding that relies on a brutal monopoly of
a major industry that has almost every other industry by the
short-and-curly's.

Think how much amazing technology could have been produced by the same
level of investment in an open market. The waste of talent is nothing
short of tragic, on a global scale.

CH

Re: high accuracy math library

<ss373a$f55$1@dont-email.me>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=88008&group=sci.electronics.design#88008

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: david.br...@hesbynett.no (David Brown)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Mon, 17 Jan 2022 08:50:02 +0100
Organization: A noiseless patient Spider
Lines: 29
Message-ID: <ss373a$f55$1@dont-email.me>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
<ss0t0h$olt$1@dont-email.me>
<60096157-062d-48c0-b6e6-de5b3bc87a60n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 17 Jan 2022 07:50:02 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1f3da9c03866acc468cd6738a39f9dee";
logging-data="15525"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/uLOs3TSZkgXzGElLDLRgD6jqTAj3W37o="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:ZeJOMAnJipu2Uds6GpXj9PkI7vY=
In-Reply-To: <60096157-062d-48c0-b6e6-de5b3bc87a60n@googlegroups.com>
Content-Language: en-GB
 by: David Brown - Mon, 17 Jan 2022 07:50 UTC

On 16/01/2022 18:21, Lasse Langwadt Christensen wrote:
> søndag den 16. januar 2022 kl. 11.45.44 UTC+1 skrev David Brown:
>> On 16/01/2022 10:26, Martin Brown wrote:
>>> On 15/01/2022 17:58, jla...@highlandsniptechnology.com wrote:
>>>> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
>>>> <'''newspam'''@nonad.co.uk> wrote:
>>>>
>>>>> On 14/01/2022 21:01, Joe Gwinn wrote:
>>>>>>
>>>>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
>>>
>>> Probably a very wasteful decision that cost them dear. The requirement
>>> for anything above a 64 bit FP word length is very esoteric.
>>>
>> And thus most VAX processors emulated it in software - only a few had
>> hardware support. (It is not unlikely that software emulation was
>> faster than hardware for some tasks - hardware floating point used to be
>> very slow for anything other than add, subtract and multiply.)
>
> that leaves division which was and still is "slow" compared to +/-/*
>

Yes, exactly.

(Somewhere in the development of the m68k processor family - I forget
exactly where, but I /think/ it was the 68030 - the cpu designers
realised that they could do a division in software faster than using the
hardware division block they had. Removing the hardware division
instruction saved significant die space.)

Re: high accuracy math library

<ss375n$f55$2@dont-email.me>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=88009&group=sci.electronics.design#88009

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!aioe.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: david.br...@hesbynett.no (David Brown)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Mon, 17 Jan 2022 08:51:19 +0100
Organization: A noiseless patient Spider
Lines: 53
Message-ID: <ss375n$f55$2@dont-email.me>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
<6he8ug9j479o12bprsegh4vtf5ucl2m786@4ax.com> <ss1gpg$uib$1@dont-email.me>
<738e4ccd-190b-46c6-aa02-1545bcd3d87dn@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 17 Jan 2022 07:51:19 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1f3da9c03866acc468cd6738a39f9dee";
logging-data="15525"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18TgH6ZnqQFKIUXwS7aZqrrW3kTvNPCdcc="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:8PrqJbVL3gq2L7c3keN2b4ZUGjo=
In-Reply-To: <738e4ccd-190b-46c6-aa02-1545bcd3d87dn@googlegroups.com>
Content-Language: en-GB
 by: David Brown - Mon, 17 Jan 2022 07:51 UTC

On 16/01/2022 18:16, Lasse Langwadt Christensen wrote:
> søndag den 16. januar 2022 kl. 17.23.19 UTC+1 skrev David Brown:
>> On 16/01/2022 16:50, jla...@highlandsniptechnology.com wrote:
>>> On Sun, 16 Jan 2022 09:26:42 +0000, Martin Brown
>>> <'''newspam'''@nonad.co.uk> wrote:
>>>
>>>> On 15/01/2022 17:58, jla...@highlandsniptechnology.com wrote:
>>>>> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
>>>>> <'''newspam'''@nonad.co.uk> wrote:
>>>>>
>>>>>> On 14/01/2022 21:01, Joe Gwinn wrote:
>>>>>>>
>>>>>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
>>>>
>>>> Probably a very wasteful decision that cost them dear. The requirement
>>>> for anything above a 64 bit FP word length is very esoteric.
>>>>
>>>> The most popular back in that era for high speed floating point was the
>>>> Cyber 7600 (60 bit word) which powered Manchester universities Jodrell
>>>> Bank processing and BMEWS early warning system amongst other things.
>>>>
>>>>>>> (not IEEE format though). In the cited GCC list, which of these are
>>>>>>> directly supported in hardware, versus software emulation?
>>>>>>
>>>>>> 32, 64 are native x87 and full SSE floating point support
>>>>>> 80 x87 only but GCC does it fairly well
>>>>>
>>>>> Power Basic has a native 80-bit float type and a 64-bit integer.
>>>>
>>>> I'm so impressed. NOT
>>>
>>> Of course not. The word BASIC triggers too much emotion, facts not
>>> required.
>>>
>> I suspect he simply means it is not a hard or exciting feature if you
>> are making a language designed purely to run on a single target
>> processor family and OS. It is not impressive that Power BASIC has
>> support for 80-bit floats. It /would/ be impressive if it supported
>> 128-bit floats, because that would require a lot of development effort.
>>
>> BASIC is okay for small and simple programs. It is not uncommon to need
>> a something quick and easy - you want a language and tool that has
>> minimum developer time overhead, is interpreted (to minimise the
>> edit/run cycle time),
>
> isn't Power BASIC compiled?
>

I don't know - I don't use it myself. But BASIC compilers for small
single-module programs tend to be fast enough that you can pretend they
are interpreted - you just "run" the program.

Re: high accuracy math library

<ss3di8$1v5g$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=88018&group=sci.electronics.design#88018

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!aioe.org!OIRGNq1ADRVRlWCMma5QPA.user.46.165.242.75.POSTED!not-for-mail
From: '''newsp...@nonad.co.uk (Martin Brown)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Mon, 17 Jan 2022 09:40:24 +0000
Organization: Aioe.org NNTP Server
Message-ID: <ss3di8$1v5g$1@gioia.aioe.org>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
<3f68ca81-fea5-c635-8d2d-8262d611148d@electrooptical.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Info: gioia.aioe.org; logging-data="64688"; posting-host="OIRGNq1ADRVRlWCMma5QPA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.5.0
X-Notice: Filtered by postfilter v. 0.9.2
Content-Language: en-GB
 by: Martin Brown - Mon, 17 Jan 2022 09:40 UTC

On 16/01/2022 20:51, Phil Hobbs wrote:
> Martin Brown wrote:
>>
>> MS C used to have it back in the old v6 days but they rationalised
>> things to only have 64 bit FP support in C/C++ a very long time ago.
>>
>> Most decent compilers *do* offer 80 bit reals. It is a pity that
>> Mickeysoft don't because their code optimiser is streets ahead of both
>> Intel and GCC's at handling out of order execution parallelism.
>
> Last time I compared them directly was 2006ish, using almost all
> single-precision C++ code.  Back then, Intel was streets ahead of
> Microsoft for vectorization and loop unrolling, and gcc was a distant
> distant third.

I think it will depend a lot on the application. Vectorising real*4 I
expect the Intel compiler might well still have the edge. I'm mostly
interested in real*8 and real*10 function computations.

The elderly compiler that impressed me the most was Apple's Clang for
the M1 - that CPU really motors and at very low power cf Intel. PITA the
differences from classic standard C but once over that it was worth it.
It was already fast enough on its safer default settings that I didn't
notice /Ofast wasn't set!

My various Pade approximations didn't max out its ability to hide
operations inside the latency time of the divide. They all took the same
time irrespective of the polynomials up to 7,6 (as high as I go). On
Intel CPUs they get slower once the polynomial order goes above 4.

>> Intel C and GCC compilers still support 80 bit floating point.
>>
>> On the code I have been testing recently Intel generates code that
>> effectively *forces* a pipeline stall more often than not. MSC somehow
>> manages the opposite. Pipeline stalls cost around 90 cycles which is
>> not insignificant in a routine that should take 300 cycles.
>
> What sorts of code are you comparing?

Solving cubics, polynomials, a few transcendental functions and higher
order correctors in the series that begins Newton-Raphson, Halley, D4 ...

Mostly they are snippets that seldom exceed 20 lines. They form a set of
functional Lego bricks that solve a particular problem.

On modern optimising compilers NR and Halley take essentially the same
elapsed time for quadratic or better cubic convergence and D4 ~15%
slower for quartic convergence and D5 ~25% slower. After that they slow
down. In one special case Halley is *faster* than NR!

Traditional way of doing it D5 would be 2x slower so it is quite a game
changer in terms of which corrector you can use (or conversely how crude
an initial guess you need to get full machine precision).

>> Putting two divides close together with the second one dependent on
>> the result of the other is one way to do it. MSC tries much harder to
>> utilise the cycles where the divide hardware isn't ready to answer.
>> (at least it does when you enable every possible speed optimisation)
>>
>> Sometimes it generates loop unrolled code that is completely wrong too :(
>
> Yikes.

Indeed. It was to be fair quite a pathological piece of code (but it
still shouldn't happen).

The other thing I have had problems with is modern global optimisers
spotting benchmark loops of a simple form and coding the algebraic
answer! (their strength reduction tricks have become quite cunning)

x = 0;
dx = 1e-6;
for (i = 0; i<100000; i++) x += dx;

They also have to return a result that might be printed out later so
that there is a potential side effect.

--
Regards,
Martin Brown

Re: high accuracy math library

<be76b083-9950-4155-b022-d27baec22c51n@googlegroups.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=88019&group=sci.electronics.design#88019

  copy link   Newsgroups: sci.electronics.design
X-Received: by 2002:a05:620a:4547:: with SMTP id u7mr10138682qkp.328.1642413988199;
Mon, 17 Jan 2022 02:06:28 -0800 (PST)
X-Received: by 2002:a25:86cd:: with SMTP id y13mr26154932ybm.120.1642413987977;
Mon, 17 Jan 2022 02:06:27 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: sci.electronics.design
Date: Mon, 17 Jan 2022 02:06:27 -0800 (PST)
In-Reply-To: <60096157-062d-48c0-b6e6-de5b3bc87a60n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=209.221.140.126; posting-account=vKQm_QoAAADOaDCYsqOFDAW8NJ8sFHoE
NNTP-Posting-Host: 209.221.140.126
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
<ss0t0h$olt$1@dont-email.me> <60096157-062d-48c0-b6e6-de5b3bc87a60n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <be76b083-9950-4155-b022-d27baec22c51n@googlegroups.com>
Subject: Re: high accuracy math library
From: whit...@gmail.com (whit3rd)
Injection-Date: Mon, 17 Jan 2022 10:06:28 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 35
 by: whit3rd - Mon, 17 Jan 2022 10:06 UTC

On Sunday, January 16, 2022 at 9:21:05 AM UTC-8, lang...@fonz.dk wrote:
> søndag den 16. januar 2022 kl. 11.45.44 UTC+1 skrev David Brown:
> > On 16/01/2022 10:26, Martin Brown wrote:
> > > On 15/01/2022 17:58, jla...@highlandsniptechnology.com wrote:
> > >> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
> > >> <'''newspam'''@nonad.co.uk> wrote:
> > >>
> > >>> On 14/01/2022 21:01, Joe Gwinn wrote:
> > >>>>
> > >>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
> > >
> > > Probably a very wasteful decision that cost them dear. The requirement
> > > for anything above a 64 bit FP word length is very esoteric.
> > >
> > And thus most VAX processors emulated it in software - only a few had
> > hardware support. (It is not unlikely that software emulation was
> > faster than hardware for some tasks - hardware floating point used to be
> > very slow for anything other than add, subtract and multiply.)

> that leaves division which was and still is "slow" compared to +/-/*

Yeah, but... division is done by multiple multiplications, and if it takes five
stages for 64-bit, it only takes six stages for 128-bit; each two multiplies doubles
the precision of the result. So, the division penalty is proportionally less for
extensions to high precision.

The high-order speedup to multiply is with FFT techniques. Has anyone built those into
hardware for long-word computing?

Re: high accuracy math library

<ss3hg7$3sa$1@dont-email.me>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=88021&group=sci.electronics.design#88021

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!aioe.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: david.br...@hesbynett.no (David Brown)
Newsgroups: sci.electronics.design
Subject: Re: high accuracy math library
Date: Mon, 17 Jan 2022 11:47:35 +0100
Organization: A noiseless patient Spider
Lines: 40
Message-ID: <ss3hg7$3sa$1@dont-email.me>
References: <srs9k9$217$2@reader1.panix.com> <srsef1$1trj$1@gioia.aioe.org>
<vgo3ug5dgh6k6m9kt38msf197j7d80quhb@4ax.com> <srv1gt$119o$1@gioia.aioe.org>
<ae26ugdp13878t22faknfcnm5133ir8e1o@4ax.com> <ss0oci$apf$1@gioia.aioe.org>
<ss0t0h$olt$1@dont-email.me>
<60096157-062d-48c0-b6e6-de5b3bc87a60n@googlegroups.com>
<be76b083-9950-4155-b022-d27baec22c51n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 17 Jan 2022 10:47:36 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1f3da9c03866acc468cd6738a39f9dee";
logging-data="3978"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+wSSxEDqLYl2S/A+y/miNDH9q4sqekzPA="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:AY5mWBVnow5MEu13N140y/swalQ=
In-Reply-To: <be76b083-9950-4155-b022-d27baec22c51n@googlegroups.com>
Content-Language: en-GB
 by: David Brown - Mon, 17 Jan 2022 10:47 UTC

On 17/01/2022 11:06, whit3rd wrote:
> On Sunday, January 16, 2022 at 9:21:05 AM UTC-8, lang...@fonz.dk wrote:
>> søndag den 16. januar 2022 kl. 11.45.44 UTC+1 skrev David Brown:
>>> On 16/01/2022 10:26, Martin Brown wrote:
>>>> On 15/01/2022 17:58, jla...@highlandsniptechnology.com wrote:
>>>>> On Sat, 15 Jan 2022 17:50:14 +0000, Martin Brown
>>>>> <'''newspam'''@nonad.co.uk> wrote:
>>>>>
>>>>>> On 14/01/2022 21:01, Joe Gwinn wrote:
>>>>>>>
>>>>>>> In the old days, only VAX/VMS had hardware support for 128-bit floats
>>>>
>>>> Probably a very wasteful decision that cost them dear. The requirement
>>>> for anything above a 64 bit FP word length is very esoteric.
>>>>
>>> And thus most VAX processors emulated it in software - only a few had
>>> hardware support. (It is not unlikely that software emulation was
>>> faster than hardware for some tasks - hardware floating point used to be
>>> very slow for anything other than add, subtract and multiply.)
>
>> that leaves division which was and still is "slow" compared to +/-/*
>
> Yeah, but... division is done by multiple multiplications, and if it takes five
> stages for 64-bit, it only takes six stages for 128-bit; each two multiplies doubles
> the precision of the result. So, the division penalty is proportionally less for
> extensions to high precision.
>
> The high-order speedup to multiply is with FFT techniques. Has anyone built those into
> hardware for long-word computing?
>

FFT multiplication algorithms are inefficient for less than about 10,000
digits - that's a little big for a hardware solution!

Of course, it is possible to have instructions and hardware blocks that
accelerate parts of the process. Many DSP processors have special
instructions to improve the speed of FFT's (though that is generally for
filtering rather than multiplication).

Pages:12
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor