Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Debian is like Suse with yast turned off, just better. :) -- Goswin Brederlow


devel / comp.arch / Re: Someone's Trying Again (Ascenium)

SubjectAuthor
* Someone's Trying Again (Ascenium)Quadibloc
+* Re: Someone's Trying Again (Ascenium)MitchAlsup
|`- Re: Someone's Trying Again (Ascenium)Terje Mathisen
+* Re: Someone's Trying Again (Ascenium)luke.l...@gmail.com
|+- Re: Someone's Trying Again (Ascenium)John Dallman
|`* Re: Someone's Trying Again (Ascenium)George Neuner
| `- Re: Someone's Trying Again (Ascenium)Chris M. Thomasson
+* Re: Someone's Trying Again (Ascenium)David Brown
|`* Re: Someone's Trying Again (Ascenium)Marcus
| +* Re: Someone's Trying Again (Ascenium)David Brown
| |+* Re: Someone's Trying Again (Ascenium)Theo Markettos
| ||+* Re: Someone's Trying Again (Ascenium)Marcus
| |||+* Re: Someone's Trying Again (Ascenium)David Brown
| ||||`* Re: Power efficient neural networks (was: Someone's Trying AgainMarcus
| |||| +- Re: Power efficient neural networks (was: Someone's Trying AgainDavid Brown
| |||| `* Re: Power efficient neural networks (was: Someone's Trying AgainStephen Fuld
| ||||  +* Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))MitchAlsup
| ||||  |+* Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))Quadibloc
| ||||  ||`* Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))Quadibloc
| ||||  || +* Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))MitchAlsup
| ||||  || |`* Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))Anton Ertl
| ||||  || | `* Re: Power efficient neural networks (was: Someone's Trying AgainThomas Koenig
| ||||  || |  `* Re: Power efficient neural networks (was: Someone's Trying AgainIvan Godard
| ||||  || |   `* Re: Power efficient neural networks (was: Someone's Trying AgainThomas Koenig
| ||||  || |    `* Re: Power efficient neural networks (was: Someone's Trying AgainIvan Godard
| ||||  || |     `* Re: Power efficient neural networks (was: Someone's Trying AgainThomas Koenig
| ||||  || |      +- Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))Quadibloc
| ||||  || |      +* Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))Quadibloc
| ||||  || |      |`* Re: Power efficient neural networks (was: Someone's Trying AgainThomas Koenig
| ||||  || |      | +* Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))MitchAlsup
| ||||  || |      | |`* Re: Power efficient neural networks (was: Someone's Trying AgainThomas Koenig
| ||||  || |      | | `- Re: Power efficient neural networks (was: Someone's Trying AgainIvan Godard
| ||||  || |      | +- Re: Power efficient neural networks (was: Someone's Trying AgainJohn Dallman
| ||||  || |      | +- Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))Quadibloc
| ||||  || |      | `* Cooling (was: Power efficient neural networks)Anton Ertl
| ||||  || |      |  `- Re: Cooling (was: Power efficient neural networks)Thomas Koenig
| ||||  || |      `* Re: Power efficient neural networks (was: Someone's Trying AgainIvan Godard
| ||||  || |       `* Re: Power efficient neural networks (was: Someone's Trying AgainThomas Koenig
| ||||  || |        `* Re: Power efficient neural networksantispam
| ||||  || |         `* Re: Power efficient neural networksThomas Koenig
| ||||  || |          +* Re: Power efficient neural networksMitchAlsup
| ||||  || |          |`* Re: Power efficient neural networksThomas Koenig
| ||||  || |          | `* Re: Power efficient neural networksMitchAlsup
| ||||  || |          |  `- Re: Power efficient neural networksThomas Koenig
| ||||  || |          `* Re: Power efficient neural networksantispam
| ||||  || |           `- Re: Power efficient neural networksThomas Koenig
| ||||  || `* Re: Power efficient neural networksStefan Monnier
| ||||  ||  `* Re: Power efficient neural networksQuadibloc
| ||||  ||   `- Re: Power efficient neural networksQuadibloc
| ||||  |`- Re: Power efficient neural networks (was: Someone's Trying AgainStephen Fuld
| ||||  `* Re: Power efficient neural networks (was: Someone's Trying AgainDavid Brown
| ||||   `- Re: Power efficient neural networks (was: Someone's Trying AgainStephen Fuld
| |||+- Re: Someone's Trying Again (Ascenium)Stefan Monnier
| |||`- Re: Someone's Trying Again (Ascenium)MitchAlsup
| ||`- Re: Someone's Trying Again (Ascenium)Marcus
| |`* Re: Someone's Trying Again (Ascenium)Quadibloc
| | +- Re: Someone's Trying Again (Ascenium)chris
| | `* Re: Someone's Trying Again (Ascenium)George Neuner
| |  +- Re: Someone's Trying Again (Ascenium)Quadibloc
| |  `* Re: Someone's Trying Again (Ascenium)Anton Ertl
| |   +* Re: Someone's Trying Again (Ascenium)MitchAlsup
| |   |+* Re: Someone's Trying Again (Ascenium)Quadibloc
| |   ||`* Re: Someone's Trying Again (Ascenium)MitchAlsup
| |   || `* Re: Someone's Trying Again (Ascenium)Marcus
| |   ||  `* Re: Someone's Trying Again (Ascenium)Stefan Monnier
| |   ||   `- Re: Someone's Trying Again (Ascenium)Marcus
| |   |`- Re: Someone's Trying Again (Ascenium)Thomas Koenig
| |   +* Re: Someone's Trying Again (Ascenium)George Neuner
| |   |+- Re: Someone's Trying Again (Ascenium)MitchAlsup
| |   |+* Re: Someone's Trying Again (Ascenium)Marcus
| |   ||`* Re: Someone's Trying Again (Ascenium)Thomas Koenig
| |   || +* Re: Someone's Trying Again (Ascenium)Quadibloc
| |   || |`* Re: Someone's Trying Again (Ascenium)Quadibloc
| |   || | `* Re: Someone's Trying Again (Ascenium)Thomas Koenig
| |   || |  `* Re: Someone's Trying Again (Ascenium)Quadibloc
| |   || |   `- Re: Someone's Trying Again (Ascenium)Quadibloc
| |   || `* Re: Someone's Trying Again (Ascenium)Terje Mathisen
| |   ||  +* Re: Someone's Trying Again (Ascenium)Thomas Koenig
| |   ||  |`* Re: Someone's Trying Again (Ascenium)pec...@gmail.com
| |   ||  | `* Re: Someone's Trying Again (Ascenium)Thomas Koenig
| |   ||  |  +* Re: Someone's Trying Again (Ascenium)Terje Mathisen
| |   ||  |  |`* Re: Someone's Trying Again (Ascenium)Thomas Koenig
| |   ||  |  | `- Re: Someone's Trying Again (Ascenium)Terje Mathisen
| |   ||  |  +* Re: Someone's Trying Again (Ascenium)Bill Findlay
| |   ||  |  |`- Re: Someone's Trying Again (Ascenium)Quadibloc
| |   ||  |  `* Re: Someone's Trying Again (Ascenium)pec...@gmail.com
| |   ||  |   `- Re: Someone's Trying Again (Ascenium)Terje Mathisen
| |   ||  `- Re: Someone's Trying Again (Ascenium)antispam
| |   |`* Parallelization (was: Someone's Trying Again (Ascenium))Anton Ertl
| |   | +- Re: ParallelizationStefan Monnier
| |   | +* Re: Parallelization (was: Someone's Trying Again (Ascenium))Branimir Maksimovic
| |   | |+* Re: Parallelization (was: Someone's Trying Again (Ascenium))Quadibloc
| |   | ||+* Re: Parallelization (was: Someone's Trying Again (Ascenium))Chris M. Thomasson
| |   | |||`- Re: Parallelization (was: Someone's Trying Again (Ascenium))Branimir Maksimovic
| |   | ||+- Re: Parallelization (was: Someone's Trying Again (Ascenium))Branimir Maksimovic
| |   | ||+* Re: ParallelizationStefan Monnier
| |   | |||`* Re: ParallelizationBranimir Maksimovic
| |   | ||| `* Re: ParallelizationStefan Monnier
| |   | |||  `* Re: ParallelizationBranimir Maksimovic
| |   | |||   `- Re: ParallelizationStefan Monnier
| |   | ||`- Re: Parallelization (was: Someone's Trying Again (Ascenium))Anton Ertl
| |   | |`* Re: Parallelization (was: Someone's Trying Again (Ascenium))Marcus
| |   | `* Re: Parallelization (was: Someone's Trying Again (Ascenium))Chris M. Thomasson
| |   `* Re: Someone's Trying Again (Ascenium)Tim Rentsch
| +- Re: Someone's Trying Again (Ascenium)MitchAlsup
| `* Re: wonderful compilers, or Someone's Trying Again (Ascenium)John Levine
`* Re: Someone's Trying Again (Ascenium)Theo Markettos

Pages:12345
Re: Power efficient neural networks (was: Someone's Trying Again

<memo.20210715221012.5908f@jgd.cix.co.uk>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: jgd...@cix.co.uk (John Dallman)
Newsgroups: comp.arch
Subject: Re: Power efficient neural networks (was: Someone's Trying Again
Date: Thu, 15 Jul 2021 22:10 +0100 (BST)
Organization: A noiseless patient Spider
Lines: 13
Message-ID: <memo.20210715221012.5908f@jgd.cix.co.uk>
References: <scpstk$rm3$1@newsreader4.netcologne.de>
Reply-To: jgd@cix.co.uk
Injection-Info: reader02.eternal-september.org; posting-host="c1aa49f0486150b440282e2c45d8fd0a";
logging-data="3104"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19oIcQxtHXAbY/u7EXmHeD6CHOajG5lB10="
Cancel-Lock: sha1:WZ9baL7ddA0Ec/2DM1cmE429TSA=
 by: John Dallman - Thu, 15 Jul 2021 21:10 UTC

In article <scpstk$rm3$1@newsreader4.netcologne.de>,
tkoenig@netcologne.de (Thomas Koenig) wrote:

> Hmm... a bit of a search turns up a Wikipedia aricle on
> https://en.wikipedia.org/wiki/Novec_649/1230 which cites a source
> that this has already been tried by Intel and SGI, so the
> idea isn't new ...

The original "Merced" Itanium had internal liquid cooling. If you shook
the module that contained the CPU and its cache, you could hear sloshing
IIRC.

John

Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))

<scq9t5$nit$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: iva...@millcomputing.com (Ivan Godard)
Newsgroups: comp.arch
Subject: Re: Power efficient neural networks (was: Someone's Trying Again
(Ascenium))
Date: Thu, 15 Jul 2021 14:38:44 -0700
Organization: A noiseless patient Spider
Lines: 55
Message-ID: <scq9t5$nit$1@dont-email.me>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<sck00m$a4r$1@dont-email.me> <wXB*Pr2oy@news.chiark.greenend.org.uk>
<scluiv$g9h$1@dont-email.me> <scm256$s8d$1@dont-email.me>
<scm5d0$49e$1@dont-email.me> <scnsn9$63f$1@dont-email.me>
<ea506cd8-f33d-40a1-982f-c982ebc65577n@googlegroups.com>
<2570ff06-15f5-4490-b375-788a1f9ecce9n@googlegroups.com>
<eac2ea6d-6a61-4809-9c5d-885682486a59n@googlegroups.com>
<3dd634e5-0a4c-4b46-9da1-f41a01b9fba6n@googlegroups.com>
<2021Jul15.112634@mips.complang.tuwien.ac.at>
<scp3it$8mm$1@newsreader4.netcologne.de> <scp40d$h2v$1@dont-email.me>
<scp4o2$9ii$1@newsreader4.netcologne.de> <scp5dt$61e$1@dont-email.me>
<scpk6s$l9j$1@newsreader4.netcologne.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Thu, 15 Jul 2021 21:38:45 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="9041418af269df353e642f76083bf8c2";
logging-data="24157"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19LMNi57V4ThI09/WcE9kLx"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:kjuz3rGoMYMs4fXFF7QfFJAO6nM=
In-Reply-To: <scpk6s$l9j$1@newsreader4.netcologne.de>
Content-Language: en-US
 by: Ivan Godard - Thu, 15 Jul 2021 21:38 UTC

On 7/15/2021 8:28 AM, Thomas Koenig wrote:
> Ivan Godard <ivan@millcomputing.com> schrieb:
>> On 7/15/2021 4:04 AM, Thomas Koenig wrote:
>>> Ivan Godard <ivan@millcomputing.com> schrieb:
>>>> On 7/15/2021 3:44 AM, Thomas Koenig wrote:
>>>>> Anton Ertl <anton@mips.complang.tuwien.ac.at> schrieb:
>>>>>
>>>>>> Currently, the power density of hot chips seems to be at maybe
>>>>>> 200W/cm^2 (140W for a Ryzen 3800XT with 0.7cm^2 chiplet area), with
>>>>>> higher power density in various spots on the die.
>>>>>
>>>>> That's a high enery density, but it is within the range that
>>>>> can be removed by pool boiling, certainly of water, possibly
>>>>> by refrigerants (especially if you have some space between
>>>>> the chips).
>>>>>
>>>>> Mechanical stresses on the delicate chips could be another matter,
>>>>> though.
>>>>>
>>>
>>>> Did you used to work on pressurized water reactors?
>>>
>>> No, but my diploma thesis was in the field of pool boiling,
>>> and the subject of how much heat you can remove by boiling
>>> (a.k.a. the critical heat flux) is a standard topic in studying
>>> chemical engineering.
>>>
>>
>> My second guess was superheaters in steam locomotives :-)
>
> My name is not, and has never been, David Wardale :-) (who, AFAIK,
> was the last person to do serious steam locomotive engineering).
>
> #ifdef PEDANTIC
>
> Superheaters do what the name says, they superheat steam.
> When steam leaves a boiler, is in equilibrium with the liqid it
> is in close contact with. A superheater is a heat exchanger which
> increases the temperature further. This is a pure gas-phase heat
> exchanger, with much lower heat transfer coefficients, but also
> with a much lower heat load, so this is not a big problem.
>
> So, you could in principle use a boiling liquid for cooling
> compouter chips if you can solve the mechanical and other assorted
> problems, but using a steam superheater would make little sense.

Not my understanding, nor Wikipedia's. The input to the superheater is
wet steam, with liquid droplets embedded in the gas phase carrier with
the temperature at the phase boundary for the pressure. A superheater
moves the whole thing into gas phase. The benefit is partly the
additional energy, but they were first introduced for a different
reason: the wet steam would condense in the power cylinders and valves,
leading to maintenance problems. https://en.wikipedia.org/wiki/Superheater

Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))

<c53623a1-f890-4265-a31f-ffa6c4f62f2en@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:1303:: with SMTP id a3mr7499019qvv.49.1626398098930;
Thu, 15 Jul 2021 18:14:58 -0700 (PDT)
X-Received: by 2002:aca:2b08:: with SMTP id i8mr6024468oik.0.1626398098673;
Thu, 15 Jul 2021 18:14:58 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Thu, 15 Jul 2021 18:14:58 -0700 (PDT)
In-Reply-To: <scpstk$rm3$1@newsreader4.netcologne.de>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fa3c:a000:d5c8:401f:8150:58c5;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fa3c:a000:d5c8:401f:8150:58c5
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<sck00m$a4r$1@dont-email.me> <wXB*Pr2oy@news.chiark.greenend.org.uk>
<scluiv$g9h$1@dont-email.me> <scm256$s8d$1@dont-email.me> <scm5d0$49e$1@dont-email.me>
<scnsn9$63f$1@dont-email.me> <ea506cd8-f33d-40a1-982f-c982ebc65577n@googlegroups.com>
<2570ff06-15f5-4490-b375-788a1f9ecce9n@googlegroups.com> <eac2ea6d-6a61-4809-9c5d-885682486a59n@googlegroups.com>
<3dd634e5-0a4c-4b46-9da1-f41a01b9fba6n@googlegroups.com> <2021Jul15.112634@mips.complang.tuwien.ac.at>
<scp3it$8mm$1@newsreader4.netcologne.de> <scp40d$h2v$1@dont-email.me>
<scp4o2$9ii$1@newsreader4.netcologne.de> <scp5dt$61e$1@dont-email.me>
<scpk6s$l9j$1@newsreader4.netcologne.de> <35b5e227-1d22-40cf-9832-00ab33d70da1n@googlegroups.com>
<scpstk$rm3$1@newsreader4.netcologne.de>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <c53623a1-f890-4265-a31f-ffa6c4f62f2en@googlegroups.com>
Subject: Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Fri, 16 Jul 2021 01:14:58 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Quadibloc - Fri, 16 Jul 2021 01:14 UTC

On Thursday, July 15, 2021 at 11:57:10 AM UTC-6, Thomas Koenig wrote:

> So, another liquid would be called for, preferably something legal,
> moral and non-fattening, with a boiling point of around 60°C, or
> maybe a bit lower.

And here I thought it was due to Oscar Wilde, but I see it actually
originated with Alexander Woolcott, and then was taken up by
W. C. Fields.

However, being non-conductive is probably more important in that
application.

John Savard

Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))

<scr8bq$oce$1@newsreader4.netcologne.de>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2001-4dd7-ef14-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Power efficient neural networks (was: Someone's Trying Again
(Ascenium))
Date: Fri, 16 Jul 2021 06:18:34 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <scr8bq$oce$1@newsreader4.netcologne.de>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<sck00m$a4r$1@dont-email.me> <wXB*Pr2oy@news.chiark.greenend.org.uk>
<scluiv$g9h$1@dont-email.me> <scm256$s8d$1@dont-email.me>
<scm5d0$49e$1@dont-email.me> <scnsn9$63f$1@dont-email.me>
<ea506cd8-f33d-40a1-982f-c982ebc65577n@googlegroups.com>
<2570ff06-15f5-4490-b375-788a1f9ecce9n@googlegroups.com>
<eac2ea6d-6a61-4809-9c5d-885682486a59n@googlegroups.com>
<3dd634e5-0a4c-4b46-9da1-f41a01b9fba6n@googlegroups.com>
<2021Jul15.112634@mips.complang.tuwien.ac.at>
<scp3it$8mm$1@newsreader4.netcologne.de> <scp40d$h2v$1@dont-email.me>
<scp4o2$9ii$1@newsreader4.netcologne.de> <scp5dt$61e$1@dont-email.me>
<scpk6s$l9j$1@newsreader4.netcologne.de>
<35b5e227-1d22-40cf-9832-00ab33d70da1n@googlegroups.com>
<scpstk$rm3$1@newsreader4.netcologne.de>
<15a3b01a-24a2-4e95-bfb7-8fb106eac501n@googlegroups.com>
Injection-Date: Fri, 16 Jul 2021 06:18:34 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2001-4dd7-ef14-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2001:4dd7:ef14:0:7285:c2ff:fe6c:992d";
logging-data="24974"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Fri, 16 Jul 2021 06:18 UTC

MitchAlsup <MitchAlsup@aol.com> schrieb:
> On Thursday, July 15, 2021 at 12:57:10 PM UTC-5, Thomas Koenig wrote:
>> Quadibloc <jsa...@ecn.ab.ca> schrieb:
>> > On Thursday, July 15, 2021 at 9:28:30 AM UTC-6, Thomas Koenig wrote:
>> >
>> >> So, you could in principle use a boiling liquid for cooling
>> >> compouter chips if you can solve the mechanical and other assorted
>> >> problems,
>> >
>> > Isn't that what heat pipes use *already*?
>> Yep, but I was thinking of direct contact of the chips with the
>> boiling liquid (with a thin insulating laryer, presumably).
>>
>> _Much_ more efficient. The nice thing is that your temperature
>> stays pretty much constant as long as there is enough liquid -
>> no hot edges.
><
> And a bit more dangerous. Boiling a liquid requires the liquid to
> create bubbles (of the gas) and these bubbles invariably form at
> the solid liquid interface. These microscopic bubbles can lift the
> solid surface one atom at a time causing the surface to decompose
> over time--limiting lifetime.

Abrasion is not a big issue in pool boiling, especially with
the right choice of materials and design.

Like I said, I would be more concerned about vibrations, but
that could also be reduced by mounting the chips on the
back of, let's say, a thin metal plate with reasonably high
conductivity, and have the boiling liquid on the other side.

On the other hand, if your system havs high-velocity two-phase flow,
that can be quite abrasive. The solution is simple, then: Just don't
design the system that way.

> Non-boiling temperature transfer has much longer actual lifetimes.

For a misdesigned boiling heat transfer system vs. a well-designed
single-phase system, this is certainly true.

If you go to the turbulent regime, you also have vibrations.
In the laminar regime, you have _much_ lower heat transfer
coefficients unless you go micro heat exchanger, and then
you have large pressure drops.

And so on... there's a huge design space with heat exchangers,
and people have been very busy the last 150 years or so.

Question: Is there any actual experience with a cooling through
boiling system, apart from the (apparently) short trials mentioned
at Wikipedia?

Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))

<scr9gf$oct$1@newsreader4.netcologne.de>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2001-4dd7-ef14-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Power efficient neural networks (was: Someone's Trying Again
(Ascenium))
Date: Fri, 16 Jul 2021 06:38:07 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <scr9gf$oct$1@newsreader4.netcologne.de>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<sck00m$a4r$1@dont-email.me> <wXB*Pr2oy@news.chiark.greenend.org.uk>
<scluiv$g9h$1@dont-email.me> <scm256$s8d$1@dont-email.me>
<scm5d0$49e$1@dont-email.me> <scnsn9$63f$1@dont-email.me>
<ea506cd8-f33d-40a1-982f-c982ebc65577n@googlegroups.com>
<2570ff06-15f5-4490-b375-788a1f9ecce9n@googlegroups.com>
<eac2ea6d-6a61-4809-9c5d-885682486a59n@googlegroups.com>
<3dd634e5-0a4c-4b46-9da1-f41a01b9fba6n@googlegroups.com>
<2021Jul15.112634@mips.complang.tuwien.ac.at>
<scp3it$8mm$1@newsreader4.netcologne.de> <scp40d$h2v$1@dont-email.me>
<scp4o2$9ii$1@newsreader4.netcologne.de> <scp5dt$61e$1@dont-email.me>
<scpk6s$l9j$1@newsreader4.netcologne.de> <scq9t5$nit$1@dont-email.me>
Injection-Date: Fri, 16 Jul 2021 06:38:07 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2001-4dd7-ef14-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2001:4dd7:ef14:0:7285:c2ff:fe6c:992d";
logging-data="24989"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Fri, 16 Jul 2021 06:38 UTC

Ivan Godard <ivan@millcomputing.com> schrieb:
> On 7/15/2021 8:28 AM, Thomas Koenig wrote:

>> Superheaters do what the name says, they superheat steam.
>> When steam leaves a boiler, is in equilibrium with the liqid it
>> is in close contact with. A superheater is a heat exchanger which
>> increases the temperature further. This is a pure gas-phase heat
>> exchanger, with much lower heat transfer coefficients, but also
>> with a much lower heat load, so this is not a big problem.
>>
>> So, you could in principle use a boiling liquid for cooling
>> compouter chips if you can solve the mechanical and other assorted
>> problems, but using a steam superheater would make little sense.
>
>
> Not my understanding, nor Wikipedia's. The input to the superheater is
> wet steam, with liquid droplets embedded in the gas phase carrier with
> the temperature at the phase boundary for the pressure. A superheater
> moves the whole thing into gas phase. The benefit is partly the
> additional energy, but they were first introduced for a different
> reason: the wet steam would condense in the power cylinders and valves,
> leading to maintenance problems. https://en.wikipedia.org/wiki/Superheater

"Wet steam" is just a nickname for saturated steam.

What you write about maintenance being the reason for introduction
is not what I read in the article, which only mentions maintenance
in the context of maintenance on the superheater, maybe you have
some other source or somebody changed this five minutes ago :-)

The reason why a superheater increases efficiency is that steam
gives off mechanical work during expansion, so it's basically
pressure times volume difference (I will spare you the integrals).
If part of the steam condenses, then there is less volume, therefore
less mechanical work to do. Bringing the steam away from the
saturation line means that it will be less or no condensation
during expansion, leading to more work done and (on the whole)
better efficiency.

You can also do the calculation with an enthalpy-entropy diagram
for water if you're really interested, but you may not be :-)

For piston engines, the problem is worse than for a turbine.
During the expansion of the steam in the cylinder, it cools,
cooling the walls of the cylinder with it. When the hot steam
enters the cylinder in the next cycle, part of it will be
cooled and may condense, so superheating also helps against
those losses.

This is one reason why double or even triple expansion steam
engines were used - the temperature differences in a single
expansion were smaller, thus less cooling down of hot steam.

For turbines, a single spot is always at the same temperature.

Turbines were a failure for steam locomotives becaue of their
poor characteristics when starting, and their poor partial load
characteristics.

There's a book about "failed innovations" that I mislaid about
20 years ago which gives details on this particular failure,
among others. I may have to buy it again, if it is still available.

Re: Power efficient neural networks (was: Someone's Trying Again (Ascenium))

<scrdr8$g1s$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: iva...@millcomputing.com (Ivan Godard)
Newsgroups: comp.arch
Subject: Re: Power efficient neural networks (was: Someone's Trying Again
(Ascenium))
Date: Fri, 16 Jul 2021 00:52:07 -0700
Organization: A noiseless patient Spider
Lines: 55
Message-ID: <scrdr8$g1s$1@dont-email.me>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<sck00m$a4r$1@dont-email.me> <wXB*Pr2oy@news.chiark.greenend.org.uk>
<scluiv$g9h$1@dont-email.me> <scm256$s8d$1@dont-email.me>
<scm5d0$49e$1@dont-email.me> <scnsn9$63f$1@dont-email.me>
<ea506cd8-f33d-40a1-982f-c982ebc65577n@googlegroups.com>
<2570ff06-15f5-4490-b375-788a1f9ecce9n@googlegroups.com>
<eac2ea6d-6a61-4809-9c5d-885682486a59n@googlegroups.com>
<3dd634e5-0a4c-4b46-9da1-f41a01b9fba6n@googlegroups.com>
<2021Jul15.112634@mips.complang.tuwien.ac.at>
<scp3it$8mm$1@newsreader4.netcologne.de> <scp40d$h2v$1@dont-email.me>
<scp4o2$9ii$1@newsreader4.netcologne.de> <scp5dt$61e$1@dont-email.me>
<scpk6s$l9j$1@newsreader4.netcologne.de>
<35b5e227-1d22-40cf-9832-00ab33d70da1n@googlegroups.com>
<scpstk$rm3$1@newsreader4.netcologne.de>
<15a3b01a-24a2-4e95-bfb7-8fb106eac501n@googlegroups.com>
<scr8bq$oce$1@newsreader4.netcologne.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Fri, 16 Jul 2021 07:52:08 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="5fecf0e5eb1d9ff1bc8849f0203a63da";
logging-data="16444"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/SW0MIC/Vxm6Y2G26BXiSJ"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:uoMwNYUDO1FCQhyrlzYhJ7ktS3M=
In-Reply-To: <scr8bq$oce$1@newsreader4.netcologne.de>
Content-Language: en-US
 by: Ivan Godard - Fri, 16 Jul 2021 07:52 UTC

On 7/15/2021 11:18 PM, Thomas Koenig wrote:
> MitchAlsup <MitchAlsup@aol.com> schrieb:
>> On Thursday, July 15, 2021 at 12:57:10 PM UTC-5, Thomas Koenig wrote:
>>> Quadibloc <jsa...@ecn.ab.ca> schrieb:
>>>> On Thursday, July 15, 2021 at 9:28:30 AM UTC-6, Thomas Koenig wrote:
>>>>
>>>>> So, you could in principle use a boiling liquid for cooling
>>>>> compouter chips if you can solve the mechanical and other assorted
>>>>> problems,
>>>>
>>>> Isn't that what heat pipes use *already*?
>>> Yep, but I was thinking of direct contact of the chips with the
>>> boiling liquid (with a thin insulating laryer, presumably).
>>>
>>> _Much_ more efficient. The nice thing is that your temperature
>>> stays pretty much constant as long as there is enough liquid -
>>> no hot edges.
>> <
>> And a bit more dangerous. Boiling a liquid requires the liquid to
>> create bubbles (of the gas) and these bubbles invariably form at
>> the solid liquid interface. These microscopic bubbles can lift the
>> solid surface one atom at a time causing the surface to decompose
>> over time--limiting lifetime.
>
> Abrasion is not a big issue in pool boiling, especially with
> the right choice of materials and design.
>
> Like I said, I would be more concerned about vibrations, but
> that could also be reduced by mounting the chips on the
> back of, let's say, a thin metal plate with reasonably high
> conductivity, and have the boiling liquid on the other side.
>
> On the other hand, if your system havs high-velocity two-phase flow,
> that can be quite abrasive. The solution is simple, then: Just don't
> design the system that way.
>
>> Non-boiling temperature transfer has much longer actual lifetimes.
>
> For a misdesigned boiling heat transfer system vs. a well-designed
> single-phase system, this is certainly true.
>
> If you go to the turbulent regime, you also have vibrations.
> In the laminar regime, you have _much_ lower heat transfer
> coefficients unless you go micro heat exchanger, and then
> you have large pressure drops.
>
> And so on... there's a huge design space with heat exchangers,
> and people have been very busy the last 150 years or so.
>
> Question: Is there any actual experience with a cooling through
> boiling system, apart from the (apparently) short trials mentioned
> at Wikipedia?
>

Was the ETA systems CPU (liquid nitrogen coolant) boiling the nitrogen?

Cooling (was: Power efficient neural networks)

<2021Jul17.170645@mips.complang.tuwien.ac.at>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.arch
Subject: Cooling (was: Power efficient neural networks)
Date: Sat, 17 Jul 2021 15:06:45 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 63
Distribution: world
Message-ID: <2021Jul17.170645@mips.complang.tuwien.ac.at>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com> <eac2ea6d-6a61-4809-9c5d-885682486a59n@googlegroups.com> <3dd634e5-0a4c-4b46-9da1-f41a01b9fba6n@googlegroups.com> <2021Jul15.112634@mips.complang.tuwien.ac.at> <scp3it$8mm$1@newsreader4.netcologne.de> <scp40d$h2v$1@dont-email.me> <scp4o2$9ii$1@newsreader4.netcologne.de> <scp5dt$61e$1@dont-email.me> <scpk6s$l9j$1@newsreader4.netcologne.de> <35b5e227-1d22-40cf-9832-00ab33d70da1n@googlegroups.com> <scpstk$rm3$1@newsreader4.netcologne.de>
Injection-Info: reader02.eternal-september.org; posting-host="ef6bc75fe6de8fbd360ac892739e8463";
logging-data="8676"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18hRSiVmqtORgT8wLBw2ZwW"
Cancel-Lock: sha1:wlLvPxzFe6dKBoN+eMI648Motsw=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Sat, 17 Jul 2021 15:06 UTC

Thomas Koenig <tkoenig@netcologne.de> writes:
>Quadibloc <jsavard@ecn.ab.ca> schrieb:
>> On Thursday, July 15, 2021 at 9:28:30 AM UTC-6, Thomas Koenig wrote:
>>
>>> So, you could in principle use a boiling liquid for cooling
>>> compouter chips if you can solve the mechanical and other assorted
>>> problems,
>>
>> Isn't that what heat pipes use *already*?
>
>Yep, but I was thinking of direct contact of the chips with the
>boiling liquid (with a thin insulating laryer, presumably).
>
>_Much_ more efficient.

If you can avoid the Leidenfrost effect (where the gaseous phase
insulates the heat source from the cooling liquid (well known from
experiments with liquid nitrogen).

There are systems that use this idea (e.g.,
<https://www.computerbase.de/2017-08/der8auer-aqua-exhalare-zwei-phasen-kuehlung/>),
but for now it does not seem to offer enough advantages to justify the
effort.

>The nice thing is that your temperature
>stays pretty much constant as long as there is enough liquid -
>no hot edges.
>
>Another nice property is that, if your chips run at 70°C (let's
>say) and your vapor comes out the system at 60°C, the vapor is
>easy and cheap to condense - even cooling water at 45°C can do it.
>
>Water would be ideal because of its high enthalpy of vaporization
>and because you can realize the highest heat fluxes with it.
>It is also non-toxic.
>
>However, it has some unpleasant properties for electronics, such
>as being rather conductive with only trace amount of ions needed,
>so that is probably out. You would also have to run it in a slight
>vacuum to get below 100°C, which could be problematic.

All of that is not a problem with heat pipes (or more generally, vapor
chambers): The water is nicely enclosed in the heat pipe, lower
pressure is not a problem, and AFAIK they contain solid stuff that
helps avoid the gas bubble insulation effect. That's why we see heat
pipes used in practice, but not direct-contact systems.

One other interesting aspect is that one might expect heat sinks with
direct-touch heat pipes (direct contact between the heat pipe and the
heat spreader of the CPU) to work better than heat sinks with a base
plate with soldered-in heat pipes, but the better (and more expensive)
heat sinks use a base plate.

One might also expect that it's better if the heat sink touches the
die directly, but that's only done for (low-power) mobile CPUs and
(less power-dense) GPUs; desktop and server CPUs put a heat spreader
and solder (or some liquid interface material) between the die and the
heat sink.

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

Re: Cooling (was: Power efficient neural networks)

<scv53b$ct5$1@newsreader4.netcologne.de>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Cooling (was: Power efficient neural networks)
Date: Sat, 17 Jul 2021 17:47:23 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <scv53b$ct5$1@newsreader4.netcologne.de>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<eac2ea6d-6a61-4809-9c5d-885682486a59n@googlegroups.com>
<3dd634e5-0a4c-4b46-9da1-f41a01b9fba6n@googlegroups.com>
<2021Jul15.112634@mips.complang.tuwien.ac.at>
<scp3it$8mm$1@newsreader4.netcologne.de> <scp40d$h2v$1@dont-email.me>
<scp4o2$9ii$1@newsreader4.netcologne.de> <scp5dt$61e$1@dont-email.me>
<scpk6s$l9j$1@newsreader4.netcologne.de>
<35b5e227-1d22-40cf-9832-00ab33d70da1n@googlegroups.com>
<scpstk$rm3$1@newsreader4.netcologne.de>
<2021Jul17.170645@mips.complang.tuwien.ac.at>
Injection-Date: Sat, 17 Jul 2021 17:47:23 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:a40:0:7285:c2ff:fe6c:992d";
logging-data="13221"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Sat, 17 Jul 2021 17:47 UTC

Anton Ertl <anton@mips.complang.tuwien.ac.at> schrieb:
> Thomas Koenig <tkoenig@netcologne.de> writes:
>>Quadibloc <jsavard@ecn.ab.ca> schrieb:
>>> On Thursday, July 15, 2021 at 9:28:30 AM UTC-6, Thomas Koenig wrote:
>>>
>>>> So, you could in principle use a boiling liquid for cooling
>>>> compouter chips if you can solve the mechanical and other assorted
>>>> problems,
>>>
>>> Isn't that what heat pipes use *already*?
>>
>>Yep, but I was thinking of direct contact of the chips with the
>>boiling liquid (with a thin insulating laryer, presumably).
>>
>>_Much_ more efficient.
>
> If you can avoid the Leidenfrost effect (where the gaseous phase
> insulates the heat source from the cooling liquid (well known from
> experiments with liquid nitrogen).

That's the critical heat flux I was writing about - you go above
that, you get the Leidenfrost effect (and usually a burnout of your
heating surface, which is one reason why it is called "critical"
heat flux).

>
> There are systems that use this idea (e.g.,
><https://www.computerbase.de/2017-08/der8auer-aqua-exhalare-zwei-phasen-kuehlung/>),
> but for now it does not seem to offer enough advantages to justify the
> effort.

Interesting, thanks!

This seems to be more of a traditional system with extra cooling.

I was thinking of a CPU wall, so to speak - think big :-)

Re: Someone's Trying Again (Ascenium)

<2021Jul18.175524@mips.complang.tuwien.ac.at>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Sun, 18 Jul 2021 15:55:24 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 85
Message-ID: <2021Jul18.175524@mips.complang.tuwien.ac.at>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com> <scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me> <sck00m$a4r$1@dont-email.me> <f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com> <2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
Injection-Info: reader02.eternal-september.org; posting-host="d131848ce95877394fb656ffd8f210e9";
logging-data="24145"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX185ClfiaMk1Bms8TB9tEQiN"
Cancel-Lock: sha1:jFdiXoigS0NNO4Zt9vOfraXZJSY=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Sun, 18 Jul 2021 15:55 UTC

George Neuner <gneuner2@comcast.net> writes:
>On Tue, 13 Jul 2021 14:58:48 -0700 (PDT), Quadibloc
><jsavard@ecn.ab.ca> wrote:
>
>>On Tuesday, July 13, 2021 at 6:13:13 AM UTC-6, David Brown wrote:
>>
>>> What seems to be missing here (at least, /I/ have missed it) is a
>>> discusion about what people actually want to do with computing power.
>>> Is it fair to suggest that most tasks that people currently want to run
>>> faster, are actually reasonably parallel? And that most tasks that
>>> people want to run a /lot/ faster are /very/ parallel?
>>
>>Unfortunately, no, it isn't.
>>
>>Many of the tasks that people want to run faster are parallel, but some of
>>them are not.
>>
>>Also, it's at least possible that *some* of the tasks people want to run
>>faster... are perhaps more parallel than people realize, and some new
>>programming paradigm might enable this parallelism to be brought to
>>light. At least that's the hope that fuels attempts to design compilers
>>that will bring out extra parallelism that's not obvious to human programmers.
>>
>>John Savard
>
>The problem - at least with current hardware - is that programmers are
>much better at identifying what CAN be done in parallel than what
>SHOULD be done in parallel.

You make it sound as if that's a problem with the programmers, not
with the hardware. But it's fundamental to programming (at least in
areas affected by the software crisis, i.e., not supercomputers), so
it has to be solved at the system level (i.e., hardware, compiler,
etc.).

Why is it fundamental? Because we build maintainable software by
splitting it into mostly-independent parts. Deciding how much to
parallelize on current hardware needs a global view of the program,
which programmers usually do not have; and even when they have it,
their decisions will probably be outdated after a while of maintaining
the program.

We have similar problems with explicitly managed fast memory, which is
why we don't see that in general-purpose computers; instead, we see
caches (a software-crisis-compatible variant of fast memory).

Yet another problem of this kind is fixed-point scaling. That's why
we have floating-point.

So what do we need of the system? Ideally having more parallel parts
than needed should not cause a slowdown. This has two aspects:

1) Thread creation and destruction should be cheap.

2) The harder part is memory locality: Sequential code often works
very well on caches because it has a lot of temporal and spatial
locality. If the code is split into more tasks than necessary, how do
we avoid losing locality and thus losing some of the benefits of
caching?

>I really like Mitch's VVM. I'm primarily a software guy, but from what
>I've understood of it, VVM seems to address a number of the problems
>that plague auto-vectorization. Waiting for actual hardware. 8-)

It certainly is better than compiler auto-vectorization (at least it
will be when we see it in hardware). But it also follows the (IMO
wrong-headed) auto-vectorization approach of trying to derive
vectorized code/execution from sequential code. When writing
sequential code, programmers tend to inadvertantly put in stuff that
prevents auto-vectorization; VVM may be able to vectorize parts of the
execution, but still: It does not make good use of the ability of
programmers to (as you wrote) identify what can be done in parallel.

Programmers can vectorize manually (just take a look at an APL
program), and reorganize programs into vectorized form that is far out
of reach of auto-vectorizing compilers, and, I think, also
out-of-reach for VVM. As an example, Bernd Paysan once claimed that
TeX's paragraph-formatting can be vectorized (but he did not do it).
And then you can think of what the compiler and hardware have to do to
make it run fast.

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

Re: Someone's Trying Again (Ascenium)

<84bda4ad-5c78-44e1-9952-03ec38cf7cadn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a37:d86:: with SMTP id 128mr18366081qkn.299.1626627836981;
Sun, 18 Jul 2021 10:03:56 -0700 (PDT)
X-Received: by 2002:a9d:6f84:: with SMTP id h4mr16690489otq.240.1626627836783;
Sun, 18 Jul 2021 10:03:56 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sun, 18 Jul 2021 10:03:56 -0700 (PDT)
In-Reply-To: <2021Jul18.175524@mips.complang.tuwien.ac.at>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:646f:e929:9775:676;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:646f:e929:9775:676
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me> <sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com> <2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <84bda4ad-5c78-44e1-9952-03ec38cf7cadn@googlegroups.com>
Subject: Re: Someone's Trying Again (Ascenium)
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Sun, 18 Jul 2021 17:03:56 +0000
Content-Type: text/plain; charset="UTF-8"
 by: MitchAlsup - Sun, 18 Jul 2021 17:03 UTC

On Sunday, July 18, 2021 at 11:47:49 AM UTC-5, Anton Ertl wrote:
> George Neuner <gneu...@comcast.net> writes:
> >On Tue, 13 Jul 2021 14:58:48 -0700 (PDT), Quadibloc
> ><jsa...@ecn.ab.ca> wrote:
> >
> >>On Tuesday, July 13, 2021 at 6:13:13 AM UTC-6, David Brown wrote:
> >>
> >>> What seems to be missing here (at least, /I/ have missed it) is a
> >>> discusion about what people actually want to do with computing power.
> >>> Is it fair to suggest that most tasks that people currently want to run
> >>> faster, are actually reasonably parallel? And that most tasks that
> >>> people want to run a /lot/ faster are /very/ parallel?
> >>
> >>Unfortunately, no, it isn't.
> >>
> >>Many of the tasks that people want to run faster are parallel, but some of
> >>them are not.
> >>
> >>Also, it's at least possible that *some* of the tasks people want to run
> >>faster... are perhaps more parallel than people realize, and some new
> >>programming paradigm might enable this parallelism to be brought to
> >>light. At least that's the hope that fuels attempts to design compilers
> >>that will bring out extra parallelism that's not obvious to human programmers.
> >>
> >>John Savard
> >
> >The problem - at least with current hardware - is that programmers are
> >much better at identifying what CAN be done in parallel than what
> >SHOULD be done in parallel.
<
> You make it sound as if that's a problem with the programmers, not
> with the hardware. But it's fundamental to programming (at least in
> areas affected by the software crisis, i.e., not supercomputers), so
> it has to be solved at the system level (i.e., hardware, compiler,
> etc.).
>
> Why is it fundamental? Because we build maintainable software by
<
Where "we" is the 1% who are both good programmers and look at the
long term rather than the deadline of the day/week.
<
> splitting it into mostly-independent parts.
<
Which inlining compilers whack back into the calling function.
<
> Deciding how much to
> parallelize on current hardware needs a global view of the program,
> which programmers usually do not have; and even when they have it,
> their decisions will probably be outdated after a while of maintaining
> the program.
<
That global view changes over time, so any one programmer is not in a
position to make assumptions that will survive over time.
>
> We have similar problems with explicitly managed fast memory, which is
> why we don't see that in general-purpose computers; instead, we see
> caches (a software-crisis-compatible variant of fast memory).
>
> Yet another problem of this kind is fixed-point scaling. That's why
> we have floating-point.
>
> So what do we need of the system? Ideally having more parallel parts
> than needed should not cause a slowdown. This has two aspects:
>
> 1) Thread creation and destruction should be cheap.
<
Depends on what you mean by cheap:: 1-cycle cheap is vastly
different than 1,000 cycle cheap.
>
> 2) The harder part is memory locality: Sequential code often works
> very well on caches because it has a lot of temporal and spatial
> locality. If the code is split into more tasks than necessary, how do
> we avoid losing locality and thus losing some of the benefits of
> caching?
<
It is a delicate tradeoff that changes every generation. It would be
better if HW could make these decisions. But HW is currently lacking
a model under which it could rest control from the humans in the loop.
<
> >I really like Mitch's VVM. I'm primarily a software guy, but from what
> >I've understood of it, VVM seems to address a number of the problems
> >that plague auto-vectorization. Waiting for actual hardware. 8-)
<
> It certainly is better than compiler auto-vectorization (at least it
> will be when we see it in hardware). But it also follows the (IMO
> wrong-headed) auto-vectorization approach of trying to derive
> vectorized code/execution from sequential code.
<
At least the compiler makes the choice on vectorizing the loop (or not).
But unlike instructions vectorization, the compiler can make its choice
based on simple rules without exotic analysis. And the vectorized code
achieves the same results on non-vector capable HW as on GBOoO
multi-lane vector HW.
<
> When writing
> sequential code, programmers tend to inadvertantly put in stuff that
> prevents auto-vectorization; VVM may be able to vectorize parts of the
> execution, but still: It does not make good use of the ability of
> programmers to (as you wrote) identify what can be done in parallel.
<
The biggest VVM issue is that one cannot put calls inside a vectorized
loop. But to a large extent the calls to functions like SIN,COS,EXP,Ln are
all instructions in My 66000, so a large part of this is ameliorated.
>
> Programmers can vectorize manually (just take a look at an APL
> program), and reorganize programs into vectorized form that is far out
> of reach of auto-vectorizing compilers, and, I think, also
> out-of-reach for VVM.
<
By design VVM vectorizes inner loops--this is where the biggest bang for
the buck is found, and punts entirely on outer loops and whole programs.
<
> As an example, Bernd Paysan once claimed that
> TeX's paragraph-formatting can be vectorized (but he did not do it).
> And then you can think of what the compiler and hardware have to do to
> make it run fast.
<
I once heard that the CRAY 1 ASM symbol table lookup was vectorized.
<
> - anton
> --
> 'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
> Mitch Alsup, <c17fcd89-f024-40e7...@googlegroups.com>

Re: Someone's Trying Again (Ascenium)

<4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: gneun...@comcast.net (George Neuner)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Sun, 18 Jul 2021 15:09:42 -0400
Organization: A noiseless patient Spider
Lines: 96
Message-ID: <4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com> <scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me> <sck00m$a4r$1@dont-email.me> <f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com> <2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com> <2021Jul18.175524@mips.complang.tuwien.ac.at>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Injection-Info: reader02.eternal-september.org; posting-host="6fe4219d1e4573f86a601643da7ef716";
logging-data="1647"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18HN9eDA28UcTgTT1JhLLwHzUjZuXwoh1M="
User-Agent: ForteAgent/8.00.32.1272
Cancel-Lock: sha1:PqAVDt4oZbnbEYCxMM8C2e8iS24=
 by: George Neuner - Sun, 18 Jul 2021 19:09 UTC

On Sun, 18 Jul 2021 15:55:24 GMT, anton@mips.complang.tuwien.ac.at
(Anton Ertl) wrote:

>George Neuner <gneuner2@comcast.net> writes:
>
>>The problem - at least with current hardware - is that programmers are
>>much better at identifying what CAN be done in parallel than what
>>SHOULD be done in parallel.
>
>You make it sound as if that's a problem with the programmers, not
>with the hardware. But it's fundamental to programming (at least in
>areas affected by the software crisis, i.e., not supercomputers), so
>it has to be solved at the system level (i.e., hardware, compiler,
>etc.).

It /IS/ a problem with the programmers. The average "developer" now
has no CS, engineering, or (advanced) mathematics education, and their
programming skills are pitiful - only slightly above "script kiddie".
This is an unfortunate fact of life that I think too often is lost on
some denizens of this group.

Given the ability to create "parallel" tasks, an /average/ programmer
is very likely to naively create large numbers of new tasks regardless
of resources being available to actually execute them.

Which maybe is fine if the number of tasks (relatively) is small, or
if many of them are I/O bound and the use is for /concurrency/. But
most programmers do not understand the difference between "parallel"
and "concurrent", and too many don't understand why spawning large
numbers of tasks can slow down the program.

Outside of DBMS and web servers most threads in most programs are
either compute or memory bound. So if a lot of threads get started, a
handful of them run, but most will sit idle for long periods waiting
for the CPU.

Go lurk in some of the language forums for a while. Far too often
there will be some question posed for which the ensuing discussion
reveals that the programmer is attempting to do something that is
(sometimes far) beyond their ability.

Even discounting newbie questions - which can be forgiven - the
numbers of "experienced" programmers who are ignorant about languages
or tools they are trying to use, or are lacking domain knowledge about
the problem they are expected/expecting to solve, is staggering.

To me anyway. YMMV.

>Why is it fundamental? Because we build maintainable software by
>splitting it into mostly-independent parts. Deciding how much to
>parallelize on current hardware needs a global view of the program,
>which programmers usually do not have; and even when they have it,
>their decisions will probably be outdated after a while of maintaining
>the program.
>
>We have similar problems with explicitly managed fast memory, which is
>why we don't see that in general-purpose computers; instead, we see
>caches (a software-crisis-compatible variant of fast memory).

We have similar problems with programmer managed dynamic allocation.
All the modern languages use GC /because/ repeated studies have shown
that average programmers largely are incapable of writing leak-proof
code without it.
[And they /still/ have problems with other unmanaged resources.]

>Yet another problem of this kind is fixed-point scaling. That's why
>we have floating-point.

And the same people who, in the past, would not have understood the
issues of using fixed-point now don't understand the issues of using
floating point.

Unless it is "software arbitrary precision decimal" floating point -
i.e. "Big Decimal" - then odds are good it is being used incorrectly
and the answers it yields probably should be suspect.

>So what do we need of the system? Ideally having more parallel parts
>than needed should not cause a slowdown. This has two aspects:
>
>1) Thread creation and destruction should be cheap.
>
>2) The harder part is memory locality: Sequential code often works
>very well on caches because it has a lot of temporal and spatial
>locality. If the code is split into more tasks than necessary, how do
>we avoid losing locality and thus losing some of the benefits of
>caching?

Agreed! But this has little to do with any of my points.

>- anton
George

Re: Someone's Trying Again (Ascenium)

<5b3da1e2-d4f2-4d63-9906-af56cbbc4e7dn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ac8:665a:: with SMTP id j26mr19809999qtp.254.1626642404463;
Sun, 18 Jul 2021 14:06:44 -0700 (PDT)
X-Received: by 2002:a9d:491c:: with SMTP id e28mr16214235otf.342.1626642404256;
Sun, 18 Jul 2021 14:06:44 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sun, 18 Jul 2021 14:06:44 -0700 (PDT)
In-Reply-To: <4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:c414:6046:92b1:a701;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:c414:6046:92b1:a701
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me> <sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com> <2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at> <4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <5b3da1e2-d4f2-4d63-9906-af56cbbc4e7dn@googlegroups.com>
Subject: Re: Someone's Trying Again (Ascenium)
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Sun, 18 Jul 2021 21:06:44 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: MitchAlsup - Sun, 18 Jul 2021 21:06 UTC

On Sunday, July 18, 2021 at 2:09:47 PM UTC-5, George Neuner wrote:
> On Sun, 18 Jul 2021 15:55:24 GMT, an...@mips.complang.tuwien.ac.at
> (Anton Ertl) wrote:
>
> >George Neuner <gneu...@comcast.net> writes:
>snip>
> >Why is it fundamental? Because we build maintainable software by
> >splitting it into mostly-independent parts. Deciding how much to
> >parallelize on current hardware needs a global view of the program,
> >which programmers usually do not have; and even when they have it,
> >their decisions will probably be outdated after a while of maintaining
> >the program.
> >
> >We have similar problems with explicitly managed fast memory, which is
> >why we don't see that in general-purpose computers; instead, we see
> >caches (a software-crisis-compatible variant of fast memory).
<
> We have similar problems with programmer managed dynamic allocation.
> All the modern languages use GC /because/ repeated studies have shown
> that average programmers largely are incapable of writing leak-proof
> code without it.
<
And this is AFTER programming languages created constructors and
destructors which the programmer is allowed to basically "forget" about
their workings and manage memory for them..........
<
> [And they /still/ have problems with other unmanaged resources.]
> >Yet another problem of this kind is fixed-point scaling. That's why
> >we have floating-point.
> And the same people who, in the past, would not have understood the
> issues of using fixed-point now don't understand the issues of using
> floating point.
>
> Unless it is "software arbitrary precision decimal" floating point -
> i.e. "Big Decimal" - then odds are good it is being used incorrectly
> and the answers it yields probably should be suspect.
<
> >So what do we need of the system? Ideally having more parallel parts
> >than needed should not cause a slowdown. This has two aspects:
> >
> >1) Thread creation and destruction should be cheap.
> >
> >2) The harder part is memory locality: Sequential code often works
> >very well on caches because it has a lot of temporal and spatial
> >locality. If the code is split into more tasks than necessary, how do
> >we avoid losing locality and thus losing some of the benefits of
> >caching?
> Agreed! But this has little to do with any of my points.
>
>
> >- anton
> George
<
I should relate a problem I advised a mid-level programmer about a
few years ago when debugging a memory leak problem. He had spent
a large amount of effort tracking down memory leaks in a data base.
After listening to the problem space, I advised him to fork off a (unix)
task, sharing memory, perform the work, and let the OS clean up the
memory leaks (terminate cleanup). Not only did this eliminate* the
memory leak, it ran 3× faster !! even with the task creation and tear
down overheads.
<
(*) It did not get rid of the memory leak, it isolated the memory leak
into a section of memory that was cleanup up in its entirety rather
than in piecemeal.
<
But I wholly agree with George--the problem is the programmers.

Re: Someone's Trying Again (Ascenium)

<cc2717d9-9311-4182-83a3-e8d3b70319b2n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ac8:66d1:: with SMTP id m17mr19774050qtp.146.1626642602192;
Sun, 18 Jul 2021 14:10:02 -0700 (PDT)
X-Received: by 2002:a9d:4e0a:: with SMTP id p10mr16344694otf.329.1626642601999;
Sun, 18 Jul 2021 14:10:01 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sun, 18 Jul 2021 14:10:01 -0700 (PDT)
In-Reply-To: <84bda4ad-5c78-44e1-9952-03ec38cf7cadn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fa3c:a000:6437:2f3c:fd50:a217;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fa3c:a000:6437:2f3c:fd50:a217
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me> <sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com> <2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at> <84bda4ad-5c78-44e1-9952-03ec38cf7cadn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <cc2717d9-9311-4182-83a3-e8d3b70319b2n@googlegroups.com>
Subject: Re: Someone's Trying Again (Ascenium)
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Sun, 18 Jul 2021 21:10:02 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Quadibloc - Sun, 18 Jul 2021 21:10 UTC

On Sunday, July 18, 2021 at 11:03:58 AM UTC-6, MitchAlsup wrote:
> On Sunday, July 18, 2021 at 11:47:49 AM UTC-5, Anton Ertl wrote:

> > 1) Thread creation and destruction should be cheap.

> Depends on what you mean by cheap:: 1-cycle cheap is vastly
> different than 1,000 cycle cheap.

Now that is just a totally unfair criticism. Why couldn't he have
meant by "cheap" the following: sufficiently cheap to actually be
usefully cheap in the context of the issue in question?

Leaving the detail of how many cycles that might be for later.

John Savard

Re: Someone's Trying Again (Ascenium)

<7c38bf05-df09-42f8-ab66-06b4cb5d8e85n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a37:9244:: with SMTP id u65mr21506844qkd.46.1626643397652;
Sun, 18 Jul 2021 14:23:17 -0700 (PDT)
X-Received: by 2002:a05:6830:929:: with SMTP id v41mr5000787ott.16.1626643397407;
Sun, 18 Jul 2021 14:23:17 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sun, 18 Jul 2021 14:23:17 -0700 (PDT)
In-Reply-To: <cc2717d9-9311-4182-83a3-e8d3b70319b2n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:c414:6046:92b1:a701;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:c414:6046:92b1:a701
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me> <sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com> <2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at> <84bda4ad-5c78-44e1-9952-03ec38cf7cadn@googlegroups.com>
<cc2717d9-9311-4182-83a3-e8d3b70319b2n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <7c38bf05-df09-42f8-ab66-06b4cb5d8e85n@googlegroups.com>
Subject: Re: Someone's Trying Again (Ascenium)
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Sun, 18 Jul 2021 21:23:17 +0000
Content-Type: text/plain; charset="UTF-8"
 by: MitchAlsup - Sun, 18 Jul 2021 21:23 UTC

On Sunday, July 18, 2021 at 4:10:03 PM UTC-5, Quadibloc wrote:
> On Sunday, July 18, 2021 at 11:03:58 AM UTC-6, MitchAlsup wrote:
> > On Sunday, July 18, 2021 at 11:47:49 AM UTC-5, Anton Ertl wrote:
>
> > > 1) Thread creation and destruction should be cheap.
>
> > Depends on what you mean by cheap:: 1-cycle cheap is vastly
> > different than 1,000 cycle cheap.
<
> Now that is just a totally unfair criticism. Why couldn't he have
> meant by "cheap" the following: sufficiently cheap to actually be
> usefully cheap in the context of the issue in question?
<
I did the HEP thread creation and deletion software.
<
I had a task sitting by collecting threads which died, and a thread
arranging a thread from a pool and getting it ready should anyone
need a new thread created. I could create a new thread for a given
task in 12 instructions. I considered this fast.
<
GPUs have a block of logic that allocate up to 32 threads to a WARP
and can perform this bundling operation every 4 cycles. I consider this
fast.
<
Your typical CPU performs excel() in a handful of thousands of cycles
(after you consider all of the copy on write semantics it may be even
worse.) I do not consider this fast. I have no idea as to how many cycles
are consumed tearing apart such a task.
<
Your typical CPU performs thread creations in on the order of 1,000
instructions. I do not consider these fast, either. I have no idea whether
this includes (or excludes) thread tear-down, either.
>
> Leaving the detail of how many cycles that might be for later.
>
> John Savard

Re: Someone's Trying Again (Ascenium)

<sd27j4$fsi$1@newsreader4.netcologne.de>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Sun, 18 Jul 2021 21:48:20 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <sd27j4$fsi$1@newsreader4.netcologne.de>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me>
<sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com>
<2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at>
<84bda4ad-5c78-44e1-9952-03ec38cf7cadn@googlegroups.com>
Injection-Date: Sun, 18 Jul 2021 21:48:20 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:a40:0:7285:c2ff:fe6c:992d";
logging-data="16274"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Sun, 18 Jul 2021 21:48 UTC

MitchAlsup <MitchAlsup@aol.com> schrieb:

> By design VVM vectorizes inner loops--this is where the biggest bang for
> the buck is found, and punts entirely on outer loops and whole programs.

I know exactly one example of time-critical real-time code where
the inner loop is quite cold (well, it's quite a few examples,
but the pattern is always the same).

This occurs in array processing if the code in question has to
know a number of dimensions that is unknown at compile-time.
The library function is then given a list of exents along each
dimension.

The algorithm works like an old-style mechanical odometer, or a
ripple-carry incrementer (with a different base for each digit).
In C, it is (slighly shortened from gfortran's library). base is
the pointer for the next iteration of something to do, count the
array which shows how far progress has been made along one dimension,
and extent gives the number of elements along each dimension.

n = 0;
do
{
/* When we get to the end of a dimension, reset it and increment
the next dimension. */
count[n] = 0;
base -= sstride[n] * extent[n];
n++;
if (n >= rank)
return;
else
{
count[n]++;
base += sstride[n];
}
} while (count[n] == extent[n]);
}

This do while loop is executed only once for most cases, but once
it has reached the end of one dimension, it will be executed more
than once, leading to (probable) branch mispredicts.

It's time-critical because... well, almost all Fortran array
intrinsics run through this kind of code (matmul doesn't :-)

Re: Someone's Trying Again (Ascenium)

<sd34p9$gpv$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: m.del...@this.bitsnbites.eu (Marcus)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Mon, 19 Jul 2021 08:06:33 +0200
Organization: A noiseless patient Spider
Lines: 52
Message-ID: <sd34p9$gpv$1@dont-email.me>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me>
<sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com>
<2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at>
<84bda4ad-5c78-44e1-9952-03ec38cf7cadn@googlegroups.com>
<cc2717d9-9311-4182-83a3-e8d3b70319b2n@googlegroups.com>
<7c38bf05-df09-42f8-ab66-06b4cb5d8e85n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 19 Jul 2021 06:06:33 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="7adfa040958caed31940ea1d97f73a2a";
logging-data="17215"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18UkHtkhzuaFnvBq7QGc+ff3k05op+D0Fs="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:q8erHAFWFn7FfV+QLfVlh8KPs+4=
In-Reply-To: <7c38bf05-df09-42f8-ab66-06b4cb5d8e85n@googlegroups.com>
Content-Language: en-US
 by: Marcus - Mon, 19 Jul 2021 06:06 UTC

On 2021-07-18, MitchAlsup wrote:
> On Sunday, July 18, 2021 at 4:10:03 PM UTC-5, Quadibloc wrote:
>> On Sunday, July 18, 2021 at 11:03:58 AM UTC-6, MitchAlsup wrote:
>>> On Sunday, July 18, 2021 at 11:47:49 AM UTC-5, Anton Ertl wrote:
>>
>>>> 1) Thread creation and destruction should be cheap.
>>
>>> Depends on what you mean by cheap:: 1-cycle cheap is vastly
>>> different than 1,000 cycle cheap.
> <
>> Now that is just a totally unfair criticism. Why couldn't he have
>> meant by "cheap" the following: sufficiently cheap to actually be
>> usefully cheap in the context of the issue in question?
> <
> I did the HEP thread creation and deletion software.
> <
> I had a task sitting by collecting threads which died, and a thread
> arranging a thread from a pool and getting it ready should anyone
> need a new thread created. I could create a new thread for a given
> task in 12 instructions. I considered this fast.
> <
> GPUs have a block of logic that allocate up to 32 threads to a WARP
> and can perform this bundling operation every 4 cycles. I consider this
> fast.
> <
> Your typical CPU performs excel() in a handful of thousands of cycles
> (after you consider all of the copy on write semantics it may be even
> worse.) I do not consider this fast. I have no idea as to how many cycles
> are consumed tearing apart such a task.
> <
> Your typical CPU performs thread creations in on the order of 1,000
> instructions. I do not consider these fast, either. I have no idea whether
> this includes (or excludes) thread tear-down, either.

Some hard numbers on thread and process creation + tear-down on
different machines and OS:es:

https://www.bitsnbites.eu/benchmarking-os-primitives/

The fastest machines (Linux) do create + tear-down in just less than
10 us. On a 3 GHz CPU that corresponds to about 20,000 - 30,000
clock cycles. Please note that it includes all the layers of pthread and
OS thread initialization.

On Windows (same machine), the figure is 3-4 times worse.

This is the reason that when you need instant threads, you set up a
thread pool of dormant threads instead of spawning a new OS thread
every time you need one. I personally consider that an ugly work-around
for inefficient thread creation.

/Marcus

Re: Someone's Trying Again (Ascenium)

<sd365i$12a$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: m.del...@this.bitsnbites.eu (Marcus)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Mon, 19 Jul 2021 08:30:10 +0200
Organization: A noiseless patient Spider
Lines: 47
Message-ID: <sd365i$12a$1@dont-email.me>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me>
<sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com>
<2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at>
<4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 19 Jul 2021 06:30:10 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="7adfa040958caed31940ea1d97f73a2a";
logging-data="1098"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+eSpnRTpt//JmTSJSgWwBW2pd5bU/TaCY="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:Cfu12XYUOFwVVK7fnMaSvXeNeyM=
In-Reply-To: <4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com>
Content-Language: en-US
 by: Marcus - Mon, 19 Jul 2021 06:30 UTC

On 2021-07-18, George Neuner wrote:
> On Sun, 18 Jul 2021 15:55:24 GMT, anton@mips.complang.tuwien.ac.at
> (Anton Ertl) wrote:
>
>> George Neuner <gneuner2@comcast.net> writes:
>>
>>> The problem - at least with current hardware - is that programmers are
>>> much better at identifying what CAN be done in parallel than what
>>> SHOULD be done in parallel.
>>
>> You make it sound as if that's a problem with the programmers, not
>> with the hardware. But it's fundamental to programming (at least in
>> areas affected by the software crisis, i.e., not supercomputers), so
>> it has to be solved at the system level (i.e., hardware, compiler,
>> etc.).
>
> It /IS/ a problem with the programmers. The average "developer" now
> has no CS, engineering, or (advanced) mathematics education, and their
> programming skills are pitiful - only slightly above "script kiddie".
> This is an unfortunate fact of life that I think too often is lost on
> some denizens of this group.
>

I would guess that the majority of programmers today do not even reflect
over the difference in computational effort (as in number of CPU cycles
required) for the following lines of code (Python):

1) foo = 39+3

2) foo = f'The answer is {39+3}'

3) foo = requests.get('https://en.wikipedia.org/wiki/42')

After all, it's just a single line of code...

I remember the first time I wrote a 6502 assembler language loop on my
C=64: The program changed the character value of the upper left
character of the screen a few hundred times (probably 255), and at first
I thought I had made an error because I only saw the final character,
not the other hundreds of characters, until it dawned on me:

"It's THAT fast!"

I doubt that many programmers these days have these moments when they
actually understand how fast a computer really is.

/Marcus

Re: Someone's Trying Again (Ascenium)

<sd36ng$474$1@newsreader4.netcologne.de>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Mon, 19 Jul 2021 06:39:44 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <sd36ng$474$1@newsreader4.netcologne.de>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me>
<sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com>
<2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at>
<4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com> <sd365i$12a$1@dont-email.me>
Injection-Date: Mon, 19 Jul 2021 06:39:44 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:a40:0:7285:c2ff:fe6c:992d";
logging-data="4324"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Mon, 19 Jul 2021 06:39 UTC

Marcus <m.delete@this.bitsnbites.eu> schrieb:

> I remember the first time I wrote a 6502 assembler language loop on my
> C=64: The program changed the character value of the upper left
> character of the screen a few hundred times (probably 255), and at first
> I thought I had made an error because I only saw the final character,
> not the other hundreds of characters, until it dawned on me:
>
> "It's THAT fast!"
>
> I doubt that many programmers these days have these moments when they
> actually understand how fast a computer really is.

I certainly had a moment when I understood how much faster computers
had become.

It was a little problem to find four prices (i.e. decimal numbers
with a maximum of two digits after the decimal separator) a,b,c,d
so that a*b*c*d = a+b+c+d = 7.47 .

On a C 64 using Basic, months to hours depending on the cleverness
of the algorithm.

On a modern computer using a compiled language, too fast to notice
even when choosing a rather stupid algorithm.

Re: Someone's Trying Again (Ascenium)

<159032eb-f148-41b6-ae95-daae38bb2d5fn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ac8:7f01:: with SMTP id f1mr20879119qtk.362.1626682082007;
Mon, 19 Jul 2021 01:08:02 -0700 (PDT)
X-Received: by 2002:a05:6830:3109:: with SMTP id b9mr3667321ots.276.1626682081789;
Mon, 19 Jul 2021 01:08:01 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Mon, 19 Jul 2021 01:08:01 -0700 (PDT)
In-Reply-To: <sd36ng$474$1@newsreader4.netcologne.de>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fa3c:a000:6437:2f3c:fd50:a217;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fa3c:a000:6437:2f3c:fd50:a217
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me> <sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com> <2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at> <4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com>
<sd365i$12a$1@dont-email.me> <sd36ng$474$1@newsreader4.netcologne.de>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <159032eb-f148-41b6-ae95-daae38bb2d5fn@googlegroups.com>
Subject: Re: Someone's Trying Again (Ascenium)
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Mon, 19 Jul 2021 08:08:01 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Quadibloc - Mon, 19 Jul 2021 08:08 UTC

On Monday, July 19, 2021 at 12:39:46 AM UTC-6, Thomas Koenig wrote:

> It was a little problem to find four prices (i.e. decimal numbers
> with a maximum of two digits after the decimal separator) a,b,c,d
> so that a*b*c*d = a+b+c+d = 7.47 .

I see that seven hundred and forty-seven is divisible by nine.

Perhaps that leaves open the possibility of a solution.

I suppose the problem was phrased something like this:

A clerk at a grocery store, when adding up the prices of
four items, accidentally pressed the multiplication key
by mistake. But when he repeated the calculation correctly,
he got exactly the same answer. What were the prices of
the four items, which totalled to $7.47?

7.47 is 2.49 times 3, or 0.83 times 9.

2.49 * 1.50 * 2.00 * 1.00 doesn't add up to anything
with a 7 on the end.

0.83 * 2.25 * 4.00 * 1.00 when added up ends in an 8,
not in a 7.

Hmm. 7.47 minus 2.49 is 4.98. What could add to 4.98
and yet multiply to 3?

Or, 7.47 minus 0.83 is 6.64. What could add to 6.64, and
multiply to 9?

9 is 3 * 3, or 4.5 * 2, or 2.25 * 4. Or it is 1.8 * 5. Or 3.6 * 2.5.
Or 7.2 times 1.25. Or 1.44 times 6.25.

1.25 is 0.25 times 5. 6.25 is 1.25 times 5.

0.05 + 1.25 + 1.44 + 0.83 would end in a 7.

But it would add up to 3.57 and multiply to .0747, so
that's clearly not the answer.

Quite a puzzling problem.

John Savard

Re: Someone's Trying Again (Ascenium)

<bff1888c-ea37-4dfd-b1cc-29dcb8b1c8bdn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:620a:101a:: with SMTP id z26mr23214045qkj.261.1626682343446;
Mon, 19 Jul 2021 01:12:23 -0700 (PDT)
X-Received: by 2002:a9d:7f14:: with SMTP id j20mr17038934otq.82.1626682343242;
Mon, 19 Jul 2021 01:12:23 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Mon, 19 Jul 2021 01:12:23 -0700 (PDT)
In-Reply-To: <159032eb-f148-41b6-ae95-daae38bb2d5fn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fa3c:a000:6437:2f3c:fd50:a217;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fa3c:a000:6437:2f3c:fd50:a217
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me> <sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com> <2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at> <4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com>
<sd365i$12a$1@dont-email.me> <sd36ng$474$1@newsreader4.netcologne.de> <159032eb-f148-41b6-ae95-daae38bb2d5fn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <bff1888c-ea37-4dfd-b1cc-29dcb8b1c8bdn@googlegroups.com>
Subject: Re: Someone's Trying Again (Ascenium)
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Mon, 19 Jul 2021 08:12:23 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Quadibloc - Mon, 19 Jul 2021 08:12 UTC

On Monday, July 19, 2021 at 2:08:03 AM UTC-6, Quadibloc wrote:
> On Monday, July 19, 2021 at 12:39:46 AM UTC-6, Thomas Koenig wrote:
>
> > It was a little problem to find four prices (i.e. decimal numbers
> > with a maximum of two digits after the decimal separator) a,b,c,d
> > so that a*b*c*d = a+b+c+d = 7.47 .
> I see that seven hundred and forty-seven is divisible by nine.
>
> Perhaps that leaves open the possibility of a solution.
>
> I suppose the problem was phrased something like this:
>
> A clerk at a grocery store, when adding up the prices of
> four items, accidentally pressed the multiplication key
> by mistake. But when he repeated the calculation correctly,
> he got exactly the same answer. What were the prices of
> the four items, which totalled to $7.47?
>
> 7.47 is 2.49 times 3, or 0.83 times 9.
>
> 2.49 * 1.50 * 2.00 * 1.00 doesn't add up to anything
> with a 7 on the end.
>
> 0.83 * 2.25 * 4.00 * 1.00 when added up ends in an 8,
> not in a 7.
>
> Hmm. 7.47 minus 2.49 is 4.98. What could add to 4.98
> and yet multiply to 3?
>
> Or, 7.47 minus 0.83 is 6.64. What could add to 6.64, and
> multiply to 9?
>
> 9 is 3 * 3, or 4.5 * 2, or 2.25 * 4. Or it is 1.8 * 5. Or 3.6 * 2.5.
> Or 7.2 times 1.25. Or 1.44 times 6.25.
>
> 1.25 is 0.25 times 5. 6.25 is 1.25 times 5.
>
> 0.05 + 1.25 + 1.44 + 0.83 would end in a 7.
>
> But it would add up to 3.57 and multiply to .0747, so
> that's clearly not the answer.
>
> Quite a puzzling problem.

Attempting to Google the problem and presumably its
solution, I found this:

https://math.stackexchange.com/questions/66302/4-items-add-up-to-and-multiply-to-7-11-what-are-the-value-of-the-items

Apparently the actual total was $7.11 rather than $7.47, which, of course,
fits with the name of a popular convenience store.

John Savard

Re: Someone's Trying Again (Ascenium)

<sd3cfd$5fs$1@gioia.aioe.org>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!aioe.org!uNkxFD/dgvFUE+WUQcvYbA.user.46.165.242.91.POSTED!not-for-mail
From: terje.ma...@tmsw.no (Terje Mathisen)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Mon, 19 Jul 2021 10:17:48 +0200
Organization: Aioe.org NNTP Server
Message-ID: <sd3cfd$5fs$1@gioia.aioe.org>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me>
<sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com>
<2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at>
<4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com> <sd365i$12a$1@dont-email.me>
<sd36ng$474$1@newsreader4.netcologne.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="5628"; posting-host="uNkxFD/dgvFUE+WUQcvYbA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101
Firefox/60.0 SeaMonkey/2.53.8
X-Notice: Filtered by postfilter v. 0.9.2
 by: Terje Mathisen - Mon, 19 Jul 2021 08:17 UTC

Thomas Koenig wrote:
> Marcus <m.delete@this.bitsnbites.eu> schrieb:
>
>> I remember the first time I wrote a 6502 assembler language loop on my
>> C=64: The program changed the character value of the upper left
>> character of the screen a few hundred times (probably 255), and at first
>> I thought I had made an error because I only saw the final character,
>> not the other hundreds of characters, until it dawned on me:
>>
>> "It's THAT fast!"
>>
>> I doubt that many programmers these days have these moments when they
>> actually understand how fast a computer really is.
>
> I certainly had a moment when I understood how much faster computers
> had become.
>
> It was a little problem to find four prices (i.e. decimal numbers
> with a maximum of two digits after the decimal separator) a,b,c,d
> so that a*b*c*d = a+b+c+d = 7.47 .
>
> On a C 64 using Basic, months to hours depending on the cleverness
> of the algorithm.
>
> On a modern computer using a compiled language, too fast to notice
> even when choosing a rather stupid algorithm.
>
Hmmm.

None of them can be zero or negative, so by specifying that a,b,c,d is
in increasing order, a can be in the range 0.01 to 7.47/4=1.86.
b has a slightly larger possible range (0.01 to (7.47-a)/3), the same
for c (0.01 to (7.47-a-b)/2), while d is always (7.47-a-b-c).

(I would do this all in cents of course!)

This should be ~200^3 so 8M iterations, doable in a small fraction of a
second.

Next insight is the fact that the cents values must be such that 6 of
the 8 multiplication decimals end up as zero, i.e. the last digits of
each price must have a lot of '0', '2' or '5', I suspect this reduces
the search space by at least an order of magnitude?

Terje

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

Re: Someone's Trying Again (Ascenium)

<sd3cn6$4sj$1@gioia.aioe.org>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!aioe.org!ux6ld97kLXxG8kVFFLnoWg.user.46.165.242.75.POSTED!not-for-mail
From: chris.m....@gmail.com (Chris M. Thomasson)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Mon, 19 Jul 2021 01:21:58 -0700
Organization: Aioe.org NNTP Server
Message-ID: <sd3cn6$4sj$1@gioia.aioe.org>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<9b868d91-8bb9-41b8-ba0d-a02aceeb888dn@googlegroups.com>
<965reg99lceigruerfmu9e2f94v511p6eq@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="5011"; posting-host="ux6ld97kLXxG8kVFFLnoWg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
Thunderbird/78.12.0
Content-Language: en-US
X-Notice: Filtered by postfilter v. 0.9.2
 by: Chris M. Thomasson - Mon, 19 Jul 2021 08:21 UTC

On 7/13/2021 6:31 AM, George Neuner wrote:
> On Mon, 12 Jul 2021 15:28:23 -0700 (PDT), "luke.l...@gmail.com"
> <luke.leighton@gmail.com> wrote:
>
>> On Monday, July 12, 2021 at 10:17:29 PM UTC+1, Quadibloc wrote:
>>
>>> about an attempt to design a processor that does away with instruction
>>> sets and all those instructions that just move data around.
>>
>> reminds me of Elixent's stuff. they did NSEW neighbour processing.
>> fascinating design: 4-bit ALUs. tens of thousands of them. programming
>> this style of processor is an absolute pig.
>>
>> l.
>
> Dunno. I programmed Connection Machines. Admittedly a problem had to
> be embarrassingly parallel to fit with the hardware ... but given
> that, the CM was quite easy to work with.

Has anybody here programmed for a sicortex?

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

Re: Someone's Trying Again (Ascenium)

<sd3mhr$dtd$1@newsreader4.netcologne.de>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!aioe.org!news.uzoreto.com!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Mon, 19 Jul 2021 11:09:47 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <sd3mhr$dtd$1@newsreader4.netcologne.de>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me>
<sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com>
<2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at>
<4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com> <sd365i$12a$1@dont-email.me>
<sd36ng$474$1@newsreader4.netcologne.de>
<159032eb-f148-41b6-ae95-daae38bb2d5fn@googlegroups.com>
<bff1888c-ea37-4dfd-b1cc-29dcb8b1c8bdn@googlegroups.com>
Injection-Date: Mon, 19 Jul 2021 11:09:47 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:a40:0:7285:c2ff:fe6c:992d";
logging-data="14253"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Mon, 19 Jul 2021 11:09 UTC

Quadibloc <jsavard@ecn.ab.ca> schrieb:

> Attempting to Google the problem and presumably its
> solution, I found this:
>
> https://math.stackexchange.com/questions/66302/4-items-add-up-to-and-multiply-to-7-11-what-are-the-value-of-the-items
>
> Apparently the actual total was $7.11 rather than $7.47,

In the computer magazine I read this puzzle ("Chip"), it was
actually 7,47 DM. And the issue must have been around October or
November of that year.

7-11 was not a common number combination in Germany in 1986,
but the same puzzle can be set up with many different results.

> which, of course,
> fits with the name of a popular convenience store.

I suspect they chose it for recognition value of the airplane type
(and, of course, the uniqueness of the solution). I would post
it, but rot13 does not work for numbers :-)

Maybe the original was with 7-11. Source prior to 1986, anybody?

Re: Someone's Trying Again (Ascenium)

<sd3riq$hrv$1@newsreader4.netcologne.de>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Mon, 19 Jul 2021 12:35:38 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <sd3riq$hrv$1@newsreader4.netcologne.de>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me>
<sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com>
<2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at>
<4sn8fgdkf0lp67fopmc0ddb395s1jd1sh3@4ax.com> <sd365i$12a$1@dont-email.me>
<sd36ng$474$1@newsreader4.netcologne.de> <sd3cfd$5fs$1@gioia.aioe.org>
Injection-Date: Mon, 19 Jul 2021 12:35:38 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:a40:0:7285:c2ff:fe6c:992d";
logging-data="18303"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Mon, 19 Jul 2021 12:35 UTC

Terje Mathisen <terje.mathisen@tmsw.no> schrieb:
> Thomas Koenig wrote:

>> It was a little problem to find four prices (i.e. decimal numbers
>> with a maximum of two digits after the decimal separator) a,b,c,d
>> so that a*b*c*d = a+b+c+d = 7.47 .
>>
>> On a C 64 using Basic, months to hours depending on the cleverness
>> of the algorithm.
>>
>> On a modern computer using a compiled language, too fast to notice
>> even when choosing a rather stupid algorithm.
>>
> Hmmm.
>
> None of them can be zero or negative, so by specifying that a,b,c,d is
> in increasing order, a can be in the range 0.01 to 7.47/4=1.86.
> b has a slightly larger possible range (0.01 to (7.47-a)/3), the same
> for c (0.01 to (7.47-a-b)/2), while d is always (7.47-a-b-c).
>
> (I would do this all in cents of course!)
>
> This should be ~200^3 so 8M iterations, doable in a small fraction of a
> second.

That's a pretty good guess, going through three variables i <=
j <= k and setting m = 7-i-j-k, while removing duplicates setting
the bounds so that k <= m, gives around 2.9e6 iterations.

> Next insight is the fact that the cents values must be such that 6 of
> the 8 multiplication decimals end up as zero, i.e. the last digits of
> each price must have a lot of '0', '2' or '5', I suspect this reduces
> the search space by at least an order of magnitude?

In the evening that we (myself, plus some people in the same
flat) solved this on a C-64, we spent a few hours making these
simplifications. Tt more tricky because, as soon as you start
making assumptions about the divisibility, you have to make sure
not to lose cases with one variable being smaller than another.

Re: Someone's Trying Again (Ascenium)

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

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: monn...@iro.umontreal.ca (Stefan Monnier)
Newsgroups: comp.arch
Subject: Re: Someone's Trying Again (Ascenium)
Date: Mon, 19 Jul 2021 09:08:28 -0400
Organization: A noiseless patient Spider
Lines: 16
Message-ID: <jwvr1fu8nu8.fsf-monnier+comp.arch@gnu.org>
References: <8945b42b-133f-4ba7-a8a7-de165de183c4n@googlegroups.com>
<scjnv6$jq7$1@dont-email.me> <scjt80$mtc$1@dont-email.me>
<sck00m$a4r$1@dont-email.me>
<f4c3383d-f709-4662-a43d-5ec556e0df49n@googlegroups.com>
<2cg0fgttpehhb2aeaimsc9359f5llskhcq@4ax.com>
<2021Jul18.175524@mips.complang.tuwien.ac.at>
<84bda4ad-5c78-44e1-9952-03ec38cf7cadn@googlegroups.com>
<cc2717d9-9311-4182-83a3-e8d3b70319b2n@googlegroups.com>
<7c38bf05-df09-42f8-ab66-06b4cb5d8e85n@googlegroups.com>
<sd34p9$gpv$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: reader02.eternal-september.org; posting-host="bc8e015e61a38f48df1dea9ae17f7b0e";
logging-data="16857"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18X2MfHFBhvQom0/712+nr3"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)
Cancel-Lock: sha1:EAawJvd8Kxi/soyI+GGjW04Z5qY=
sha1:PdXpQSac0VXNuUW45gFzyfEGK+U=
 by: Stefan Monnier - Mon, 19 Jul 2021 13:08 UTC

> This is the reason that when you need instant threads, you set up a
> thread pool of dormant threads instead of spawning a new OS thread
> every time you need one. I personally consider that an ugly work-around
> for inefficient thread creation.

Part of the problem is linked to the precise meaning of "thread" (as in
whether or not you care about all the different features offered for
threads by the OS) and the devil in the details.

Also "instant threads" is still a lie for thread created from a thread
pool of dormant threads, so it would be valuable to have benchmark
numbers to see whether those are closer to "0 cycles" or to "1000
cycle".

Stefan

Pages:12345
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor