Rocksolid Light

Welcome to Rocksolid Light

mail  files  register  newsreader  groups  login

Message-ID:  

/earth is 98% full ... please delete anyone you can.


devel / comp.lang.forth / Re: Vector operations for 64-bit Forths

SubjectAuthor
* Vector operations for 64-bit ForthsBrad Eckert
+- Re: Vector operations for 64-bit ForthsMarcel Hendrix
+- Re: Vector operations for 64-bit Forthsminforth
+* Re: Vector operations for 64-bit Forthsnone
|`* Re: Vector operations for 64-bit ForthsHeinrich Hohl
| `* Re: Vector operations for 64-bit ForthsBrad Eckert
|  `* Re: Vector operations for 64-bit ForthsMarcel Hendrix
|   `* Re: Vector operations for 64-bit Forthsdxf
|    `* Re: Vector operations for 64-bit ForthsMarcel Hendrix
|     `* Re: Vector operations for 64-bit Forthsnone
|      `- Re: Vector operations for 64-bit ForthsMarcel Hendrix
`- Re: Vector operations for 64-bit ForthsZbig

1
Vector operations for 64-bit Forths

<e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24594&group=comp.lang.forth#24594

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:1a10:b0:403:a91d:bfec with SMTP id f16-20020a05622a1a1000b00403a91dbfecmr597qtb.0.1694732187197;
Thu, 14 Sep 2023 15:56:27 -0700 (PDT)
X-Received: by 2002:a9d:7d91:0:b0:6bd:cf64:d106 with SMTP id
j17-20020a9d7d91000000b006bdcf64d106mr2039338otn.2.1694732186898; Thu, 14 Sep
2023 15:56:26 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.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.lang.forth
Date: Thu, 14 Sep 2023 15:56:26 -0700 (PDT)
Injection-Info: google-groups.googlegroups.com; posting-host=72.217.63.66; posting-account=6GCGIQoAAAAyO8IjR_VTwqiqLwx0Q_G8
NNTP-Posting-Host: 72.217.63.66
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
Subject: Vector operations for 64-bit Forths
From: hwfwguy@gmail.com (Brad Eckert)
Injection-Date: Thu, 14 Sep 2023 22:56:27 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 1839
 by: Brad Eckert - Thu, 14 Sep 2023 22:56 UTC

Hi All,

As a 32-bit throwback, I am reluctant to write 64-bit Forth applications. However, 64-bit Forth is becoming a thing anyway. Moreover, 64-bit data is becoming a thing.

64-bit cells are much wider than most data in the application. This opens up the possibility of vector operations. I don't mean SSE and such, I mean treating 64-bit words as vectors. For example, as 4-element groups of 16-bit numbers you can AND, OR, INVERT, or XOR directly.

Vector addition would be a nice-to-have. Add the top two stack elements but break the carry chain every 16 or 32 bits. Being a little lazy today, I'm just going to ask if the i86 architecture supports this stuff. I assume it does. 64-bit Forth will have to standardize on some kind of vector wordset.

Has this been explored before?

Re: Vector operations for 64-bit Forths

<3fccf6e6-5ab8-49ab-b6cb-9a29c558da66n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24596&group=comp.lang.forth#24596

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:6214:951:b0:63d:32a7:5257 with SMTP id dn17-20020a056214095100b0063d32a75257mr15701qvb.4.1694753200491;
Thu, 14 Sep 2023 21:46:40 -0700 (PDT)
X-Received: by 2002:a05:6808:210a:b0:3a7:b15d:b59d with SMTP id
r10-20020a056808210a00b003a7b15db59dmr254572oiw.11.1694753200252; Thu, 14 Sep
2023 21:46:40 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.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.lang.forth
Date: Thu, 14 Sep 2023 21:46:39 -0700 (PDT)
In-Reply-To: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:1c05:2f18:6d00:e53f:e2c5:eac:328e;
posting-account=-JQ2RQoAAAB6B5tcBTSdvOqrD1HpT_Rk
NNTP-Posting-Host: 2001:1c05:2f18:6d00:e53f:e2c5:eac:328e
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <3fccf6e6-5ab8-49ab-b6cb-9a29c558da66n@googlegroups.com>
Subject: Re: Vector operations for 64-bit Forths
From: mhx@iae.nl (Marcel Hendrix)
Injection-Date: Fri, 15 Sep 2023 04:46:40 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2104
 by: Marcel Hendrix - Fri, 15 Sep 2023 04:46 UTC

On Friday, September 15, 2023 at 12:56:28 AM UTC+2, Brad Eckert wrote:
[..]
> 64-bit cells are much wider than most data in the application. This opens up the possibility of vector operations. I don't mean SSE
> and such, I mean treating 64-bit words as vectors. For example, as 4-element groups of 16-bit numbers you can AND, OR, INVERT,
> or XOR directly.
[..]
> Has this been explored before?

What kind of application would use this? If speed is important, the programmer will use SSE or whatever anyway.
If speed is not important, maybe the application cries out for the approach (easier to understand or shorter?)
In my experience SIMD code is not easy to write or debug, and if you don't pay attention the performance
is subpar, or the code grows/is difficult to use because of alignment issues. Hence my initial question.

-marcel

Re: Vector operations for 64-bit Forths

<758a471c-7263-4af9-97d3-473841229becn@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24598&group=comp.lang.forth#24598

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:15b:b0:76f:f0e:e650 with SMTP id e27-20020a05620a015b00b0076f0f0ee650mr14618qkn.9.1694765922760;
Fri, 15 Sep 2023 01:18:42 -0700 (PDT)
X-Received: by 2002:a05:6808:1282:b0:3ab:c19f:bdf8 with SMTP id
a2-20020a056808128200b003abc19fbdf8mr439767oiw.11.1694765922571; Fri, 15 Sep
2023 01:18:42 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.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.lang.forth
Date: Fri, 15 Sep 2023 01:18:42 -0700 (PDT)
In-Reply-To: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2003:f7:1f00:ebda:80ee:e431:bd77:6cee;
posting-account=AqNUYgoAAADmkK2pN-RKms8sww57W0Iw
NNTP-Posting-Host: 2003:f7:1f00:ebda:80ee:e431:bd77:6cee
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <758a471c-7263-4af9-97d3-473841229becn@googlegroups.com>
Subject: Re: Vector operations for 64-bit Forths
From: minforth@arcor.de (minforth)
Injection-Date: Fri, 15 Sep 2023 08:18:42 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2770
 by: minforth - Fri, 15 Sep 2023 08:18 UTC

Brad Eckert schrieb am Freitag, 15. September 2023 um 00:56:28 UTC+2:
> Hi All,
>
> As a 32-bit throwback, I am reluctant to write 64-bit Forth applications. However, 64-bit Forth is becoming a thing anyway. Moreover, 64-bit data is becoming a thing.
>
> 64-bit cells are much wider than most data in the application. This opens up the possibility of vector operations. I don't mean SSE and such, I mean treating 64-bit words as vectors. For example, as 4-element groups of 16-bit numbers you can AND, OR, INVERT, or XOR directly.
>
> Vector addition would be a nice-to-have. Add the top two stack elements but break the carry chain every 16 or 32 bits. Being a little lazy today, I'm just going to ask if the i86 architecture supports this stuff. I assume it does. 64-bit Forth will have to standardize on some kind of vector wordset.
>
> Has this been explored before?

You seem to focus on packed integers. Not uncommon for some graphics applications
or e.g. crypto, where speed is often needed.

But IME the complexities of SSE/AVX don't pay off where speed is a secondary concern.

For signal processing you can fit analog-to-digital converter results easily into 32-bits
in raw mode, or after scaling and noise filtering into small floating-point number vectors.
Unsurprisingly many SSE/AVX operands deal with such fp-vectors.

From a Forth perspective it is also important to have a good library to deal with serial data in
heap memory and on mass storage.

Re: Vector operations for 64-bit Forths

<nnd$2c3964d1$6d4e851e@867caad05e86a0ef>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24599&group=comp.lang.forth#24599

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
Subject: Re: Vector operations for 64-bit Forths
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$2c3964d1$6d4e851e@867caad05e86a0ef>
Organization: KPN B.V.
Date: Fri, 15 Sep 2023 11:21:32 +0200
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!feed.abavia.com!abe004.abavia.com!abp003.abavia.com!news.kpn.nl!not-for-mail
Lines: 22
Injection-Date: Fri, 15 Sep 2023 11:21:32 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
X-Received-Bytes: 1598
 by: none - Fri, 15 Sep 2023 09:21 UTC

In article <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>,
Brad Eckert <hwfwguy@gmail.com> wrote:
>Hi All,
>
>As a 32-bit throwback, I am reluctant to write 64-bit Forth
>applications. However, 64-bit Forth is becoming a thing anyway.
>Moreover, 64-bit data is becoming a thing.
2008 is some 20 years after ISO, and at that time
everybody uses CELL+ CELLS .
I changed my Linux Forth to 64 bits at that time.
No programs had to be changed.

Now we are 15 years later. Your applications should run on every
hosted Forth, no need to write "64-bit Forth".

Groetjes Albert
--
Don't praise the day before the evening. One swallow doesn't make spring.
You must not say "hey" before you have crossed the bridge. Don't sell the
hide of the bear until you shot it. Better one bird in the hand than ten in
the air. First gain is a cat spinning. - the Wise from Antrim -

Re: Vector operations for 64-bit Forths

<25fcc703-24ac-4a79-9983-d51a8952d90en@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24604&group=comp.lang.forth#24604

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:8c17:b0:76f:1b38:e73d with SMTP id qz23-20020a05620a8c1700b0076f1b38e73dmr47936qkn.10.1694803386222;
Fri, 15 Sep 2023 11:43:06 -0700 (PDT)
X-Received: by 2002:a05:6808:ec6:b0:3ac:ac58:59f5 with SMTP id
q6-20020a0568080ec600b003acac5859f5mr993403oiv.8.1694803385902; Fri, 15 Sep
2023 11:43:05 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.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.lang.forth
Date: Fri, 15 Sep 2023 11:43:05 -0700 (PDT)
In-Reply-To: <nnd$2c3964d1$6d4e851e@867caad05e86a0ef>
Injection-Info: google-groups.googlegroups.com; posting-host=2a02:3100:958a:9c00:fdf1:1966:c569:caf2;
posting-account=mrP5kgoAAADXISqI3e5f4EXLUinHClBq
NNTP-Posting-Host: 2a02:3100:958a:9c00:fdf1:1966:c569:caf2
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com> <nnd$2c3964d1$6d4e851e@867caad05e86a0ef>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <25fcc703-24ac-4a79-9983-d51a8952d90en@googlegroups.com>
Subject: Re: Vector operations for 64-bit Forths
From: hheinrich.hohl@gmail.com (Heinrich Hohl)
Injection-Date: Fri, 15 Sep 2023 18:43:06 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2173
 by: Heinrich Hohl - Fri, 15 Sep 2023 18:43 UTC

On Friday, September 15, 2023 at 11:21:37 AM UTC+2, none albert wrote:
> Your applications should run on every hosted Forth, no need to write "64-bit Forth".

It is true that you do not need to rewrite every 32-bit Forth application from scratch,
but you may need to adjust a few things. The following comes to my mind:

- If your 32-bit application uses assembly code, you must adjust register names
(e.g. EBX --> RBX)

- If you make use of truncated multiplication (e.g. in an LCG random number generator),
you must truncate the result using a bit mask

- If your 32-bit application makes use of double length math operators, you may be able
to simplify math operations using single length operators in the 64-bit Forth system

I recommend checking the 32-bit Forth source code carefully for possible traps before
running it in a 64-bit Forth system.

Henry

Re: Vector operations for 64-bit Forths

<95e8c139-b819-4baf-8911-4391002cad8an@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24608&group=comp.lang.forth#24608

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:1aa4:b0:40f:e2a5:3100 with SMTP id s36-20020a05622a1aa400b0040fe2a53100mr242220qtc.6.1694976528534;
Sun, 17 Sep 2023 11:48:48 -0700 (PDT)
X-Received: by 2002:a05:6808:1a13:b0:3ac:ab4f:f05 with SMTP id
bk19-20020a0568081a1300b003acab4f0f05mr3074007oib.5.1694976528194; Sun, 17
Sep 2023 11:48:48 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.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.lang.forth
Date: Sun, 17 Sep 2023 11:48:47 -0700 (PDT)
In-Reply-To: <25fcc703-24ac-4a79-9983-d51a8952d90en@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=72.217.63.66; posting-account=6GCGIQoAAAAyO8IjR_VTwqiqLwx0Q_G8
NNTP-Posting-Host: 72.217.63.66
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
<nnd$2c3964d1$6d4e851e@867caad05e86a0ef> <25fcc703-24ac-4a79-9983-d51a8952d90en@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <95e8c139-b819-4baf-8911-4391002cad8an@googlegroups.com>
Subject: Re: Vector operations for 64-bit Forths
From: hwfwguy@gmail.com (Brad Eckert)
Injection-Date: Sun, 17 Sep 2023 18:48:48 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 3747
 by: Brad Eckert - Sun, 17 Sep 2023 18:48 UTC

On Friday, September 15, 2023 at 11:43:08 AM UTC-7, Heinrich Hohl wrote:
> On Friday, September 15, 2023 at 11:21:37 AM UTC+2, none albert wrote:
> > Your applications should run on every hosted Forth, no need to write "64-bit Forth".
> It is true that you do not need to rewrite every 32-bit Forth application from scratch,
> but you may need to adjust a few things. The following comes to my mind:
>
> - If your 32-bit application uses assembly code, you must adjust register names
> (e.g. EBX --> RBX)
>
> - If you make use of truncated multiplication (e.g. in an LCG random number generator),
> you must truncate the result using a bit mask
>
> - If your 32-bit application makes use of double length math operators, you may be able
> to simplify math operations using single length operators in the 64-bit Forth system
>
> I recommend checking the 32-bit Forth source code carefully for possible traps before
> running it in a 64-bit Forth system.
>
> Henry
Thanks for the responses but I am thinking more along the lines of Forth computers, not i64 monsters. I tend to agree with Marcel that the added complexity probably isn't worth it. It would be interesting to experiment with primitives like >< (swap halves of the top of stack) and H+ (add the top two stack elements as 2D vectors). Adding two vectors would be simple compared to the usual stackrobatics.

The cathedrals of modern computing have already been built to suit the C programming paradigm. Apps are written for the hardware and hardware is designed for the apps. The prevailing computing religion is the only game in town unless you want to go live in a tent. It's like old times but they don't burn you for heresy. So, 32-bit and 64-bit paradigms are here to stay. The FPUs came, everyone loved IEEE754 doubles, and it became a good idea to move data in 64-bit chunks. 64-bit also gave segmented address haters their linear address space. The hardware guys knew their market better than Anheuser Busch.

Forth strongly favors integer arithmetic for reasons of ideological purity at this point. Maybe cells should fit floating point numbers. How wide should floating point numbers really be? 32-bit seems a bit small. 64-bit seems a bit big. Where is the Goldilocks point? The B5500 that inspired Chuck Moore had a 48-bit word.

Re: Vector operations for 64-bit Forths

<ef4598b4-a89d-46dd-abfc-6da20e9e9601n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24609&group=comp.lang.forth#24609

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:19a9:b0:417:611e:98f4 with SMTP id u41-20020a05622a19a900b00417611e98f4mr143901qtc.8.1694978575217;
Sun, 17 Sep 2023 12:22:55 -0700 (PDT)
X-Received: by 2002:a05:6808:2029:b0:3a7:2570:dd11 with SMTP id
q41-20020a056808202900b003a72570dd11mr3054692oiw.6.1694978574522; Sun, 17 Sep
2023 12:22:54 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.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.lang.forth
Date: Sun, 17 Sep 2023 12:22:54 -0700 (PDT)
In-Reply-To: <95e8c139-b819-4baf-8911-4391002cad8an@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:1c05:2f18:6d00:a46a:e1c6:44a2:367b;
posting-account=-JQ2RQoAAAB6B5tcBTSdvOqrD1HpT_Rk
NNTP-Posting-Host: 2001:1c05:2f18:6d00:a46a:e1c6:44a2:367b
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
<nnd$2c3964d1$6d4e851e@867caad05e86a0ef> <25fcc703-24ac-4a79-9983-d51a8952d90en@googlegroups.com>
<95e8c139-b819-4baf-8911-4391002cad8an@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <ef4598b4-a89d-46dd-abfc-6da20e9e9601n@googlegroups.com>
Subject: Re: Vector operations for 64-bit Forths
From: mhx@iae.nl (Marcel Hendrix)
Injection-Date: Sun, 17 Sep 2023 19:22:55 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 1818
 by: Marcel Hendrix - Sun, 17 Sep 2023 19:22 UTC

On Sunday, September 17, 2023 at 8:48:50 PM UTC+2, Brad Eckert wrote:
> How wide should floating point numbers really be? 32-bit seems a bit small. 64-bit seems a bit big.
> Where is the Goldilocks point? The B5500 that inspired Chuck Moore had a 48-bit word.

128 bits. The 64-bit doubles and 80-bits extended are enough, but there are algorithms
that only work when you have twice the width.

-marcel

Re: Vector operations for 64-bit Forths

<ue8ips$pjdj$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24610&group=comp.lang.forth#24610

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: dxforth@gmail.com (dxf)
Newsgroups: comp.lang.forth
Subject: Re: Vector operations for 64-bit Forths
Date: Mon, 18 Sep 2023 14:13:48 +1000
Organization: A noiseless patient Spider
Lines: 12
Message-ID: <ue8ips$pjdj$1@dont-email.me>
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
<nnd$2c3964d1$6d4e851e@867caad05e86a0ef>
<25fcc703-24ac-4a79-9983-d51a8952d90en@googlegroups.com>
<95e8c139-b819-4baf-8911-4391002cad8an@googlegroups.com>
<ef4598b4-a89d-46dd-abfc-6da20e9e9601n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 18 Sep 2023 04:13:49 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="5b184f6efd68f4db5054128e182c5b95";
logging-data="839091"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Za08JCnAIU4dj/v65NXjI"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:T5MtLQeDyWjisBThSf7eusWmYFE=
Content-Language: en-GB
In-Reply-To: <ef4598b4-a89d-46dd-abfc-6da20e9e9601n@googlegroups.com>
 by: dxf - Mon, 18 Sep 2023 04:13 UTC

On 18/09/2023 5:22 am, Marcel Hendrix wrote:
> On Sunday, September 17, 2023 at 8:48:50 PM UTC+2, Brad Eckert wrote:
>> How wide should floating point numbers really be? 32-bit seems a bit small. 64-bit seems a bit big.
>> Where is the Goldilocks point? The B5500 that inspired Chuck Moore had a 48-bit word.
>
> 128 bits. The 64-bit doubles and 80-bits extended are enough, but there are algorithms
> that only work when you have twice the width.
>
> -marcel

Moore would find a better algorithm.

Re: Vector operations for 64-bit Forths

<657aa16c-50e2-4f21-9c0b-1b9979cfcebfn@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24611&group=comp.lang.forth#24611

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:40c:b0:76f:1450:230 with SMTP id 12-20020a05620a040c00b0076f14500230mr192839qkp.4.1695058496096;
Mon, 18 Sep 2023 10:34:56 -0700 (PDT)
X-Received: by 2002:a05:6808:198a:b0:3ab:8526:c222 with SMTP id
bj10-20020a056808198a00b003ab8526c222mr4326630oib.8.1695058495941; Mon, 18
Sep 2023 10:34:55 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.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.lang.forth
Date: Mon, 18 Sep 2023 10:34:55 -0700 (PDT)
In-Reply-To: <ue8ips$pjdj$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:1c05:2f18:6d00:c1cd:ce00:3052:a0e3;
posting-account=-JQ2RQoAAAB6B5tcBTSdvOqrD1HpT_Rk
NNTP-Posting-Host: 2001:1c05:2f18:6d00:c1cd:ce00:3052:a0e3
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
<nnd$2c3964d1$6d4e851e@867caad05e86a0ef> <25fcc703-24ac-4a79-9983-d51a8952d90en@googlegroups.com>
<95e8c139-b819-4baf-8911-4391002cad8an@googlegroups.com> <ef4598b4-a89d-46dd-abfc-6da20e9e9601n@googlegroups.com>
<ue8ips$pjdj$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <657aa16c-50e2-4f21-9c0b-1b9979cfcebfn@googlegroups.com>
Subject: Re: Vector operations for 64-bit Forths
From: mhx@iae.nl (Marcel Hendrix)
Injection-Date: Mon, 18 Sep 2023 17:34:56 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2108
 by: Marcel Hendrix - Mon, 18 Sep 2023 17:34 UTC

On Monday, September 18, 2023 at 6:13:52 AM UTC+2, dxf wrote:
[..]
> > The 64-bit doubles and 80-bits extended are enough, but there are algorithms
> > that only work when you have twice the width.
[..]
> Moore would find a better algorithm.

I doubt it. It is not that the whole algorithm switches to 128 bits to avoid the problem.
For some equations/problems there can be a mix of very small and very big
numbers where floating-point performs badly. By successive refinement the
issue can be eliminated, but in its critical operation higher-than-default
precision is needed. A typical use-case is throwing a switch.

-marcel

Re: Vector operations for 64-bit Forths

<nnd$17d663d3$12eb9a2c@a4b1bc612bc9c8ce>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24668&group=comp.lang.forth#24668

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com> <ue8ips$pjdj$1@dont-email.me> <657aa16c-50e2-4f21-9c0b-1b9979cfcebfn@googlegroups.com> <63976a7d-f3d4-4f15-958d-eef28880044cn@googlegroups.com>
Subject: Re: Vector operations for 64-bit Forths
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$17d663d3$12eb9a2c@a4b1bc612bc9c8ce>
Organization: KPN B.V.
Date: Sun, 24 Sep 2023 12:09:27 +0200
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!feeder1.feed.usenet.farm!feed.usenet.farm!feeder.usenetexpress.com!tr1.eu1.usenetexpress.com!94.232.112.246.MISMATCH!feed.abavia.com!abe006.abavia.com!abp002.abavia.com!news.kpn.nl!not-for-mail
Lines: 47
Injection-Date: Sun, 24 Sep 2023 12:09:27 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
 by: none - Sun, 24 Sep 2023 10:09 UTC

In article <63976a7d-f3d4-4f15-958d-eef28880044cn@googlegroups.com>,
Brad Eckert <hwfwguy@gmail.com> wrote:
>On Monday, September 18, 2023 at 10:34:58 AM UTC-7, Marcel Hendrix wrote:
>> On Monday, September 18, 2023 at 6:13:52 AM UTC+2, dxf wrote:
>> [..]
>> > > The 64-bit doubles and 80-bits extended are enough, but there are
>algorithms
>> > > that only work when you have twice the width.
>> [..]
>> > Moore would find a better algorithm.
>> I doubt it. It is not that the whole algorithm switches to 128 bits to
>avoid the problem.
>> For some equations/problems there can be a mix of very small and very big
>> numbers where floating-point performs badly. By successive refinement the
>> issue can be eliminated, but in its critical operation higher-than-default
>> precision is needed. A typical use-case is throwing a switch.
>>
>> -marcel
>I can imagine Tim the Tool Time Guy saying "MORE BITS!".
>
>As long as we are blue-skying, I would propose that arbitrary precision
>floating point as well as arbitrary precision (bignum) integers be
>supported in hardware. It would be nice to have IEEE standards for both.
>Maybe we will see that someday.

Most of the problematic problems are "stiff" problems where there are
orders of magnitude between the small and large eigenvalues of a
matrix. It is relatively easy to predict the position of the earth
years into the future, but the position of the moon relative to the
earth is far less precise. It is related to chaotic problems.
Boosting the precision is of the floating point is of little avail
and is surely not an alternative to numerical analysis.

There are a few problems that warrant high precision.
We are now encountering problems with the magnetic moment of muon.
The experimental value doesn't agree with the theoretical value,
but wait, a different calculation gives a different theoretical value.
These experiments are insanely precise, and require more than
IEEE double precision.

Groetjes Albert
--
Don't praise the day before the evening. One swallow doesn't make spring.
You must not say "hey" before you have crossed the bridge. Don't sell the
hide of the bear until you shot it. Better one bird in the hand than ten in
the air. First gain is a cat spinning. - the Wise from Antrim -

Re: Vector operations for 64-bit Forths

<6767afa0-e201-4d75-a106-61b2f9a662a1n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24669&group=comp.lang.forth#24669

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:6214:5c05:b0:65b:7a2:eece with SMTP id ly5-20020a0562145c0500b0065b07a2eecemr6725qvb.13.1695554621530;
Sun, 24 Sep 2023 04:23:41 -0700 (PDT)
X-Received: by 2002:a05:6871:4312:b0:1dd:1837:c70b with SMTP id
lu18-20020a056871431200b001dd1837c70bmr423669oab.4.1695554621225; Sun, 24 Sep
2023 04:23:41 -0700 (PDT)
Path: i2pn2.org!rocksolid2!i2pn.org!usenet.blueworldhosting.com!diablo1.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.lang.forth
Date: Sun, 24 Sep 2023 04:23:40 -0700 (PDT)
In-Reply-To: <nnd$17d663d3$12eb9a2c@a4b1bc612bc9c8ce>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:1c05:2f18:6d00:699c:324d:8104:24a1;
posting-account=-JQ2RQoAAAB6B5tcBTSdvOqrD1HpT_Rk
NNTP-Posting-Host: 2001:1c05:2f18:6d00:699c:324d:8104:24a1
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
<ue8ips$pjdj$1@dont-email.me> <657aa16c-50e2-4f21-9c0b-1b9979cfcebfn@googlegroups.com>
<63976a7d-f3d4-4f15-958d-eef28880044cn@googlegroups.com> <nnd$17d663d3$12eb9a2c@a4b1bc612bc9c8ce>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <6767afa0-e201-4d75-a106-61b2f9a662a1n@googlegroups.com>
Subject: Re: Vector operations for 64-bit Forths
From: mhx@iae.nl (Marcel Hendrix)
Injection-Date: Sun, 24 Sep 2023 11:23:41 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2527
 by: Marcel Hendrix - Sun, 24 Sep 2023 11:23 UTC

On Sunday, September 24, 2023 at 12:09:30 PM UTC+2, none albert wrote:
> In article <63976a7d-f3d4-4f15...@googlegroups.com>,
> Brad Eckert <hwf...@gmail.com> wrote:
> >On Monday, September 18, 2023 at 10:34:58 AM UTC-7, Marcel Hendrix wrote:
[..]
> Most of the problematic problems are "stiff" problems where there are
> orders of magnitude between the small and large eigenvalues of a
> matrix. It is relatively easy to predict the position of the earth
> years into the future, but the position of the moon relative to the
> earth is far less precise. It is related to chaotic problems.
> Boosting the precision is of the floating point is of little avail
> and is surely not an alternative to numerical analysis.

Of course. But there are problems (like circuit simulation) where the
balance between accuracy and speed is important. More bits is
generally (not always) slower, therefore algorithms are used that
won't crash when the condition number explodes after an unfortunate
refactor, while still having acceptable accuracy with double precision.

-marcel

Re: Vector operations for 64-bit Forths

<13ae100c-b874-4e8a-97d4-57c8b91e5656n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24670&group=comp.lang.forth#24670

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:6214:5642:b0:656:1991:53b0 with SMTP id mh2-20020a056214564200b00656199153b0mr28824qvb.0.1695558809556;
Sun, 24 Sep 2023 05:33:29 -0700 (PDT)
X-Received: by 2002:a05:6808:19a2:b0:3a9:b964:820e with SMTP id
bj34-20020a05680819a200b003a9b964820emr2617869oib.3.1695558809372; Sun, 24
Sep 2023 05:33:29 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.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.lang.forth
Date: Sun, 24 Sep 2023 05:33:28 -0700 (PDT)
In-Reply-To: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=83.22.127.152; posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 83.22.127.152
References: <e8fedb6c-a47c-4c5f-ac04-7ab6fe70ab16n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <13ae100c-b874-4e8a-97d4-57c8b91e5656n@googlegroups.com>
Subject: Re: Vector operations for 64-bit Forths
From: zbigniew2011@gmail.com (Zbig)
Injection-Date: Sun, 24 Sep 2023 12:33:29 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 1403
 by: Zbig - Sun, 24 Sep 2023 12:33 UTC

> 64-bit cells are much wider than most data in the application.
> This opens up the possibility of vector operations. I don't mean
> SSE and such, I mean treating 64-bit words as vectors.

Maybe specialized version of Forth, that uses exclusively
32-bit complex numbers?

1
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor