Rocksolid Light

Welcome to Rocksolid Light

mail  files  register  newsreader  groups  login

Message-ID:  

It's currently a problem of access to gigabits through punybaud. -- J. C. R. Licklider


devel / comp.arch / Misc: Design tradeoffs in virtual memory systems...

SubjectAuthor
* Misc: Design tradeoffs in virtual memory systems...BGB
+* Re: Misc: Design tradeoffs in virtual memory systems...Scott Lurndal
|+- Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|+* Re: Misc: Design tradeoffs in virtual memory systems...BGB
||+* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|||`* Re: Misc: Design tradeoffs in virtual memory systems...BGB
||| `- Re: Misc: Design tradeoffs in virtual memory systems...Scott Lurndal
||`* Re: Misc: Design tradeoffs in virtual memory systems...Scott Lurndal
|| +* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |`* Re: Misc: Design tradeoffs in virtual memory systems...Scott Lurndal
|| | `* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  +* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  |+* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||`* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  || `* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||  +* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||  |+- Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||  |+* Re: Misc: Design tradeoffs in virtual memory systems...Terje Mathisen
|| |  ||  ||`- Re: Misc: Design tradeoffs in virtual memory systems...Paul A. Clayton
|| |  ||  |+* Re: Misc: Design tradeoffs in virtual memory systems...EricP
|| |  ||  ||`* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||  || `* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||  ||  `* Re: Misc: Design tradeoffs in virtual memory systems...robf...@gmail.com
|| |  ||  ||   `* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||  ||    +* Re: Misc: Design tradeoffs in virtual memory systems...Paul A. Clayton
|| |  ||  ||    |+* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||  ||    ||`* Re: Misc: Design tradeoffs in virtual memory systems...Paul A. Clayton
|| |  ||  ||    || `* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||  ||    ||  `* Re: Misc: Design tradeoffs in virtual memory systems...Paul A. Clayton
|| |  ||  ||    ||   +* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||  ||    ||   |+- Re: Misc: Design tradeoffs in virtual memory systems...robf...@gmail.com
|| |  ||  ||    ||   |`- Re: Misc: Design tradeoffs in virtual memory systems...Paul A. Clayton
|| |  ||  ||    ||   +* Re: Misc: Design tradeoffs in virtual memory systems...Anton Ertl
|| |  ||  ||    ||   |+- Re: Misc: Design tradeoffs in virtual memory systems...Scott Lurndal
|| |  ||  ||    ||   |`- Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  ||  ||    ||   `* Re: Misc: Design tradeoffs in virtual memory systems...EricP
|| |  ||  ||    ||    `* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||  ||    ||     `- Re: Misc: Design tradeoffs in virtual memory systems...EricP
|| |  ||  ||    |+- Re: Misc: Design tradeoffs in virtual memory systems...EricP
|| |  ||  ||    |`- Re: Misc: Design tradeoffs in virtual memory systems...Scott Lurndal
|| |  ||  ||    +* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||  ||    |+- Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||  ||    |`- Re: Misc: Design tradeoffs in virtual memory systems...Paul A. Clayton
|| |  ||  ||    `- Re: Misc: Design tradeoffs in virtual memory systems...EricP
|| |  ||  |+- Re: Misc: Design tradeoffs in virtual memory systems...Ivan Godard
|| |  ||  |`- Re: Misc: Design tradeoffs in virtual memory systems...Paul A. Clayton
|| |  ||  `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  ||   `* Re: Misc: Design tradeoffs in virtual memory systems...Anton Ertl
|| |  ||    +* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||    |`- Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||    `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  ||     +* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||     |+* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||     ||`- Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||     |`- Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  ||     `* Re: Misc: Design tradeoffs in virtual memory systems...Paul A. Clayton
|| |  ||      `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  ||       `* Re: Misc: Design tradeoffs in virtual memory systems...Ivan Godard
|| |  ||        +- Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  ||        `* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||         +* Re: Misc: Design tradeoffs in virtual memory systems...Stephen Fuld
|| |  ||         |+* Re: Misc: Design tradeoffs in virtual memory systems...robf...@gmail.com
|| |  ||         ||`- Re: Misc: Design tradeoffs in virtual memory systems...Stephen Fuld
|| |  ||         |`* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||         | `- Re: Misc: Design tradeoffs in virtual memory systems...Stephen Fuld
|| |  ||         `* Re: Misc: Design tradeoffs in virtual memory systems...Ivan Godard
|| |  ||          +- Re: Misc: Design tradeoffs in virtual memory systems...Thomas Koenig
|| |  ||          `* Re: Misc: Design tradeoffs in virtual memory systems...Paul A. Clayton
|| |  ||           `* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||            `* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  ||             `* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  ||              +* Re: Misc: Design tradeoffs in virtual memory systems...Scott Lurndal
|| |  ||              |`- Re: Misc: Design tradeoffs in virtual memory systems...Thomas Koenig
|| |  ||              `- Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  |`* Re: Misc: Design tradeoffs in virtual memory systems...Scott Lurndal
|| |  | `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  |  `* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  |   `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  |    `* Re: Misc: Design tradeoffs in virtual memory systems...BGB-Alt
|| |  |     `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  |      `* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  |       `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  |        `* Re: Misc: Design tradeoffs in virtual memory systems...BGB-Alt
|| |  |         `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  |          `* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  |           +- Re: Misc: Design tradeoffs in virtual memory systems...Scott Lurndal
|| |  |           +* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  |           |`- Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  |           +* Re: Misc: Design tradeoffs in virtual memory systems...John Levine
|| |  |           |`- Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
|| |  |           `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  |            `* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  |             +- Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  |             `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  |              `* Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  |               `* Re: Misc: Design tradeoffs in virtual memory systems...Dan Cross
|| |  |                `- Re: Misc: Design tradeoffs in virtual memory systems...BGB
|| |  `- Re: Misc: Design tradeoffs in virtual memory systems...Scott Lurndal
|| `* Re: Misc: Design tradeoffs in virtual memory systems...Tim Rentsch
||  +- Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
||  `* Re: Misc: Design tradeoffs in virtual memory systems...John Levine
|`* Re: Misc: Design tradeoffs in virtual memory systems...Thomas Koenig
+* Re: Misc: Design tradeoffs in virtual memory systems...MitchAlsup
`* Re: Misc: Design tradeoffs in virtual memory systems...Anton Ertl

Pages:12345678
Re: Misc: Design tradeoffs in virtual memory systems...

<u55s8r$mmj$1@reader1.panix.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32494&group=comp.arch#32494

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!panix!.POSTED.spitfire.i.gajendra.net!not-for-mail
From: cross@spitfire.i.gajendra.net (Dan Cross)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Tue, 30 May 2023 22:10:35 -0000 (UTC)
Organization: PANIX Public Access Internet and UNIX, NYC
Message-ID: <u55s8r$mmj$1@reader1.panix.com>
References: <u4por8$3tugb$1@dont-email.me> <u55c48$226ac$1@dont-email.me> <u55jsp$7kt$1@reader1.panix.com> <u55psg$23uqp$1@dont-email.me>
Injection-Date: Tue, 30 May 2023 22:10:35 -0000 (UTC)
Injection-Info: reader1.panix.com; posting-host="spitfire.i.gajendra.net:166.84.136.80";
logging-data="23251"; mail-complaints-to="abuse@panix.com"
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: cross@spitfire.i.gajendra.net (Dan Cross)
 by: Dan Cross - Tue, 30 May 2023 22:10 UTC

In article <u55psg$23uqp$1@dont-email.me>,
BGB-Alt <bohannonindustriesllc@gmail.com> wrote:
>On 5/30/2023 2:47 PM, Dan Cross wrote:
>> In article <u55c48$226ac$1@dont-email.me>, BGB <cr88192@gmail.com> wrote:
>>> I also mentioned that for all this I was *not* talking about an ISA for
>>> servers or data-centers, or even PC class systems, but was instead
>>> mostly focusing on embedded systems.
>>
>> Yup. Which seemed very odd when you posted things like this:
>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/qhN0N1_nAQAJ
>> in which you said,
>>
>> |Software cost is usually considered "virtually free" in comparison to
>> |hardware. So what if the virtual memory subsystem needs a few more kB
>> |due to a more complex hardware interface?, ...
>> |
>> |Would care more about performance if my benchmarks showed it "actually
>> |mattered" in terms of macro-scale performance.
>>
>> If, as you acknowledge, you aren't familiar with the problem
>> space, why make such statements?
>
>I have implemented virtual memory subsystems, and virtual memory *does*
>matter to some extent in my use-cases.

Yes, but we were talking about server workloads. I'm fairly
certain we made that clear.

>There is also a difference between "claiming to be an expert" and "not
>knowing anything whatsoever".

I never said you don't know anything whatsoever. I said you
would do well not to assume that you know more than you do; this
advice is universal.

>Just not to the extent that one needs to care about how its performance
>scales to something like a server or data-center.
>
>Think something with say 128 or 256 MB of RAM.
>Not kB, and not GB.

When I started out, we could fit 30-40 interactive timesharing
users on a VAX 8550 with 32 MiB of RAM, and departmental file
servers had about 128MiB of RAM. We cared very much how
performance scaled on such systems.

>You may still have a few GB of virtual address space though (and a few
>GB of pagefile).

You keep talking about paging to secondary storage; you brought
that up in alt.os.development and are talking about it again.
It seems entirely irrelevant.

>There are plenty of embedded systems where one still has a need for
>virtual memory.
>
>But, also ones where it may make sense to directly map things to
>underlying pages (without going through the pagefile), and to run
>multiple programs in a shared address space, etc.

I don't know why you keep talking about "the pagefile". Do you
think that use of a "pagefile" is necessary for using paged
virtual memory and hardware page tables?

>> Or when you said,
>>
>> |Most would not likely consider needing to use a few additional lookup
>> |tables or similar to be a significant issue.
>>
>> here:
>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/D3kUmGxHBgAJ
>>
>> even though we'd been telling you that it _did_ matter?
>
>ASID remapping tables still don't necessarily imply server or
>data-center workloads.

Again, that was the context; specifically, we were talking about
hypervisors. This was explained to you. You disagreed. Near
as I can tell, you don't have much relevant experience or
theoretical background on which to base such disagreement.

>They also don't necessarily mean that I am overly concerned with shaving
>a few kB off the OS kernel, nor are things "totally wrecked" by how many
>clock-cycles are spent in the TLB Miss ISR (within reason).

If you want to build an ISA for embedded applications with the
set of properties that you have implemented, have at it. But
recognize what, exactly, it actually is.

- Dan C.

Re: Misc: Design tradeoffs in virtual memory systems...

<b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32495&group=comp.arch#32495

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:622a:413:b0:3f4:e3d3:f8ff with SMTP id n19-20020a05622a041300b003f4e3d3f8ffmr991347qtx.4.1685488163322;
Tue, 30 May 2023 16:09:23 -0700 (PDT)
X-Received: by 2002:a05:6870:71b:b0:19f:57e3:3e3 with SMTP id
ea27-20020a056870071b00b0019f57e303e3mr1210891oab.3.1685488162999; Tue, 30
May 2023 16:09:22 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!panix!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Tue, 30 May 2023 16:09:22 -0700 (PDT)
In-Reply-To: <u55s8r$mmj$1@reader1.panix.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:8959:df26:8ecb:85d2;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:8959:df26:8ecb:85d2
References: <u4por8$3tugb$1@dont-email.me> <u55c48$226ac$1@dont-email.me>
<u55jsp$7kt$1@reader1.panix.com> <u55psg$23uqp$1@dont-email.me> <u55s8r$mmj$1@reader1.panix.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
From: MitchAlsup@aol.com (MitchAlsup)
Injection-Date: Tue, 30 May 2023 23:09:23 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 6510
 by: MitchAlsup - Tue, 30 May 2023 23:09 UTC

On Tuesday, May 30, 2023 at 5:10:39 PM UTC-5, Dan Cross wrote:
> In article <u55psg$23uqp$1...@dont-email.me>,
> BGB-Alt <bohannonin...@gmail.com> wrote:
> >On 5/30/2023 2:47 PM, Dan Cross wrote:
> >> In article <u55c48$226ac$1...@dont-email.me>, BGB <cr8...@gmail.com> wrote:
> >>> I also mentioned that for all this I was *not* talking about an ISA for
> >>> servers or data-centers, or even PC class systems, but was instead
> >>> mostly focusing on embedded systems.
> >>
> >> Yup. Which seemed very odd when you posted things like this:
> >> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/qhN0N1_nAQAJ
> >> in which you said,
> >>
> >> |Software cost is usually considered "virtually free" in comparison to
> >> |hardware. So what if the virtual memory subsystem needs a few more kB
> >> |due to a more complex hardware interface?, ...
> >> |
> >> |Would care more about performance if my benchmarks showed it "actually
> >> |mattered" in terms of macro-scale performance.
> >>
> >> If, as you acknowledge, you aren't familiar with the problem
> >> space, why make such statements?
> >
> >I have implemented virtual memory subsystems, and virtual memory *does*
> >matter to some extent in my use-cases.
<
> Yes, but we were talking about server workloads. I'm fairly
> certain we made that clear.
<
I an not so sure we are talking server workloads, but I am sure we are not
talking about "small memory few application" design points. I guess I
would use the term "General Purpose workloads".
<
> >There is also a difference between "claiming to be an expert" and "not
> >knowing anything whatsoever".
<
> I never said you don't know anything whatsoever. I said you
> would do well not to assume that you know more than you do; this
> advice is universal.
<
Universal and nearly universally ignored.......
<
> >Just not to the extent that one needs to care about how its performance
> >scales to something like a server or data-center.
> >
> >Think something with say 128 or 256 MB of RAM.
> >Not kB, and not GB.
<
> When I started out, we could fit 30-40 interactive timesharing
> users on a VAX 8550 with 32 MiB of RAM, and departmental file
> servers had about 128MiB of RAM. We cared very much how
> performance scaled on such systems.
<
We got 8 people on a PDP-8 !! 10 people on a PDP-10, I and 30 people
on a System 360/67 with 22 disk drives. Although if you wanted real
performance from the /67 you showed up at 3:00 AM......
<
> >You may still have a few GB of virtual address space though (and a few
> >GB of pagefile).
> You keep talking about paging to secondary storage; you brought
> that up in alt.os.development and are talking about it again.
> It seems entirely irrelevant.
> >There are plenty of embedded systems where one still has a need for
> >virtual memory.
> >
> >But, also ones where it may make sense to directly map things to
> >underlying pages (without going through the pagefile), and to run
> >multiple programs in a shared address space, etc.
> I don't know why you keep talking about "the pagefile". Do you
> think that use of a "pagefile" is necessary for using paged
> virtual memory and hardware page tables?
> >> Or when you said,
> >>
> >> |Most would not likely consider needing to use a few additional lookup
> >> |tables or similar to be a significant issue.
> >>
> >> here:
> >> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/D3kUmGxHBgAJ
> >>
> >> even though we'd been telling you that it _did_ matter?
> >
> >ASID remapping tables still don't necessarily imply server or
> >data-center workloads.
<
I brought u the G-bit and ASIDs in order to expose a poor* design choice
made oh so long ago. I brought it up to illustrate that what seemed to
be a good-thing way back then, has morphed into another attack vector
today (or another imposition of HyperVisor activities.}
<
ASIDs are used to make the TLB/MMU more efficient, and occasionally
the upper layers of the cache hierarchy.
<
(*) where it was not until the advent of Hypervisors that the choice
went from "a good addition" to "oh crap we did that to ourselves"
{moderated, of course, by EricP's comments.}
<
> Again, that was the context; specifically, we were talking about
> hypervisors. This was explained to you. You disagreed. Near
> as I can tell, you don't have much relevant experience or
> theoretical background on which to base such disagreement.
<
> >They also don't necessarily mean that I am overly concerned with shaving
> >a few kB off the OS kernel, nor are things "totally wrecked" by how many
> >clock-cycles are spent in the TLB Miss ISR (within reason).
<
> If you want to build an ISA for embedded applications with the
> set of properties that you have implemented, have at it. But
> recognize what, exactly, it actually is.
<
and continue to caveat it for what it is.
>
> - Dan C.

Re: Misc: Design tradeoffs in virtual memory systems...

<2jwdM.283236$LAYb.151323@fx02.iad>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32496&group=comp.arch#32496

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx02.iad.POSTED!not-for-mail
X-newsreader: xrn 9.03-beta-14-64bit
Sender: scott@dragon.sl.home (Scott Lurndal)
From: scott@slp53.sl.home (Scott Lurndal)
Reply-To: slp53@pacbell.net
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Newsgroups: comp.arch
References: <u4por8$3tugb$1@dont-email.me> <u55c48$226ac$1@dont-email.me> <u55jsp$7kt$1@reader1.panix.com> <u55psg$23uqp$1@dont-email.me> <u55s8r$mmj$1@reader1.panix.com> <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
Lines: 26
Message-ID: <2jwdM.283236$LAYb.151323@fx02.iad>
X-Complaints-To: abuse@usenetserver.com
NNTP-Posting-Date: Wed, 31 May 2023 00:13:50 UTC
Organization: UsenetServer - www.usenetserver.com
Date: Wed, 31 May 2023 00:13:50 GMT
X-Received-Bytes: 1948
 by: Scott Lurndal - Wed, 31 May 2023 00:13 UTC

MitchAlsup <MitchAlsup@aol.com> writes:
>On Tuesday, May 30, 2023 at 5:10:39=E2=80=AFPM UTC-5, Dan Cross wrote:

>> When I started out, we could fit 30-40 interactive timesharing=20
>> users on a VAX 8550 with 32 MiB of RAM, and departmental file=20
>> servers had about 128MiB of RAM. We cared very much how=20
>> performance scaled on such systems.
><
>We got 8 people on a PDP-8 !! 10 people on a PDP-10, I and 30 people
>on a System 360/67 with 22 disk drives. Although if you wanted real
>performance from the /67 you showed up at 3:00 AM......

We also had 8 people on a PDP-8 (TSS/8.24). We had a farm of
four 11/780's (4MB RAM each, plus a shared 4MB MA-780 unit),
front-ended by a custom PDP-11/45 terminal concentrator. This
farm supported all University departments and pretty much put
the 370 PCM (NAS, Itel) systems out of business.

We stashed the pascal and fortran compilers read-only regions
in the MA-780 such that they were shared by all four 780's
when running compiles.

Our internal management software utilized shared mailboxes
in the MA-780 for inter-host communications, as well as
routing DECnet through the MA-780 directly.

Re: Misc: Design tradeoffs in virtual memory systems...

<u566jj$25dja$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32497&group=comp.arch#32497

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: cr88192@gmail.com (BGB)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Tue, 30 May 2023 20:06:57 -0500
Organization: A noiseless patient Spider
Lines: 188
Message-ID: <u566jj$25dja$1@dont-email.me>
References: <u4por8$3tugb$1@dont-email.me> <u55c48$226ac$1@dont-email.me>
<u55jsp$7kt$1@reader1.panix.com> <u55psg$23uqp$1@dont-email.me>
<u55s8r$mmj$1@reader1.panix.com>
<b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 31 May 2023 01:06:59 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="a0d7a169597a070063d59e531f460720";
logging-data="2274922"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/bgTFVuwMjlaa0zPkoPmJb"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.11.2
Cancel-Lock: sha1:kHECaZfnuFgYVRehJl4kSzJDPEQ=
Content-Language: en-US
In-Reply-To: <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
 by: BGB - Wed, 31 May 2023 01:06 UTC

On 5/30/2023 6:09 PM, MitchAlsup wrote:
> On Tuesday, May 30, 2023 at 5:10:39 PM UTC-5, Dan Cross wrote:
>> In article <u55psg$23uqp$1...@dont-email.me>,
>> BGB-Alt <bohannonin...@gmail.com> wrote:
>>> On 5/30/2023 2:47 PM, Dan Cross wrote:
>>>> In article <u55c48$226ac$1...@dont-email.me>, BGB <cr8...@gmail.com> wrote:
>>>>> I also mentioned that for all this I was *not* talking about an ISA for
>>>>> servers or data-centers, or even PC class systems, but was instead
>>>>> mostly focusing on embedded systems.
>>>>
>>>> Yup. Which seemed very odd when you posted things like this:
>>>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/qhN0N1_nAQAJ
>>>> in which you said,
>>>>
>>>> |Software cost is usually considered "virtually free" in comparison to
>>>> |hardware. So what if the virtual memory subsystem needs a few more kB
>>>> |due to a more complex hardware interface?, ...
>>>> |
>>>> |Would care more about performance if my benchmarks showed it "actually
>>>> |mattered" in terms of macro-scale performance.
>>>>
>>>> If, as you acknowledge, you aren't familiar with the problem
>>>> space, why make such statements?
>>>
>>> I have implemented virtual memory subsystems, and virtual memory *does*
>>> matter to some extent in my use-cases.
> <
>> Yes, but we were talking about server workloads. I'm fairly
>> certain we made that clear.
> <
> I an not so sure we are talking server workloads, but I am sure we are not
> talking about "small memory few application" design points. I guess I
> would use the term "General Purpose workloads".
> <

Yeah.

IIRC, I said before that I was not talking about server workloads (nor
am I personally all that interested in server workloads...).

Though, there is a fuzzy line in terms of "general purpose".

One could be like:
Well, it is general purpose in that if someone did an ASIC version,
maybe they could stick it in a cellphone or something?...

>>> There is also a difference between "claiming to be an expert" and "not
>>> knowing anything whatsoever".
> <
>> I never said you don't know anything whatsoever. I said you
>> would do well not to assume that you know more than you do; this
>> advice is universal.
> <
> Universal and nearly universally ignored.......
> <
>>> Just not to the extent that one needs to care about how its performance
>>> scales to something like a server or data-center.
>>>
>>> Think something with say 128 or 256 MB of RAM.
>>> Not kB, and not GB.
> <
>> When I started out, we could fit 30-40 interactive timesharing
>> users on a VAX 8550 with 32 MiB of RAM, and departmental file
>> servers had about 128MiB of RAM. We cared very much how
>> performance scaled on such systems.
> <
> We got 8 people on a PDP-8 !! 10 people on a PDP-10, I and 30 people
> on a System 360/67 with 22 disk drives. Although if you wanted real
> performance from the /67 you showed up at 3:00 AM......
> <

Yeah, performance is to some extent relative though.

Also, there is the whole "Amdahl's Law" thing, ...

>>> You may still have a few GB of virtual address space though (and a few
>>> GB of pagefile).
>> You keep talking about paging to secondary storage; you brought
>> that up in alt.os.development and are talking about it again.
>> It seems entirely irrelevant.
>>> There are plenty of embedded systems where one still has a need for
>>> virtual memory.
>>>
>>> But, also ones where it may make sense to directly map things to
>>> underlying pages (without going through the pagefile), and to run
>>> multiple programs in a shared address space, etc.
>> I don't know why you keep talking about "the pagefile". Do you
>> think that use of a "pagefile" is necessary for using paged
>> virtual memory and hardware page tables?

No.

But, it is the most common use-case.

>>>> Or when you said,
>>>>
>>>> |Most would not likely consider needing to use a few additional lookup
>>>> |tables or similar to be a significant issue.
>>>>
>>>> here:
>>>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/D3kUmGxHBgAJ
>>>>
>>>> even though we'd been telling you that it _did_ matter?
>>>
>>> ASID remapping tables still don't necessarily imply server or
>>> data-center workloads.
> <
> I brought u the G-bit and ASIDs in order to expose a poor* design choice
> made oh so long ago. I brought it up to illustrate that what seemed to
> be a good-thing way back then, has morphed into another attack vector
> today (or another imposition of HyperVisor activities.}
> <
> ASIDs are used to make the TLB/MMU more efficient, and occasionally
> the upper layers of the cache hierarchy.
> <

Yes.

In my case, setting the ASID to 0 effectively marks a page as global.
But, yeah, probably don't want global pages in such a context.
Maybe it is better to not have any concept of global pages?...

> (*) where it was not until the advent of Hypervisors that the choice
> went from "a good addition" to "oh crap we did that to ourselves"
> {moderated, of course, by EricP's comments.}
> <

I guess this is a relevant point.

It is looking like "exact match only" for ASIDs is probably the
preferable strategy.

>> Again, that was the context; specifically, we were talking about
>> hypervisors. This was explained to you. You disagreed. Near
>> as I can tell, you don't have much relevant experience or
>> theoretical background on which to base such disagreement.
> <
>>> They also don't necessarily mean that I am overly concerned with shaving
>>> a few kB off the OS kernel, nor are things "totally wrecked" by how many
>>> clock-cycles are spent in the TLB Miss ISR (within reason).
> <
>> If you want to build an ISA for embedded applications with the
>> set of properties that you have implemented, have at it. But
>> recognize what, exactly, it actually is.
> <
> and continue to caveat it for what it is.

I had thought I had usually kept it "obvious enough" what BJX2 is and is
not meant to be.

I am also pretty sure "Hey, man, stick an FPGA soft processor in a web
server" was not one of them...

Well, even if I flip-flop some between "embedded controller tasks", and
"running Doom and Quake and similar".

Even my focus on neural nets is more in relation to "process image data
coming in from a camera module" (say, for directing motor-control tasks
or similar).

It taking a certain amount of "computational go power" to process
real-time video data from a camera module, or audio data from a
microphone, ...

But, in some sense, the features one needs for real-time image
processing happen to overlap to some extent with what one needs for
OpenGL rasterization, ...

Sometimes I had thought, maybe emulating x86 and running MS-DOS era
software and/or Win3.11 on it could be cool. But, as noted, this has
mostly gotten caught up in inertia.

Re: Misc: Design tradeoffs in virtual memory systems...

<u568jr$1u1r$1@gal.iecc.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32498&group=comp.arch#32498

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!news.iecc.com!.POSTED.news.iecc.com!not-for-mail
From: johnl@taugh.com (John Levine)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Wed, 31 May 2023 01:41:15 -0000 (UTC)
Organization: Taughannock Networks
Message-ID: <u568jr$1u1r$1@gal.iecc.com>
References: <u4por8$3tugb$1@dont-email.me> <u55psg$23uqp$1@dont-email.me> <u55s8r$mmj$1@reader1.panix.com> <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
Injection-Date: Wed, 31 May 2023 01:41:15 -0000 (UTC)
Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970";
logging-data="63547"; mail-complaints-to="abuse@iecc.com"
In-Reply-To: <u4por8$3tugb$1@dont-email.me> <u55psg$23uqp$1@dont-email.me> <u55s8r$mmj$1@reader1.panix.com> <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
Cleverness: some
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: johnl@iecc.com (John Levine)
 by: John Levine - Wed, 31 May 2023 01:41 UTC

According to MitchAlsup <MitchAlsup@aol.com>:
>> When I started out, we could fit 30-40 interactive timesharing
>> users on a VAX 8550 with 32 MiB of RAM, and departmental file
>> servers had about 128MiB of RAM. We cared very much how
>> performance scaled on such systems.
><
>We got 8 people on a PDP-8 !! 10 people on a PDP-10, I and 30 people
>on a System 360/67 with 22 disk drives. Although if you wanted real
>performance from the /67 you showed up at 3:00 AM......

In the 1970s DTSS ran over 200 users on a GE 635, about the same
performance as a KA-10, with very good response time. It was a real
timesharing system where you could write programs in a bunch of
different languages, not just BASIC. Its internal design was more like
that of SABRE or CICS, with most people talking to the transaction
monitor which only started a process for you when you typed RUN.
--
Regards,
John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
Please consider the environment before reading this e-mail. https://jl.ly

Re: Misc: Design tradeoffs in virtual memory systems...

<869e8440-6d47-4a58-a72b-2752a2acf6adn@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32499&group=comp.arch#32499

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:620a:44c3:b0:757:816c:6909 with SMTP id y3-20020a05620a44c300b00757816c6909mr987879qkp.8.1685499381926;
Tue, 30 May 2023 19:16:21 -0700 (PDT)
X-Received: by 2002:a05:6870:772f:b0:19f:45a1:b5a4 with SMTP id
dw47-20020a056870772f00b0019f45a1b5a4mr1387030oab.0.1685499381618; Tue, 30
May 2023 19:16:21 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!newsfeed.hasname.com!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Tue, 30 May 2023 19:16:21 -0700 (PDT)
In-Reply-To: <u568jr$1u1r$1@gal.iecc.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:8959:df26:8ecb:85d2;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:8959:df26:8ecb:85d2
References: <u4por8$3tugb$1@dont-email.me> <u55psg$23uqp$1@dont-email.me>
<u55s8r$mmj$1@reader1.panix.com> <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
<u568jr$1u1r$1@gal.iecc.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <869e8440-6d47-4a58-a72b-2752a2acf6adn@googlegroups.com>
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
From: MitchAlsup@aol.com (MitchAlsup)
Injection-Date: Wed, 31 May 2023 02:16:21 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2954
 by: MitchAlsup - Wed, 31 May 2023 02:16 UTC

On Tuesday, May 30, 2023 at 8:41:19 PM UTC-5, John Levine wrote:
> According to MitchAlsup <Mitch...@aol.com>:
> >> When I started out, we could fit 30-40 interactive timesharing
> >> users on a VAX 8550 with 32 MiB of RAM, and departmental file
> >> servers had about 128MiB of RAM. We cared very much how
> >> performance scaled on such systems.
> ><
> >We got 8 people on a PDP-8 !! 10 people on a PDP-10, I and 30 people
> >on a System 360/67 with 22 disk drives. Although if you wanted real
> >performance from the /67 you showed up at 3:00 AM......
<
> In the 1970s DTSS ran over 200 users on a GE 635, about the same
> performance as a KA-10, with very good response time. It was a real
> timesharing system where you could write programs in a bunch of
> different languages, not just BASIC. Its internal design was more like
> that of SABRE or CICS, with most people talking to the transaction
> monitor which only started a process for you when you typed RUN.
<
Late spring 1978, I was working for NCR corp in Cambridge Ohio
logged onto a CDC 7600 in San Diego on a TI Silent700, typing
in 8085 assembly code. All of a sudden the TI room went silent,
10 seconds past, 20 seconds past, then all of a sudden, the TI
were active again, but we were no logged onto a CDC 7600 in
Chicago.
<
We can't even get functionality like today................
> --
> Regards,
> John Levine, jo...@taugh.com, Primary Perpetrator of "The Internet for Dummies",
> Please consider the environment before reading this e-mail. https://jl.ly

Re: Misc: Design tradeoffs in virtual memory systems...

<u57d3k$1mt$1@reader1.panix.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32503&group=comp.arch#32503

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!panix!.POSTED.spitfire.i.gajendra.net!not-for-mail
From: cross@spitfire.i.gajendra.net (Dan Cross)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Wed, 31 May 2023 12:04:04 -0000 (UTC)
Organization: PANIX Public Access Internet and UNIX, NYC
Message-ID: <u57d3k$1mt$1@reader1.panix.com>
References: <u4por8$3tugb$1@dont-email.me> <u55psg$23uqp$1@dont-email.me> <u55s8r$mmj$1@reader1.panix.com> <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
Injection-Date: Wed, 31 May 2023 12:04:04 -0000 (UTC)
Injection-Info: reader1.panix.com; posting-host="spitfire.i.gajendra.net:166.84.136.80";
logging-data="1757"; mail-complaints-to="abuse@panix.com"
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: cross@spitfire.i.gajendra.net (Dan Cross)
 by: Dan Cross - Wed, 31 May 2023 12:04 UTC

In article <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>,
MitchAlsup <MitchAlsup@aol.com> wrote:
>On Tuesday, May 30, 2023 at 5:10:39 PM UTC-5, Dan Cross wrote:
>> In article <u55psg$23uqp$1...@dont-email.me>,
>> BGB-Alt <bohannonin...@gmail.com> wrote:
>> >On 5/30/2023 2:47 PM, Dan Cross wrote:
>> >> In article <u55c48$226ac$1...@dont-email.me>, BGB <cr8...@gmail.com> wrote:
>> >>> I also mentioned that for all this I was *not* talking about an ISA for
>> >>> servers or data-centers, or even PC class systems, but was instead
>> >>> mostly focusing on embedded systems.
>> >>
>> >> Yup. Which seemed very odd when you posted things like this:
>> >> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/qhN0N1_nAQAJ
>> >> in which you said,
>> >>
>> >> |Software cost is usually considered "virtually free" in comparison to
>> >> |hardware. So what if the virtual memory subsystem needs a few more kB
>> >> |due to a more complex hardware interface?, ...
>> >> |
>> >> |Would care more about performance if my benchmarks showed it "actually
>> >> |mattered" in terms of macro-scale performance.
>> >>
>> >> If, as you acknowledge, you aren't familiar with the problem
>> >> space, why make such statements?
>> >
>> >I have implemented virtual memory subsystems, and virtual memory *does*
>> >matter to some extent in my use-cases.
><
>> Yes, but we were talking about server workloads. I'm fairly
>> certain we made that clear.
><
>I an not so sure we are talking server workloads, but I am sure we are not
>talking about "small memory few application" design points. I guess I
>would use the term "General Purpose workloads".

We were in alt.os.development. The entire thing evolved out of
a discussion about x86S. Indeed, in hist first post on the
matter, BGB suggested his BJX2 as a replacement for x86:
https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/gIeuGffeCAAJ

In which he says,

|Ironically, if one goes over to software managed TLB, then the whole
|"nested page table" thing can disappear into the noise (as it is all
|software).

Which was the genesis of this entire thread of discussion: We
were explicitly talking about server-class CPUs. If he wants to
backtrack now and talk about embedded processors, whatever, but
that's certainly not how the discussion started.

>> >There is also a difference between "claiming to be an expert" and "not
>> >knowing anything whatsoever".
><
>> I never said you don't know anything whatsoever. I said you
>> would do well not to assume that you know more than you do; this
>> advice is universal.
><
>Universal and nearly universally ignored.......

Indeed. I myself an guilty.

>> >Just not to the extent that one needs to care about how its performance
>> >scales to something like a server or data-center.
>> >
>> >Think something with say 128 or 256 MB of RAM.
>> >Not kB, and not GB.
><
>> When I started out, we could fit 30-40 interactive timesharing
>> users on a VAX 8550 with 32 MiB of RAM, and departmental file
>> servers had about 128MiB of RAM. We cared very much how
>> performance scaled on such systems.
><
>We got 8 people on a PDP-8 !! 10 people on a PDP-10, I and 30 people
>on a System 360/67 with 22 disk drives. Although if you wanted real
>performance from the /67 you showed up at 3:00 AM......
><
>> >You may still have a few GB of virtual address space though (and a few
>> >GB of pagefile).
>> You keep talking about paging to secondary storage; you brought
>> that up in alt.os.development and are talking about it again.
>> It seems entirely irrelevant.
>> >There are plenty of embedded systems where one still has a need for
>> >virtual memory.
>> >
>> >But, also ones where it may make sense to directly map things to
>> >underlying pages (without going through the pagefile), and to run
>> >multiple programs in a shared address space, etc.
>> I don't know why you keep talking about "the pagefile". Do you
>> think that use of a "pagefile" is necessary for using paged
>> virtual memory and hardware page tables?
>> >> Or when you said,
>> >>
>> >> |Most would not likely consider needing to use a few additional lookup
>> >> |tables or similar to be a significant issue.
>> >>
>> >> here:
>> >> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/D3kUmGxHBgAJ
>> >>
>> >> even though we'd been telling you that it _did_ matter?
>> >
>> >ASID remapping tables still don't necessarily imply server or
>> >data-center workloads.
><
>I brought u the G-bit and ASIDs in order to expose a poor* design choice
>made oh so long ago. I brought it up to illustrate that what seemed to
>be a good-thing way back then, has morphed into another attack vector
>today (or another imposition of HyperVisor activities.}
><
>ASIDs are used to make the TLB/MMU more efficient, and occasionally
>the upper layers of the cache hierarchy.
><
>(*) where it was not until the advent of Hypervisors that the choice
>went from "a good addition" to "oh crap we did that to ourselves"
>{moderated, of course, by EricP's comments.}
><
>> Again, that was the context; specifically, we were talking about
>> hypervisors. This was explained to you. You disagreed. Near
>> as I can tell, you don't have much relevant experience or
>> theoretical background on which to base such disagreement.
><
>> >They also don't necessarily mean that I am overly concerned with shaving
>> >a few kB off the OS kernel, nor are things "totally wrecked" by how many
>> >clock-cycles are spent in the TLB Miss ISR (within reason).
><
>> If you want to build an ISA for embedded applications with the
>> set of properties that you have implemented, have at it. But
>> recognize what, exactly, it actually is.
><
>and continue to caveat it for what it is.

Indeed. And not draw inferences from that to server-class
workloads.

- Dan C.

Re: Misc: Design tradeoffs in virtual memory systems...

<u57d6d$1mt$2@reader1.panix.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32504&group=comp.arch#32504

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!panix!.POSTED.spitfire.i.gajendra.net!not-for-mail
From: cross@spitfire.i.gajendra.net (Dan Cross)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Wed, 31 May 2023 12:05:33 -0000 (UTC)
Organization: PANIX Public Access Internet and UNIX, NYC
Message-ID: <u57d6d$1mt$2@reader1.panix.com>
References: <u4por8$3tugb$1@dont-email.me> <u55s8r$mmj$1@reader1.panix.com> <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com> <u566jj$25dja$1@dont-email.me>
Injection-Date: Wed, 31 May 2023 12:05:33 -0000 (UTC)
Injection-Info: reader1.panix.com; posting-host="spitfire.i.gajendra.net:166.84.136.80";
logging-data="1757"; mail-complaints-to="abuse@panix.com"
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: cross@spitfire.i.gajendra.net (Dan Cross)
 by: Dan Cross - Wed, 31 May 2023 12:05 UTC

In article <u566jj$25dja$1@dont-email.me>, BGB <cr88192@gmail.com> wrote:
> On Tuesday, May 30, 2023 at 5:10:39 PM UTC-5, Dan Cross wrote:
>> I don't know why you keep talking about "the pagefile". Do you
>> think that use of a "pagefile" is necessary for using paged
>> virtual memory and hardware page tables?
>
>No.
>
>But, it is the most common use-case.

Not even close.

- Dan C.

Re: Misc: Design tradeoffs in virtual memory systems...

<u58001$2f7p9$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32510&group=comp.arch#32510

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: cr88192@gmail.com (BGB)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Wed, 31 May 2023 12:26:24 -0500
Organization: A noiseless patient Spider
Lines: 168
Message-ID: <u58001$2f7p9$1@dont-email.me>
References: <u4por8$3tugb$1@dont-email.me> <u55psg$23uqp$1@dont-email.me>
<u55s8r$mmj$1@reader1.panix.com>
<b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
<u57d3k$1mt$1@reader1.panix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 31 May 2023 17:26:25 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="a0d7a169597a070063d59e531f460720";
logging-data="2596649"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+FlmkA8NaIRnmyAbMcLIT5"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.11.2
Cancel-Lock: sha1:rEi82fF2PjDQdQ3f9Hr5v7rATO4=
Content-Language: en-US
In-Reply-To: <u57d3k$1mt$1@reader1.panix.com>
 by: BGB - Wed, 31 May 2023 17:26 UTC

On 5/31/2023 7:04 AM, Dan Cross wrote:
> In article <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>,
> MitchAlsup <MitchAlsup@aol.com> wrote:
>> On Tuesday, May 30, 2023 at 5:10:39 PM UTC-5, Dan Cross wrote:
>>> In article <u55psg$23uqp$1...@dont-email.me>,
>>> BGB-Alt <bohannonin...@gmail.com> wrote:
>>>> On 5/30/2023 2:47 PM, Dan Cross wrote:
>>>>> In article <u55c48$226ac$1...@dont-email.me>, BGB <cr8...@gmail.com> wrote:
>>>>>> I also mentioned that for all this I was *not* talking about an ISA for
>>>>>> servers or data-centers, or even PC class systems, but was instead
>>>>>> mostly focusing on embedded systems.
>>>>>
>>>>> Yup. Which seemed very odd when you posted things like this:
>>>>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/qhN0N1_nAQAJ
>>>>> in which you said,
>>>>>
>>>>> |Software cost is usually considered "virtually free" in comparison to
>>>>> |hardware. So what if the virtual memory subsystem needs a few more kB
>>>>> |due to a more complex hardware interface?, ...
>>>>> |
>>>>> |Would care more about performance if my benchmarks showed it "actually
>>>>> |mattered" in terms of macro-scale performance.
>>>>>
>>>>> If, as you acknowledge, you aren't familiar with the problem
>>>>> space, why make such statements?
>>>>
>>>> I have implemented virtual memory subsystems, and virtual memory *does*
>>>> matter to some extent in my use-cases.
>> <
>>> Yes, but we were talking about server workloads. I'm fairly
>>> certain we made that clear.
>> <
>> I an not so sure we are talking server workloads, but I am sure we are not
>> talking about "small memory few application" design points. I guess I
>> would use the term "General Purpose workloads".
>
> We were in alt.os.development. The entire thing evolved out of
> a discussion about x86S. Indeed, in hist first post on the
> matter, BGB suggested his BJX2 as a replacement for x86:
> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/gIeuGffeCAAJ
>
> In which he says,
>
> |Ironically, if one goes over to software managed TLB, then the whole
> |"nested page table" thing can disappear into the noise (as it is all
> |software).
>
> Which was the genesis of this entire thread of discussion: We
> were explicitly talking about server-class CPUs. If he wants to
> backtrack now and talk about embedded processors, whatever, but
> that's certainly not how the discussion started.
>

I missed that point, it seems...
And/or forgot, I am not sure which.

But, yeah, I guess maybe one can argue it doesn't make sense for server
class CPUs, but there are uses for emulation/virtualization in embedded
contexts as well (I had more thought of virtualization more like
"emulation, but with hardware accelerated memory access").

Say, sort of like what is used in something like the Dolphin emulator
(for Game Cube and Wii), which tries to give the emulator its own native
address space on the hosts CPU, rather than emulating all of the memory
accesses.

One could conceivably use it as well in something like a "retro console"
or similar.

One could likely emulate x86 to good effect in any case, like what
Transmeta did.

I don't think the point was that BJX2 would replace x86 directly, but
used more like an emulator, but (I don't remember anyways) thinking of
that having been in a server context (as opposed to, say, something more
like DOSBox or QEMU).

>>>> There is also a difference between "claiming to be an expert" and "not
>>>> knowing anything whatsoever".
>> <
>>> I never said you don't know anything whatsoever. I said you
>>> would do well not to assume that you know more than you do; this
>>> advice is universal.
>> <
>> Universal and nearly universally ignored.......
>
> Indeed. I myself an guilty.
>
>>>> Just not to the extent that one needs to care about how its performance
>>>> scales to something like a server or data-center.
>>>>
>>>> Think something with say 128 or 256 MB of RAM.
>>>> Not kB, and not GB.
>> <
>>> When I started out, we could fit 30-40 interactive timesharing
>>> users on a VAX 8550 with 32 MiB of RAM, and departmental file
>>> servers had about 128MiB of RAM. We cared very much how
>>> performance scaled on such systems.
>> <
>> We got 8 people on a PDP-8 !! 10 people on a PDP-10, I and 30 people
>> on a System 360/67 with 22 disk drives. Although if you wanted real
>> performance from the /67 you showed up at 3:00 AM......
>> <
>>>> You may still have a few GB of virtual address space though (and a few
>>>> GB of pagefile).
>>> You keep talking about paging to secondary storage; you brought
>>> that up in alt.os.development and are talking about it again.
>>> It seems entirely irrelevant.
>>>> There are plenty of embedded systems where one still has a need for
>>>> virtual memory.
>>>>
>>>> But, also ones where it may make sense to directly map things to
>>>> underlying pages (without going through the pagefile), and to run
>>>> multiple programs in a shared address space, etc.
>>> I don't know why you keep talking about "the pagefile". Do you
>>> think that use of a "pagefile" is necessary for using paged
>>> virtual memory and hardware page tables?
>>>>> Or when you said,
>>>>>
>>>>> |Most would not likely consider needing to use a few additional lookup
>>>>> |tables or similar to be a significant issue.
>>>>>
>>>>> here:
>>>>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/D3kUmGxHBgAJ
>>>>>
>>>>> even though we'd been telling you that it _did_ matter?
>>>>
>>>> ASID remapping tables still don't necessarily imply server or
>>>> data-center workloads.
>> <
>> I brought u the G-bit and ASIDs in order to expose a poor* design choice
>> made oh so long ago. I brought it up to illustrate that what seemed to
>> be a good-thing way back then, has morphed into another attack vector
>> today (or another imposition of HyperVisor activities.}
>> <
>> ASIDs are used to make the TLB/MMU more efficient, and occasionally
>> the upper layers of the cache hierarchy.
>> <
>> (*) where it was not until the advent of Hypervisors that the choice
>> went from "a good addition" to "oh crap we did that to ourselves"
>> {moderated, of course, by EricP's comments.}
>> <
>>> Again, that was the context; specifically, we were talking about
>>> hypervisors. This was explained to you. You disagreed. Near
>>> as I can tell, you don't have much relevant experience or
>>> theoretical background on which to base such disagreement.
>> <
>>>> They also don't necessarily mean that I am overly concerned with shaving
>>>> a few kB off the OS kernel, nor are things "totally wrecked" by how many
>>>> clock-cycles are spent in the TLB Miss ISR (within reason).
>> <
>>> If you want to build an ISA for embedded applications with the
>>> set of properties that you have implemented, have at it. But
>>> recognize what, exactly, it actually is.
>> <
>> and continue to caveat it for what it is.
>
> Indeed. And not draw inferences from that to server-class
> workloads.
>
> - Dan C.
>

Re: Misc: Design tradeoffs in virtual memory systems...

<xULdM.3806001$vBI8.2682307@fx15.iad>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32511&group=comp.arch#32511

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!news.neodome.net!feeder1.feed.usenet.farm!feed.usenet.farm!peer02.ams4!peer.am4.highwinds-media.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx15.iad.POSTED!not-for-mail
From: ThatWouldBeTelling@thevillage.com (EricP)
User-Agent: Thunderbird 2.0.0.24 (Windows/20100228)
MIME-Version: 1.0
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
References: <u4por8$3tugb$1@dont-email.me> <Ia3cM.3440031$iU59.2338510@fx14.iad> <u4vj9n$25m1c$1@newsreader4.netcologne.de> <hHLcM.4041635$GNG9.1173433@fx18.iad> <u50hb0$ijs$1@gal.iecc.com> <2023May29.142305@mips.complang.tuwien.ac.at> <jV1dM.3731948$vBI8.2298283@fx15.iad> <u53eoq$1mvgs$1@dont-email.me> <_3ndM.631657$Ldj8.394529@fx47.iad> <u554sj$21b8t$1@dont-email.me> <qyrdM.2246499$t5W7.1019460@fx13.iad> <c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com>
In-Reply-To: <c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 25
Message-ID: <xULdM.3806001$vBI8.2682307@fx15.iad>
X-Complaints-To: abuse@UsenetServer.com
NNTP-Posting-Date: Wed, 31 May 2023 17:57:49 UTC
Date: Wed, 31 May 2023 13:57:42 -0400
X-Received-Bytes: 2318
 by: EricP - Wed, 31 May 2023 17:57 UTC

MitchAlsup wrote:
> I recently added process priority to my ATOMIC feature and I am thinking
> about adding privilege level, too::
> <
> If a higher priority process accesses a cache line participating in an ATOMIC
> event, the lower priority process holding this line fails its ATOMIC event and
> the higher priority process gets to make forward progress.
> <
> If a lower priority process accesses a cache line participating in an ATOMIC
> event, the lower priority process fails its ATOMIC event and the higher
> priority process gets to continue to make forward progress.
> <
> If a process receives a NaK and was attempting an ATOMIC event, then
> the event fails (and you start over at the top), if it was not attempting
> an event, then the access is restarted. Only a process attempting an
> ATOMIC event that has already touched all of its cache lines can
> respond with a NaK.

Allowing priority to jump ahead in a service queue removes any
bounded delay guarantees for the lower priority and allows starvation.
I think this priority feature should be an option selectable at the
start of each transaction.

Re: Misc: Design tradeoffs in virtual memory systems...

<8c9a1868-5d21-4cb9-b6be-69b92840e8b5n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32512&group=comp.arch#32512

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:176a:b0:626:13bf:f399 with SMTP id et10-20020a056214176a00b0062613bff399mr1073134qvb.3.1685559529755;
Wed, 31 May 2023 11:58:49 -0700 (PDT)
X-Received: by 2002:a9d:7514:0:b0:6af:7e3f:e5bd with SMTP id
r20-20020a9d7514000000b006af7e3fe5bdmr1154744otk.5.1685559529488; Wed, 31 May
2023 11:58:49 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Wed, 31 May 2023 11:58:49 -0700 (PDT)
In-Reply-To: <xULdM.3806001$vBI8.2682307@fx15.iad>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7d68:73e:9050:f2a1;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7d68:73e:9050:f2a1
References: <u4por8$3tugb$1@dont-email.me> <Ia3cM.3440031$iU59.2338510@fx14.iad>
<u4vj9n$25m1c$1@newsreader4.netcologne.de> <hHLcM.4041635$GNG9.1173433@fx18.iad>
<u50hb0$ijs$1@gal.iecc.com> <2023May29.142305@mips.complang.tuwien.ac.at>
<jV1dM.3731948$vBI8.2298283@fx15.iad> <u53eoq$1mvgs$1@dont-email.me>
<_3ndM.631657$Ldj8.394529@fx47.iad> <u554sj$21b8t$1@dont-email.me>
<qyrdM.2246499$t5W7.1019460@fx13.iad> <c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com>
<xULdM.3806001$vBI8.2682307@fx15.iad>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <8c9a1868-5d21-4cb9-b6be-69b92840e8b5n@googlegroups.com>
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
From: MitchAlsup@aol.com (MitchAlsup)
Injection-Date: Wed, 31 May 2023 18:58:49 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 3354
 by: MitchAlsup - Wed, 31 May 2023 18:58 UTC

On Wednesday, May 31, 2023 at 12:57:52 PM UTC-5, EricP wrote:
> MitchAlsup wrote:
> > I recently added process priority to my ATOMIC feature and I am thinking
> > about adding privilege level, too::
> > <
> > If a higher priority process accesses a cache line participating in an ATOMIC
> > event, the lower priority process holding this line fails its ATOMIC event and
> > the higher priority process gets to make forward progress.
> > <
> > If a lower priority process accesses a cache line participating in an ATOMIC
> > event, the lower priority process fails its ATOMIC event and the higher
> > priority process gets to continue to make forward progress.
> > <
> > If a process receives a NaK and was attempting an ATOMIC event, then
> > the event fails (and you start over at the top), if it was not attempting
> > an event, then the access is restarted. Only a process attempting an
> > ATOMIC event that has already touched all of its cache lines can
> > respond with a NaK.
<
> Allowing priority to jump ahead in a service queue removes any
> bounded delay guarantees for the lower priority and allows starvation.
> I think this priority feature should be an option selectable at the
> start of each transaction.
<
What do you do when the lower priority thread does not want said
option, but the higher priority thread does ?
<
Also note: If you don't do something like this, you get more priority
inversion, where lower priority threads steel cycles from higher priority
threads.

Re: Misc: Design tradeoffs in virtual memory systems...

<u5864b$2frfb$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32513&group=comp.arch#32513

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: sfuld@alumni.cmu.edu.invalid (Stephen Fuld)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Wed, 31 May 2023 12:11:04 -0700
Organization: A noiseless patient Spider
Lines: 41
Message-ID: <u5864b$2frfb$1@dont-email.me>
References: <u4por8$3tugb$1@dont-email.me>
<Ia3cM.3440031$iU59.2338510@fx14.iad>
<u4vj9n$25m1c$1@newsreader4.netcologne.de>
<hHLcM.4041635$GNG9.1173433@fx18.iad> <u50hb0$ijs$1@gal.iecc.com>
<2023May29.142305@mips.complang.tuwien.ac.at>
<jV1dM.3731948$vBI8.2298283@fx15.iad> <u53eoq$1mvgs$1@dont-email.me>
<_3ndM.631657$Ldj8.394529@fx47.iad> <u554sj$21b8t$1@dont-email.me>
<qyrdM.2246499$t5W7.1019460@fx13.iad>
<c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com>
<xULdM.3806001$vBI8.2682307@fx15.iad>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 31 May 2023 19:11:07 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="f8eaa374da1b9a5646b2db64adf9314c";
logging-data="2616811"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Iz1ucKd9keJqKAjFG1CxRFTtLkX8LD00="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.11.2
Cancel-Lock: sha1:ujkUB78r6o2MWqbooVudIjTsJl8=
In-Reply-To: <xULdM.3806001$vBI8.2682307@fx15.iad>
Content-Language: en-US
 by: Stephen Fuld - Wed, 31 May 2023 19:11 UTC

On 5/31/2023 10:57 AM, EricP wrote:
> MitchAlsup wrote:
>> I recently added process priority to my ATOMIC feature and I am thinking
>> about adding privilege level, too::
>> <
>> If a higher priority process accesses a cache line participating in an
>> ATOMIC
>> event, the lower priority process holding this line fails its ATOMIC
>> event and the higher priority process gets to make forward progress.
>> <
>> If a lower priority process accesses a cache line participating in an
>> ATOMIC
>> event, the lower priority process fails its ATOMIC event and the higher
>> priority process gets to continue to make forward progress.
>> <
>> If a process receives a NaK and was attempting an ATOMIC event, then
>> the event fails (and you start over at the top), if it was not attempting
>> an event, then the access is restarted. Only a process attempting an
>> ATOMIC event that has already touched all of its cache lines can
>> respond with a NaK.
>
> Allowing priority to jump ahead in a service queue removes any
> bounded delay guarantees for the lower priority and allows starvation.

Yes. There are several partial solutions, and lots of variations, but I
don't think there is a "one size fits all" solution.

> I think this priority feature should be an option selectable at the
> start of each transaction.

So where does a request without priority indicator rank versus one with
the indicator? either way, you still have the possibility of
starvation. And you need some sort of enforced policy to say who is
allowed to use which option.

--
- Stephen Fuld
(e-mail address disguised to prevent spam)

Re: Misc: Design tradeoffs in virtual memory systems...

<4c92802d-36ff-4f3f-984f-570c5ded2432n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32514&group=comp.arch#32514

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:620a:4509:b0:75b:129a:d48d with SMTP id t9-20020a05620a450900b0075b129ad48dmr2109468qkp.2.1685561485103;
Wed, 31 May 2023 12:31:25 -0700 (PDT)
X-Received: by 2002:aca:f206:0:b0:399:ee8f:6cdc with SMTP id
q6-20020acaf206000000b00399ee8f6cdcmr1812528oih.9.1685561484842; Wed, 31 May
2023 12:31:24 -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: Wed, 31 May 2023 12:31:24 -0700 (PDT)
In-Reply-To: <u5864b$2frfb$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7d68:73e:9050:f2a1;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7d68:73e:9050:f2a1
References: <u4por8$3tugb$1@dont-email.me> <Ia3cM.3440031$iU59.2338510@fx14.iad>
<u4vj9n$25m1c$1@newsreader4.netcologne.de> <hHLcM.4041635$GNG9.1173433@fx18.iad>
<u50hb0$ijs$1@gal.iecc.com> <2023May29.142305@mips.complang.tuwien.ac.at>
<jV1dM.3731948$vBI8.2298283@fx15.iad> <u53eoq$1mvgs$1@dont-email.me>
<_3ndM.631657$Ldj8.394529@fx47.iad> <u554sj$21b8t$1@dont-email.me>
<qyrdM.2246499$t5W7.1019460@fx13.iad> <c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com>
<xULdM.3806001$vBI8.2682307@fx15.iad> <u5864b$2frfb$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <4c92802d-36ff-4f3f-984f-570c5ded2432n@googlegroups.com>
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
From: MitchAlsup@aol.com (MitchAlsup)
Injection-Date: Wed, 31 May 2023 19:31:25 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: MitchAlsup - Wed, 31 May 2023 19:31 UTC

On Wednesday, May 31, 2023 at 2:11:10 PM UTC-5, Stephen Fuld wrote:
> On 5/31/2023 10:57 AM, EricP wrote:
> > MitchAlsup wrote:
> >> I recently added process priority to my ATOMIC feature and I am thinking
> >> about adding privilege level, too::
> >> <
> >> If a higher priority process accesses a cache line participating in an
> >> ATOMIC
> >> event, the lower priority process holding this line fails its ATOMIC
> >> event and the higher priority process gets to make forward progress.
> >> <
> >> If a lower priority process accesses a cache line participating in an
> >> ATOMIC
> >> event, the lower priority process fails its ATOMIC event and the higher
> >> priority process gets to continue to make forward progress.
> >> <
> >> If a process receives a NaK and was attempting an ATOMIC event, then
> >> the event fails (and you start over at the top), if it was not attempting
> >> an event, then the access is restarted. Only a process attempting an
> >> ATOMIC event that has already touched all of its cache lines can
> >> respond with a NaK.
> >
> > Allowing priority to jump ahead in a service queue removes any
> > bounded delay guarantees for the lower priority and allows starvation.
> Yes. There are several partial solutions, and lots of variations, but I
> don't think there is a "one size fits all" solution.
> > I think this priority feature should be an option selectable at the
> > start of each transaction.
> So where does a request without priority indicator rank versus one with
> the indicator? either way, you still have the possibility of
> starvation. And you need some sort of enforced policy to say who is
> allowed to use which option.
<
Also note: A higher priority ATOMIC event only interferes with a lower
priority event when the same data is touched. So, if the HPE and the LPE
use different locks, there is no interference.
> --
> - Stephen Fuld
> (e-mail address disguised to prevent spam)

Re: Misc: Design tradeoffs in virtual memory systems...

<YENdM.3421875$iS99.2872394@fx16.iad>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32515&group=comp.arch#32515

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx16.iad.POSTED!not-for-mail
X-newsreader: xrn 9.03-beta-14-64bit
Sender: scott@dragon.sl.home (Scott Lurndal)
From: scott@slp53.sl.home (Scott Lurndal)
Reply-To: slp53@pacbell.net
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Newsgroups: comp.arch
References: <u4por8$3tugb$1@dont-email.me> <u50hb0$ijs$1@gal.iecc.com> <2023May29.142305@mips.complang.tuwien.ac.at> <jV1dM.3731948$vBI8.2298283@fx15.iad> <u53eoq$1mvgs$1@dont-email.me> <_3ndM.631657$Ldj8.394529@fx47.iad> <u554sj$21b8t$1@dont-email.me> <qyrdM.2246499$t5W7.1019460@fx13.iad> <c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com> <xULdM.3806001$vBI8.2682307@fx15.iad> <u5864b$2frfb$1@dont-email.me> <4c92802d-36ff-4f3f-984f-570c5ded2432n@googlegroups.com>
Lines: 58
Message-ID: <YENdM.3421875$iS99.2872394@fx16.iad>
X-Complaints-To: abuse@usenetserver.com
NNTP-Posting-Date: Wed, 31 May 2023 19:57:44 UTC
Organization: UsenetServer - www.usenetserver.com
Date: Wed, 31 May 2023 19:57:44 GMT
X-Received-Bytes: 3667
 by: Scott Lurndal - Wed, 31 May 2023 19:57 UTC

MitchAlsup <MitchAlsup@aol.com> writes:
>On Wednesday, May 31, 2023 at 2:11:10=E2=80=AFPM UTC-5, Stephen Fuld wrote:
>> On 5/31/2023 10:57 AM, EricP wrote:=20
>> > MitchAlsup wrote:=20
>> >> I recently added process priority to my ATOMIC feature and I am thinki=
>ng=20
>> >> about adding privilege level, too::=20
>> >> <=20
>> >> If a higher priority process accesses a cache line participating in an=
>=20
>> >> ATOMIC=20
>> >> event, the lower priority process holding this line fails its ATOMIC=
>=20
>> >> event and the higher priority process gets to make forward progress.=
>=20
>> >> <=20
>> >> If a lower priority process accesses a cache line participating in an=
>=20
>> >> ATOMIC=20
>> >> event, the lower priority process fails its ATOMIC event and the highe=
>r=20
>> >> priority process gets to continue to make forward progress.=20
>> >> <=20
>> >> If a process receives a NaK and was attempting an ATOMIC event, then=
>=20
>> >> the event fails (and you start over at the top), if it was not attempt=
>ing=20
>> >> an event, then the access is restarted. Only a process attempting an=
>=20
>> >> ATOMIC event that has already touched all of its cache lines can=20
>> >> respond with a NaK.=20
>> >=20
>> > Allowing priority to jump ahead in a service queue removes any=20
>> > bounded delay guarantees for the lower priority and allows starvation.
>> Yes. There are several partial solutions, and lots of variations, but I=
>=20
>> don't think there is a "one size fits all" solution.
>> > I think this priority feature should be an option selectable at the=20
>> > start of each transaction.
>> So where does a request without priority indicator rank versus one with=
>=20
>> the indicator? either way, you still have the possibility of=20
>> starvation. And you need some sort of enforced policy to say who is=20
>> allowed to use which option.
><
>Also note: A higher priority ATOMIC event only interferes with a lower
>priority event when the same data is touched. So, if the HPE and the LPE
>use different locks, there is no interference.

One of the acid tests at a national lab that will go unnamed is for
all cores to pound on a single cache line (using a spin lock). Starvation
was a 'fail'.

AMD (and I presume Intel) have a feature in the L2 that will, if it
cannot get ownership of the cache line in a certain amount of time,
assert the system-wide bus lock (which I would hope is granted round
robin, not based on any notion of priority) in order to make forward
progress.

Re: Misc: Design tradeoffs in virtual memory systems...

<bdbbaa4b-1692-4649-8087-843b3623e323n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32516&group=comp.arch#32516

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ac8:7d88:0:b0:3f4:b1bd:c30e with SMTP id c8-20020ac87d88000000b003f4b1bdc30emr1948198qtd.8.1685564343038;
Wed, 31 May 2023 13:19:03 -0700 (PDT)
X-Received: by 2002:a4a:ddd2:0:b0:555:9f3d:947f with SMTP id
i18-20020a4addd2000000b005559f3d947fmr5001990oov.1.1685564342764; Wed, 31 May
2023 13:19:02 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!2.eu.feeder.erje.net!feeder.erje.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: Wed, 31 May 2023 13:19:02 -0700 (PDT)
In-Reply-To: <YENdM.3421875$iS99.2872394@fx16.iad>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7d68:73e:9050:f2a1;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7d68:73e:9050:f2a1
References: <u4por8$3tugb$1@dont-email.me> <u50hb0$ijs$1@gal.iecc.com>
<2023May29.142305@mips.complang.tuwien.ac.at> <jV1dM.3731948$vBI8.2298283@fx15.iad>
<u53eoq$1mvgs$1@dont-email.me> <_3ndM.631657$Ldj8.394529@fx47.iad>
<u554sj$21b8t$1@dont-email.me> <qyrdM.2246499$t5W7.1019460@fx13.iad>
<c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com> <xULdM.3806001$vBI8.2682307@fx15.iad>
<u5864b$2frfb$1@dont-email.me> <4c92802d-36ff-4f3f-984f-570c5ded2432n@googlegroups.com>
<YENdM.3421875$iS99.2872394@fx16.iad>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <bdbbaa4b-1692-4649-8087-843b3623e323n@googlegroups.com>
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
From: MitchAlsup@aol.com (MitchAlsup)
Injection-Date: Wed, 31 May 2023 20:19:03 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: MitchAlsup - Wed, 31 May 2023 20:19 UTC

On Wednesday, May 31, 2023 at 2:57:48 PM UTC-5, Scott Lurndal wrote:
> MitchAlsup <Mitch...@aol.com> writes:
> >On Wednesday, May 31, 2023 at 2:11:10=E2=80=AFPM UTC-5, Stephen Fuld wrote:
> >> On 5/31/2023 10:57 AM, EricP wrote:=20
> >> > MitchAlsup wrote:=20
> >> >> I recently added process priority to my ATOMIC feature and I am thinki=
> >ng=20
> >> >> about adding privilege level, too::=20
> >> >> <=20
> >> >> If a higher priority process accesses a cache line participating in an=
> >=20
> >> >> ATOMIC=20
> >> >> event, the lower priority process holding this line fails its ATOMIC=
> >=20
> >> >> event and the higher priority process gets to make forward progress..=
> >=20
> >> >> <=20
> >> >> If a lower priority process accesses a cache line participating in an=
> >=20
> >> >> ATOMIC=20
> >> >> event, the lower priority process fails its ATOMIC event and the highe=
> >r=20
> >> >> priority process gets to continue to make forward progress.=20
> >> >> <=20
> >> >> If a process receives a NaK and was attempting an ATOMIC event, then=
> >=20
> >> >> the event fails (and you start over at the top), if it was not attempt=
> >ing=20
> >> >> an event, then the access is restarted. Only a process attempting an=
> >=20
> >> >> ATOMIC event that has already touched all of its cache lines can=20
> >> >> respond with a NaK.=20
> >> >=20
> >> > Allowing priority to jump ahead in a service queue removes any=20
> >> > bounded delay guarantees for the lower priority and allows starvation.
> >> Yes. There are several partial solutions, and lots of variations, but I=
> >=20
> >> don't think there is a "one size fits all" solution.
> >> > I think this priority feature should be an option selectable at the=20
> >> > start of each transaction.
> >> So where does a request without priority indicator rank versus one with=
> >=20
> >> the indicator? either way, you still have the possibility of=20
> >> starvation. And you need some sort of enforced policy to say who is=20
> >> allowed to use which option.
> ><
> >Also note: A higher priority ATOMIC event only interferes with a lower
> >priority event when the same data is touched. So, if the HPE and the LPE
> >use different locks, there is no interference.
<
> One of the acid tests at a national lab that will go unnamed is for
> all cores to pound on a single cache line (using a spin lock). Starvation
> was a 'fail'.
<
Are the contenders of the same priority ?? Are they of the same Privilege ??
>
> AMD (and I presume Intel) have a feature in the L2 that will, if it
> cannot get ownership of the cache line in a certain amount of time,
> assert the system-wide bus lock (which I would hope is granted round
> robin, not based on any notion of priority) in order to make forward
> progress.

Re: Misc: Design tradeoffs in virtual memory systems...

<d201dd19-d23b-40db-b706-a5b65caaf927n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32517&group=comp.arch#32517

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:620a:2a06:b0:75b:88ff:57df with SMTP id o6-20020a05620a2a0600b0075b88ff57dfmr3348881qkp.2.1685566907313;
Wed, 31 May 2023 14:01:47 -0700 (PDT)
X-Received: by 2002:a05:6870:771a:b0:1a2:7011:57a6 with SMTP id
dw26-20020a056870771a00b001a2701157a6mr144104oab.1.1685566906976; Wed, 31 May
2023 14:01:46 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!2.eu.feeder.erje.net!feeder.erje.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: Wed, 31 May 2023 14:01:46 -0700 (PDT)
In-Reply-To: <u5864b$2frfb$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7d68:73e:9050:f2a1;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7d68:73e:9050:f2a1
References: <u4por8$3tugb$1@dont-email.me> <Ia3cM.3440031$iU59.2338510@fx14.iad>
<u4vj9n$25m1c$1@newsreader4.netcologne.de> <hHLcM.4041635$GNG9.1173433@fx18.iad>
<u50hb0$ijs$1@gal.iecc.com> <2023May29.142305@mips.complang.tuwien.ac.at>
<jV1dM.3731948$vBI8.2298283@fx15.iad> <u53eoq$1mvgs$1@dont-email.me>
<_3ndM.631657$Ldj8.394529@fx47.iad> <u554sj$21b8t$1@dont-email.me>
<qyrdM.2246499$t5W7.1019460@fx13.iad> <c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com>
<xULdM.3806001$vBI8.2682307@fx15.iad> <u5864b$2frfb$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d201dd19-d23b-40db-b706-a5b65caaf927n@googlegroups.com>
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
From: MitchAlsup@aol.com (MitchAlsup)
Injection-Date: Wed, 31 May 2023 21:01:47 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: MitchAlsup - Wed, 31 May 2023 21:01 UTC

On Wednesday, May 31, 2023 at 2:11:10 PM UTC-5, Stephen Fuld wrote:
> On 5/31/2023 10:57 AM, EricP wrote:
> > MitchAlsup wrote:
> >> I recently added process priority to my ATOMIC feature and I am thinking
> >> about adding privilege level, too::
> >> <
> >> If a higher priority process accesses a cache line participating in an
> >> ATOMIC
> >> event, the lower priority process holding this line fails its ATOMIC
> >> event and the higher priority process gets to make forward progress.
> >> <
> >> If a lower priority process accesses a cache line participating in an
> >> ATOMIC
> >> event, the lower priority process fails its ATOMIC event and the higher
> >> priority process gets to continue to make forward progress.
> >> <
> >> If a process receives a NaK and was attempting an ATOMIC event, then
> >> the event fails (and you start over at the top), if it was not attempting
> >> an event, then the access is restarted. Only a process attempting an
> >> ATOMIC event that has already touched all of its cache lines can
> >> respond with a NaK.
> >
> > Allowing priority to jump ahead in a service queue removes any
> > bounded delay guarantees for the lower priority and allows starvation.
> Yes. There are several partial solutions, and lots of variations, but I
> don't think there is a "one size fits all" solution.
> > I think this priority feature should be an option selectable at the
> > start of each transaction.
<
> So where does a request without priority indicator rank versus one with
> the indicator? either way, you still have the possibility of
> starvation. And you need some sort of enforced policy to say who is
> allowed to use which option.
<
Ok, I see the problem.
<
The ATOMIC primitives in My 66000 are not "like" those in other architectures.
Like LL-SC there is a duration over which the event is taking place, and unlike
LL-SC up to 8 cache lines can participate. It is only this duration that is subject
to priority.
<
But the way SW uses these features is that some thread grabs some lock
and the grabbing of that lock is the beginning of the critical section--and
the grabbing of that lock is what is ATOMIC.
<
When the primitives in My 66000 are used to "grab a lock" the duration of
the grabbing is 1-or-2 instructions, whereas the critical section that follows
is of unbounded length. It is the grabbing of the lock that is subject to priority,
and once the lock has been grabbed, the critical section can proceed apace.
<
My 66000 ATOMIC events can be significantly more powerful--such as moving
an element from one place to another is a single event--which requires 5 cache
lines to participate. My 66000 LL-SC equivalents can implement LL-SC, TS, TTS,
CAS, double compare, single swap, double compare double swap, double compare
triple swap, .....
<
But if you use these the way SW typically uses the atomic instructions on other
architectures, the duration of when priority is considered is only the grabbing of
the lock an dis not associated with the critical section that successful grabbling
of the lock enabled.
<
> --
> - Stephen Fuld
> (e-mail address disguised to prevent spam)

Re: Misc: Design tradeoffs in virtual memory systems...

<c901ee83-8b2d-4f6a-a4a3-6877a61bd1e3n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32518&group=comp.arch#32518

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:622a:54e:b0:3f4:dfbd:820c with SMTP id m14-20020a05622a054e00b003f4dfbd820cmr1844097qtx.4.1685567343008;
Wed, 31 May 2023 14:09:03 -0700 (PDT)
X-Received: by 2002:a4a:2c92:0:b0:54f:9f36:f14b with SMTP id
o140-20020a4a2c92000000b0054f9f36f14bmr2183754ooo.0.1685567342755; Wed, 31
May 2023 14:09:02 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!2.eu.feeder.erje.net!feeder.erje.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: Wed, 31 May 2023 14:09:02 -0700 (PDT)
In-Reply-To: <u4vj9n$25m1c$1@newsreader4.netcologne.de>
Injection-Info: google-groups.googlegroups.com; posting-host=2a0d:6fc2:55b0:ca00:28bd:37ed:cfb8:cb05;
posting-account=ow8VOgoAAAAfiGNvoH__Y4ADRwQF1hZW
NNTP-Posting-Host: 2a0d:6fc2:55b0:ca00:28bd:37ed:cfb8:cb05
References: <u4por8$3tugb$1@dont-email.me> <Ia3cM.3440031$iU59.2338510@fx14.iad>
<u4vj9n$25m1c$1@newsreader4.netcologne.de>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <c901ee83-8b2d-4f6a-a4a3-6877a61bd1e3n@googlegroups.com>
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
From: already5chosen@yahoo.com (Michael S)
Injection-Date: Wed, 31 May 2023 21:09:02 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Michael S - Wed, 31 May 2023 21:09 UTC

On Sunday, May 28, 2023 at 4:02:07 PM UTC+3, Thomas Koenig wrote:
> Scott Lurndal <sc...@slp53.sl.home> schrieb:
>
> >> Power and PowerPC
>
> [...]
>
> > Obsolete CPUs, all designed three decades ago.
>
> Power10 became available in 2021, and Power11 (presumably) is on the
> way; patches are already appearing in gcc.

And, of course, both of them have HW-managed TLBs.

POWER10 hardware page walkers has not one but *two* modes of operation.
Hashed Page Table (HPT) mode is here in order to support old versions of AIX.
Radix mode is very similar to x86-64/ARM64 and used by Linux.
I don't know which of them used by newest AIX.
Also I don't know if POWER11 still supports HPT.

On POWER10, when a TLB miss occurs, up to four page-walk requests can be
processed concurrently, which, I think, at least matches capabilities of big
x86-64 and ARM64 cores and may be even exceeds them.

Re: Misc: Design tradeoffs in virtual memory systems...

<u58eeh$2gmsm$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32519&group=comp.arch#32519

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: cr88192@gmail.com (BGB)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Wed, 31 May 2023 16:33:04 -0500
Organization: A noiseless patient Spider
Lines: 268
Message-ID: <u58eeh$2gmsm$1@dont-email.me>
References: <u4por8$3tugb$1@dont-email.me> <u55psg$23uqp$1@dont-email.me>
<u55s8r$mmj$1@reader1.panix.com>
<b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
<u57d3k$1mt$1@reader1.panix.com> <u58001$2f7p9$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 31 May 2023 21:33:05 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="a0d7a169597a070063d59e531f460720";
logging-data="2644886"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX183G3tW7eNVWA5rT1w7iaCP"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.11.2
Cancel-Lock: sha1:xMoIwHZ0RrBYog/jANKEmZVTEso=
In-Reply-To: <u58001$2f7p9$1@dont-email.me>
Content-Language: en-US
 by: BGB - Wed, 31 May 2023 21:33 UTC

On 5/31/2023 12:26 PM, BGB wrote:
> On 5/31/2023 7:04 AM, Dan Cross wrote:
>> In article <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>,
>> MitchAlsup  <MitchAlsup@aol.com> wrote:
>>> On Tuesday, May 30, 2023 at 5:10:39 PM UTC-5, Dan Cross wrote:
>>>> In article <u55psg$23uqp$1...@dont-email.me>,
>>>> BGB-Alt <bohannonin...@gmail.com> wrote:
>>>>> On 5/30/2023 2:47 PM, Dan Cross wrote:
>>>>>> In article <u55c48$226ac$1...@dont-email.me>, BGB
>>>>>> <cr8...@gmail.com> wrote:
>>>>>>> I also mentioned that for all this I was *not* talking about an
>>>>>>> ISA for
>>>>>>> servers or data-centers, or even PC class systems, but was instead
>>>>>>> mostly focusing on embedded systems.
>>>>>>
>>>>>> Yup. Which seemed very odd when you posted things like this:
>>>>>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/qhN0N1_nAQAJ
>>>>>> in which you said,
>>>>>>
>>>>>> |Software cost is usually considered "virtually free" in
>>>>>> comparison to
>>>>>> |hardware. So what if the virtual memory subsystem needs a few
>>>>>> more kB
>>>>>> |due to a more complex hardware interface?, ...
>>>>>> |
>>>>>> |Would care more about performance if my benchmarks showed it
>>>>>> "actually
>>>>>> |mattered" in terms of macro-scale performance.
>>>>>>
>>>>>> If, as you acknowledge, you aren't familiar with the problem
>>>>>> space, why make such statements?
>>>>>
>>>>> I have implemented virtual memory subsystems, and virtual memory
>>>>> *does*
>>>>> matter to some extent in my use-cases.
>>> <
>>>> Yes, but we were talking about server workloads. I'm fairly
>>>> certain we made that clear.
>>> <
>>> I an not so sure we are talking server workloads, but I am sure we
>>> are not
>>> talking about "small memory few application" design points. I guess I
>>> would use the term "General Purpose workloads".
>>
>> We were in alt.os.development.  The entire thing evolved out of
>> a discussion about x86S.  Indeed, in hist first post on the
>> matter, BGB suggested his BJX2 as a replacement for x86:
>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/gIeuGffeCAAJ
>>
>> In which he says,
>>
>> |Ironically, if one goes over to software managed TLB, then the whole
>> |"nested page table" thing can disappear into the noise (as it is all
>> |software).
>>
>> Which was the genesis of this entire thread of discussion: We
>> were explicitly talking about server-class CPUs.  If he wants to
>> backtrack now and talk about embedded processors, whatever, but
>> that's certainly not how the discussion started.
>>
>
> I missed that point, it seems...
> And/or forgot, I am not sure which.
>
>
> But, yeah, I guess maybe one can argue it doesn't make sense for server
> class CPUs, but there are uses for emulation/virtualization in embedded
> contexts as well (I had more thought of virtualization more like
> "emulation, but with hardware accelerated memory access").
>

So, not so much "whatever it is exactly they are using virtualization
for in servers", and more like "multi-way virtual console for running
retro games" (with "virtualization" being more understood as using
hardware-accelerated address translation, rather than software emulating
every memory access).

Say, if you could emulate MS-DOS and era-appropriate games, or maybe
emulate a PlayStation or Dreamcast, etc...

Where, say, if sensibly designed, the underlying hardware shouldn't
hinder emulating the various hardware behavior and addressing schemes
used by the various types of game consoles and other things.

Not all of which use page tables, nor even necessarily particularly
linear addressing schemes. But, do generally use schemes defined for the
original hardware in question.

It doesn't seem desirable to directly emulate nearly every one of the
possible addressing schemes directly in hardware. But, say, one wants
hardware that can mimic the various addressing schemes that may be in use.

Or, basically, sort of like an N-way multi-architecture virtual machine...

At the moment, this is still all a bit hypothetical though.

>
> Say, sort of like what is used in something like the Dolphin emulator
> (for Game Cube and Wii), which tries to give the emulator its own native
> address space on the hosts CPU, rather than emulating all of the memory
> accesses.
>

IIRC, it was something like (on capable hardware) they create a
dedicated virtual address space which can mimic the native address space
used by the game consoles.

When this sort of thing is done, apart from inefficiencies in the JIT
translation or emulating features which don't map from one ISA to
another, it being possible to get "near native" performance.

> One could conceivably use it as well in something like a "retro console"
> or similar.
>
>
> One could likely emulate x86 to good effect in any case, like what
> Transmeta did.
>
> I don't think the point was that BJX2 would replace x86 directly, but
> used more like an emulator, but (I don't remember anyways) thinking of
> that having been in a server context (as opposed to, say, something more
> like DOSBox or QEMU).
>

But, yeah, IIRC, part of my motivation for the original line of thinking
is that, once x86-64 drops the 'x86' part, it has effectively lost a big
part of why a person might want to use x86 in the first place (versus,
say, ARM or RISC-V).

Namely: Backwards compatibility with older 32-bit era software, and/or
the ability to set up "retro boxes" running MS-DOS and similar.

Though, did see a video with a guy basically going through a lot of
hassle trying to get MS-DOS running effectively on a Core 2 (and the
issue that most more-modern audio chipsets lack backwards compatibility
with Sound-Blaster and Adlib). And, trying to hack around the Core 2
being too fast and breaking the delay-loops used in a lot of older games
(setting the CPU clock speed as slow as possible, and the memory latency
as high as possible), ...

But, apparently, trying to run MS-DOS "natively" on anything much newer
being an exercise in futility.

AFAIK, ARM could (in theory) do a pretty good emulation layer for x86
(glacial DOSBox performance notwithstanding), but is not an open ISA.

RISC-V is an open ISA, but I am skeptical about how high performance an
emulator one could implement on it (short of significant ISA extensions).

What all does this leave as alternatives?...

Granted, most of the faster targets aren't going to work on current
FPGAs, so this part is hypothetical in that one would likely need an
ASIC implementation of the processors.

At present, an ASIC implementation of BJX2 probably isn't going to
happen though.

And, say, there are limits as to what kinds of hardware one can emulate
directly in an FPGA (say, in something like the MiSTer project), due
mostly to limitations in FPGA size and the maximum clock-speeds one can
support.

....

>
>
>>>>> There is also a difference between "claiming to be an expert" and "not
>>>>> knowing anything whatsoever".
>>> <
>>>> I never said you don't know anything whatsoever. I said you
>>>> would do well not to assume that you know more than you do; this
>>>> advice is universal.
>>> <
>>> Universal and nearly universally ignored.......
>>
>> Indeed.  I myself an guilty.
>>
>>>>> Just not to the extent that one needs to care about how its
>>>>> performance
>>>>> scales to something like a server or data-center.
>>>>>
>>>>> Think something with say 128 or 256 MB of RAM.
>>>>> Not kB, and not GB.
>>> <
>>>> When I started out, we could fit 30-40 interactive timesharing
>>>> users on a VAX 8550 with 32 MiB of RAM, and departmental file
>>>> servers had about 128MiB of RAM. We cared very much how
>>>> performance scaled on such systems.
>>> <
>>> We got 8 people on a PDP-8 !! 10 people on a PDP-10, I and 30 people
>>> on a System 360/67 with 22 disk drives. Although if you wanted real
>>> performance from the /67 you showed up at 3:00 AM......
>>> <
>>>>> You may still have a few GB of virtual address space though (and a few
>>>>> GB of pagefile).
>>>> You keep talking about paging to secondary storage; you brought
>>>> that up in alt.os.development and are talking about it again.
>>>> It seems entirely irrelevant.
>>>>> There are plenty of embedded systems where one still has a need for
>>>>> virtual memory.
>>>>>
>>>>> But, also ones where it may make sense to directly map things to
>>>>> underlying pages (without going through the pagefile), and to run
>>>>> multiple programs in a shared address space, etc.
>>>> I don't know why you keep talking about "the pagefile". Do you
>>>> think that use of a "pagefile" is necessary for using paged
>>>> virtual memory and hardware page tables?
>>>>>> Or when you said,
>>>>>>
>>>>>> |Most would not likely consider needing to use a few additional
>>>>>> lookup
>>>>>> |tables or similar to be a significant issue.
>>>>>>
>>>>>> here:
>>>>>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/D3kUmGxHBgAJ
>>>>>>
>>>>>> even though we'd been telling you that it _did_ matter?
>>>>>
>>>>> ASID remapping tables still don't necessarily imply server or
>>>>> data-center workloads.
>>> <
>>> I brought u the G-bit and ASIDs in order to expose a poor* design choice
>>> made oh so long ago. I brought it up to illustrate that what seemed to
>>> be a good-thing way back then, has morphed into another attack vector
>>> today (or another imposition of HyperVisor activities.}
>>> <
>>> ASIDs are used to make the TLB/MMU more efficient, and occasionally
>>> the upper layers of the cache hierarchy.
>>> <
>>> (*) where it was not until the advent of Hypervisors that the choice
>>> went from "a good addition" to "oh crap we did that to ourselves"
>>> {moderated, of course, by EricP's comments.}
>>> <
>>>> Again, that was the context; specifically, we were talking about
>>>> hypervisors. This was explained to you. You disagreed. Near
>>>> as I can tell, you don't have much relevant experience or
>>>> theoretical background on which to base such disagreement.
>>> <
>>>>> They also don't necessarily mean that I am overly concerned with
>>>>> shaving
>>>>> a few kB off the OS kernel, nor are things "totally wrecked" by how
>>>>> many
>>>>> clock-cycles are spent in the TLB Miss ISR (within reason).
>>> <
>>>> If you want to build an ISA for embedded applications with the
>>>> set of properties that you have implemented, have at it. But
>>>> recognize what, exactly, it actually is.
>>> <
>>> and continue to caveat it for what it is.
>>
>> Indeed.  And not draw inferences from that to server-class
>> workloads.
>>
>>     - Dan C.
>>
>


Click here to read the complete article
Re: Misc: Design tradeoffs in virtual memory systems...

<u58h1g$2h169$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32520&group=comp.arch#32520

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: cr88192@gmail.com (BGB)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Wed, 31 May 2023 17:17:19 -0500
Organization: A noiseless patient Spider
Lines: 66
Message-ID: <u58h1g$2h169$1@dont-email.me>
References: <u4por8$3tugb$1@dont-email.me>
<Ia3cM.3440031$iU59.2338510@fx14.iad>
<u4vj9n$25m1c$1@newsreader4.netcologne.de>
<c901ee83-8b2d-4f6a-a4a3-6877a61bd1e3n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 31 May 2023 22:17:20 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1a7264050c91b7a070a45b2f6739bf59";
logging-data="2655433"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1++P9lNKGND/k5wcg+tgEnU"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.11.2
Cancel-Lock: sha1:aVBALoyQnuEUYHV+aHZFtlYQk7M=
In-Reply-To: <c901ee83-8b2d-4f6a-a4a3-6877a61bd1e3n@googlegroups.com>
Content-Language: en-US
 by: BGB - Wed, 31 May 2023 22:17 UTC

On 5/31/2023 4:09 PM, Michael S wrote:
> On Sunday, May 28, 2023 at 4:02:07 PM UTC+3, Thomas Koenig wrote:
>> Scott Lurndal <sc...@slp53.sl.home> schrieb:
>>
>>>> Power and PowerPC
>>
>> [...]
>>
>>> Obsolete CPUs, all designed three decades ago.
>>
>> Power10 became available in 2021, and Power11 (presumably) is on the
>> way; patches are already appearing in gcc.
>
> And, of course, both of them have HW-managed TLBs.
>
> POWER10 hardware page walkers has not one but *two* modes of operation.
> Hashed Page Table (HPT) mode is here in order to support old versions of AIX.
> Radix mode is very similar to x86-64/ARM64 and used by Linux.
> I don't know which of them used by newest AIX.
> Also I don't know if POWER11 still supports HPT.
>
> On POWER10, when a TLB miss occurs, up to four page-walk requests can be
> processed concurrently, which, I think, at least matches capabilities of big
> x86-64 and ARM64 cores and may be even exceeds them.

Yeah, it soon became apparent (from more looking) that my initial survey
and classification was flawed (it was based mostly on quick-and-dirty
web-searches, as my first-hand experience isn't quite that extensive).

Power and PowerPC apparently using different strategies based on the
model (rather than one strategy across the whole processor line).

IA-64 using Inverted Page Tables, rather the SW TLB.

....

I had started looking at possibly adding "Inverted Page Table" support
to BJX2, as it most closely matches the existing architecture and
implementation.

There are traditional page-tables as well, but at present it seems
better "at the moment" to leave these up to software.

Had specified a "Hash+N" table strategy (1), which will try to at least
be viable for a direct hardware page-walker implementation (while
avoiding the ASLR + Addr96 = BAD issue).

But, harder is coming up with a good hashing scheme that remains
consistent across page-size and table depth (and would work well for
both a HW and SW implementation).

Current variants are mostly along the lines of "mask the high-address to
exclude the parts covered by the page table; and XOR the bits together",
but needs to be able to produce a 8, 10, or 12 bit hash (depending on
page size).

Though, one option being to XOR things down to 16-bits, and then use a
final XOR based on the page size.

1: Top-level as a hash table, with lower levels as conventional page table.

Re: Misc: Design tradeoffs in virtual memory systems...

<9WPdM.283239$LAYb.4029@fx02.iad>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32521&group=comp.arch#32521

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx02.iad.POSTED!not-for-mail
From: ThatWouldBeTelling@thevillage.com (EricP)
User-Agent: Thunderbird 2.0.0.24 (Windows/20100228)
MIME-Version: 1.0
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
References: <u4por8$3tugb$1@dont-email.me> <Ia3cM.3440031$iU59.2338510@fx14.iad> <u4vj9n$25m1c$1@newsreader4.netcologne.de> <hHLcM.4041635$GNG9.1173433@fx18.iad> <u50hb0$ijs$1@gal.iecc.com> <2023May29.142305@mips.complang.tuwien.ac.at> <jV1dM.3731948$vBI8.2298283@fx15.iad> <u53eoq$1mvgs$1@dont-email.me> <_3ndM.631657$Ldj8.394529@fx47.iad> <u554sj$21b8t$1@dont-email.me> <qyrdM.2246499$t5W7.1019460@fx13.iad> <c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com> <xULdM.3806001$vBI8.2682307@fx15.iad> <8c9a1868-5d21-4cb9-b6be-69b92840e8b5n@googlegroups.com>
In-Reply-To: <8c9a1868-5d21-4cb9-b6be-69b92840e8b5n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 53
Message-ID: <9WPdM.283239$LAYb.4029@fx02.iad>
X-Complaints-To: abuse@UsenetServer.com
NNTP-Posting-Date: Wed, 31 May 2023 22:32:37 UTC
Date: Wed, 31 May 2023 18:30:11 -0400
X-Received-Bytes: 3723
 by: EricP - Wed, 31 May 2023 22:30 UTC

MitchAlsup wrote:
> On Wednesday, May 31, 2023 at 12:57:52 PM UTC-5, EricP wrote:
>> MitchAlsup wrote:
>>> I recently added process priority to my ATOMIC feature and I am thinking
>>> about adding privilege level, too::
>>> <
>>> If a higher priority process accesses a cache line participating in an ATOMIC
>>> event, the lower priority process holding this line fails its ATOMIC event and
>>> the higher priority process gets to make forward progress.
>>> <
>>> If a lower priority process accesses a cache line participating in an ATOMIC
>>> event, the lower priority process fails its ATOMIC event and the higher
>>> priority process gets to continue to make forward progress.
>>> <
>>> If a process receives a NaK and was attempting an ATOMIC event, then
>>> the event fails (and you start over at the top), if it was not attempting
>>> an event, then the access is restarted. Only a process attempting an
>>> ATOMIC event that has already touched all of its cache lines can
>>> respond with a NaK.
> <
>> Allowing priority to jump ahead in a service queue removes any
>> bounded delay guarantees for the lower priority and allows starvation.
>> I think this priority feature should be an option selectable at the
>> start of each transaction.
> <
> What do you do when the lower priority thread does not want said
> option, but the higher priority thread does ?
> <
> Also note: If you don't do something like this, you get more priority
> inversion, where lower priority threads steel cycles from higher priority
> threads.

I think it is a good idea - yes, it is the difference between being
priority inversion oblivious (PIO) and priority inversion aware (PIA)
and I think both are valid.

My knee jerk concern is PIA could make ESM less usable in real time contexts,
either by making transactions have unbounded delay or by forcing users to
raise their priority to a common level before and lower it after to
ensure predictable behavior and negate much of ESM's advantage.

And I don't think the scenario you describe is likely -
that threads would share some virtual space, have common data structures,
coordinate their locking and updates in common access code,
but then disagree as to whether it should use PIO or PIA.

Also it is easily resolvable. This only matters on collisions:
- If both are oblivious use fifo.
- If both are aware choose higher priority, if equal priority use fifo.
- if aware and oblivious, pick the one that cares and choose aware.

Re: Misc: Design tradeoffs in virtual memory systems...

<0mQdM.3421903$iS99.1947318@fx16.iad>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32522&group=comp.arch#32522

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!newsfeed.hasname.com!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx16.iad.POSTED!not-for-mail
X-newsreader: xrn 9.03-beta-14-64bit
Sender: scott@dragon.sl.home (Scott Lurndal)
From: scott@slp53.sl.home (Scott Lurndal)
Reply-To: slp53@pacbell.net
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Newsgroups: comp.arch
References: <u4por8$3tugb$1@dont-email.me> <jV1dM.3731948$vBI8.2298283@fx15.iad> <u53eoq$1mvgs$1@dont-email.me> <_3ndM.631657$Ldj8.394529@fx47.iad> <u554sj$21b8t$1@dont-email.me> <qyrdM.2246499$t5W7.1019460@fx13.iad> <c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com> <xULdM.3806001$vBI8.2682307@fx15.iad> <u5864b$2frfb$1@dont-email.me> <4c92802d-36ff-4f3f-984f-570c5ded2432n@googlegroups.com> <YENdM.3421875$iS99.2872394@fx16.iad> <bdbbaa4b-1692-4649-8087-843b3623e323n@googlegroups.com>
Lines: 14
Message-ID: <0mQdM.3421903$iS99.1947318@fx16.iad>
X-Complaints-To: abuse@usenetserver.com
NNTP-Posting-Date: Wed, 31 May 2023 23:02:20 UTC
Organization: UsenetServer - www.usenetserver.com
Date: Wed, 31 May 2023 23:02:20 GMT
X-Received-Bytes: 1549
 by: Scott Lurndal - Wed, 31 May 2023 23:02 UTC

MitchAlsup <MitchAlsup@aol.com> writes:
>On Wednesday, May 31, 2023 at 2:57:48=E2=80=AFPM UTC-5, Scott Lurndal wrote=
>:

>> One of the acid tests at a national lab that will go unnamed is for=20
>> all cores to pound on a single cache line (using a spin lock). Starvation=
>=20
>> was a 'fail'.=20
><
>Are the contenders of the same priority ?? Are they of the same Privilege ?=

Yes. Although I'm not aware of either priority or privilege
being factored into Intel or AMD's coherency protocols.

Re: Misc: Design tradeoffs in virtual memory systems...

<9368f5a5-1a69-4265-ab8a-832fd4b508cbn@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32523&group=comp.arch#32523

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:8d2:b0:626:2d7e:41f1 with SMTP id da18-20020a05621408d200b006262d7e41f1mr1182829qvb.10.1685574450304;
Wed, 31 May 2023 16:07:30 -0700 (PDT)
X-Received: by 2002:a05:6870:d344:b0:19f:a71b:d1ad with SMTP id
h4-20020a056870d34400b0019fa71bd1admr1125895oag.0.1685574450013; Wed, 31 May
2023 16:07:30 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Wed, 31 May 2023 16:07:29 -0700 (PDT)
In-Reply-To: <9WPdM.283239$LAYb.4029@fx02.iad>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7d68:73e:9050:f2a1;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7d68:73e:9050:f2a1
References: <u4por8$3tugb$1@dont-email.me> <Ia3cM.3440031$iU59.2338510@fx14.iad>
<u4vj9n$25m1c$1@newsreader4.netcologne.de> <hHLcM.4041635$GNG9.1173433@fx18.iad>
<u50hb0$ijs$1@gal.iecc.com> <2023May29.142305@mips.complang.tuwien.ac.at>
<jV1dM.3731948$vBI8.2298283@fx15.iad> <u53eoq$1mvgs$1@dont-email.me>
<_3ndM.631657$Ldj8.394529@fx47.iad> <u554sj$21b8t$1@dont-email.me>
<qyrdM.2246499$t5W7.1019460@fx13.iad> <c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com>
<xULdM.3806001$vBI8.2682307@fx15.iad> <8c9a1868-5d21-4cb9-b6be-69b92840e8b5n@googlegroups.com>
<9WPdM.283239$LAYb.4029@fx02.iad>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9368f5a5-1a69-4265-ab8a-832fd4b508cbn@googlegroups.com>
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
From: MitchAlsup@aol.com (MitchAlsup)
Injection-Date: Wed, 31 May 2023 23:07:30 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 5065
 by: MitchAlsup - Wed, 31 May 2023 23:07 UTC

On Wednesday, May 31, 2023 at 5:32:41 PM UTC-5, EricP wrote:
> MitchAlsup wrote:
> > On Wednesday, May 31, 2023 at 12:57:52 PM UTC-5, EricP wrote:
> >> MitchAlsup wrote:
> >>> I recently added process priority to my ATOMIC feature and I am thinking
> >>> about adding privilege level, too::
> >>> <
> >>> If a higher priority process accesses a cache line participating in an ATOMIC
> >>> event, the lower priority process holding this line fails its ATOMIC event and
> >>> the higher priority process gets to make forward progress.
> >>> <
> >>> If a lower priority process accesses a cache line participating in an ATOMIC
> >>> event, the lower priority process fails its ATOMIC event and the higher
> >>> priority process gets to continue to make forward progress.
> >>> <
> >>> If a process receives a NaK and was attempting an ATOMIC event, then
> >>> the event fails (and you start over at the top), if it was not attempting
> >>> an event, then the access is restarted. Only a process attempting an
> >>> ATOMIC event that has already touched all of its cache lines can
> >>> respond with a NaK.
> > <
> >> Allowing priority to jump ahead in a service queue removes any
> >> bounded delay guarantees for the lower priority and allows starvation.
> >> I think this priority feature should be an option selectable at the
> >> start of each transaction.
> > <
> > What do you do when the lower priority thread does not want said
> > option, but the higher priority thread does ?
> > <
> > Also note: If you don't do something like this, you get more priority
> > inversion, where lower priority threads steel cycles from higher priority
> > threads.
<
> I think it is a good idea - yes, it is the difference between being
> priority inversion oblivious (PIO) and priority inversion aware (PIA)
> and I think both are valid.
>
> My knee jerk concern is PIA could make ESM less usable in real time contexts,
> either by making transactions have unbounded delay or by forcing users to
> raise their priority to a common level before and lower it after to
> ensure predictable behavior and negate much of ESM's advantage.
<
The alternative was to loan the priority of the process with late interference
and higher priority to the process with the lock so the one with the lock make
progress faster than his nominal priority. {The problem is when the extra
priority is not needed and one has a PIO thread, how do you get it back ??}
>
> And I don't think the scenario you describe is likely -
> that threads would share some virtual space, have common data structures,
> coordinate their locking and updates in common access code,
> but then disagree as to whether it should use PIO or PIA.
<
Hey, I'm a HW guy just trying to figure out what functionality is needed to
allow SW sort it all out.
>
> Also it is easily resolvable. This only matters on collisions:
> - If both are oblivious use fifo.
> - If both are aware choose higher priority, if equal priority use fifo.
> - if aware and oblivious, pick the one that cares and choose aware.

Re: Misc: Design tradeoffs in virtual memory systems...

<eeaf542f-9049-4766-8dde-476d4899399en@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32524&group=comp.arch#32524

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:aaa:b0:626:1be9:8e7e with SMTP id ew10-20020a0562140aaa00b006261be98e7emr1299005qvb.13.1685574829975;
Wed, 31 May 2023 16:13:49 -0700 (PDT)
X-Received: by 2002:a05:6870:5aaf:b0:199:ff23:a90e with SMTP id
dt47-20020a0568705aaf00b00199ff23a90emr2372521oab.6.1685574829731; Wed, 31
May 2023 16:13:49 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Wed, 31 May 2023 16:13:49 -0700 (PDT)
In-Reply-To: <0mQdM.3421903$iS99.1947318@fx16.iad>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:7d68:73e:9050:f2a1;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:7d68:73e:9050:f2a1
References: <u4por8$3tugb$1@dont-email.me> <jV1dM.3731948$vBI8.2298283@fx15.iad>
<u53eoq$1mvgs$1@dont-email.me> <_3ndM.631657$Ldj8.394529@fx47.iad>
<u554sj$21b8t$1@dont-email.me> <qyrdM.2246499$t5W7.1019460@fx13.iad>
<c6089f92-382c-4582-86be-7ad59bfcfc0cn@googlegroups.com> <xULdM.3806001$vBI8.2682307@fx15.iad>
<u5864b$2frfb$1@dont-email.me> <4c92802d-36ff-4f3f-984f-570c5ded2432n@googlegroups.com>
<YENdM.3421875$iS99.2872394@fx16.iad> <bdbbaa4b-1692-4649-8087-843b3623e323n@googlegroups.com>
<0mQdM.3421903$iS99.1947318@fx16.iad>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <eeaf542f-9049-4766-8dde-476d4899399en@googlegroups.com>
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
From: MitchAlsup@aol.com (MitchAlsup)
Injection-Date: Wed, 31 May 2023 23:13:49 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 3100
 by: MitchAlsup - Wed, 31 May 2023 23:13 UTC

On Wednesday, May 31, 2023 at 6:02:24 PM UTC-5, Scott Lurndal wrote:
> MitchAlsup <Mitch...@aol.com> writes:
> >On Wednesday, May 31, 2023 at 2:57:48=E2=80=AFPM UTC-5, Scott Lurndal wrote=
> >:
>
> >> One of the acid tests at a national lab that will go unnamed is for=20
> >> all cores to pound on a single cache line (using a spin lock). Starvation=
> >=20
> >> was a 'fail'.=20
> ><
> >Are the contenders of the same priority ?? Are they of the same Privilege ?=
>
> Yes. Although I'm not aware of either priority or privilege
> being factored into Intel or AMD's coherency protocols.
<
Yes, priority and privilege are not considered in AMD or Intel (and I suspect
ARM). However, I was looking at a "bus interconnect" that is cache-line wide
(1-beat is 512-bits) and thinking that a 8-bit command, 64-bit address and
a handful of other bits, there are a lot of bits left over, so it would create
no real disturbance on the "bus" is priority (6-bits) and/or privilege (2-bits)
tag long with the request.
<
And as I explained above, there is an ATOMIC event, and SW today mainly
uses the event to guard a critical section. It is only when you get into
CAS, DCAS,... where you are trying to perform "some" of the critical
section in the ATOMIC event (or not having a critical section at all).

Re: Misc: Design tradeoffs in virtual memory systems...

<u58o06$lij$1@reader1.panix.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32525&group=comp.arch#32525

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!panix!.POSTED.spitfire.i.gajendra.net!not-for-mail
From: cross@spitfire.i.gajendra.net (Dan Cross)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Thu, 1 Jun 2023 00:16:06 -0000 (UTC)
Organization: PANIX Public Access Internet and UNIX, NYC
Message-ID: <u58o06$lij$1@reader1.panix.com>
References: <u4por8$3tugb$1@dont-email.me> <b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com> <u57d3k$1mt$1@reader1.panix.com> <u58001$2f7p9$1@dont-email.me>
Injection-Date: Thu, 1 Jun 2023 00:16:06 -0000 (UTC)
Injection-Info: reader1.panix.com; posting-host="spitfire.i.gajendra.net:166.84.136.80";
logging-data="22099"; mail-complaints-to="abuse@panix.com"
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: cross@spitfire.i.gajendra.net (Dan Cross)
 by: Dan Cross - Thu, 1 Jun 2023 00:16 UTC

In article <u58001$2f7p9$1@dont-email.me>, BGB <cr88192@gmail.com> wrote:
>On 5/31/2023 7:04 AM, Dan Cross wrote:
>> We were in alt.os.development. The entire thing evolved out of
>> a discussion about x86S. Indeed, in hist first post on the
>> matter, BGB suggested his BJX2 as a replacement for x86:
>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/gIeuGffeCAAJ
>>
>> In which he says,
>>
>> |Ironically, if one goes over to software managed TLB, then the whole
>> |"nested page table" thing can disappear into the noise (as it is all
>> |software).
>>
>> Which was the genesis of this entire thread of discussion: We
>> were explicitly talking about server-class CPUs. If he wants to
>> backtrack now and talk about embedded processors, whatever, but
>> that's certainly not how the discussion started.
>>
>
>I missed that point, it seems...
>And/or forgot, I am not sure which.

The subject of the thread was "x86-S".

>But, yeah, I guess maybe one can argue it doesn't make sense for server
>class CPUs, but there are uses for emulation/virtualization in embedded
>contexts as well (I had more thought of virtualization more like
>"emulation, but with hardware accelerated memory access").

Emulation != Virtualization in this context
https://en.wikipedia.org/wiki/Popek_and_Goldberg_virtualization_requirements

- Dan C.

Re: Misc: Design tradeoffs in virtual memory systems...

<u58t0i$2lt0v$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=32527&group=comp.arch#32527

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: cr88192@gmail.com (BGB)
Newsgroups: comp.arch
Subject: Re: Misc: Design tradeoffs in virtual memory systems...
Date: Wed, 31 May 2023 20:41:35 -0500
Organization: A noiseless patient Spider
Lines: 98
Message-ID: <u58t0i$2lt0v$1@dont-email.me>
References: <u4por8$3tugb$1@dont-email.me>
<b1890135-df8e-4fd9-9127-d2fed8c9a797n@googlegroups.com>
<u57d3k$1mt$1@reader1.panix.com> <u58001$2f7p9$1@dont-email.me>
<u58o06$lij$1@reader1.panix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Thu, 1 Jun 2023 01:41:39 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1a7264050c91b7a070a45b2f6739bf59";
logging-data="2815007"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/yweJePiTDYLcwoIq9h0Z6"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.11.2
Cancel-Lock: sha1:GDhe/1HVsbxyrotkZ0O0OdJY8uw=
In-Reply-To: <u58o06$lij$1@reader1.panix.com>
Content-Language: en-US
 by: BGB - Thu, 1 Jun 2023 01:41 UTC

On 5/31/2023 7:16 PM, Dan Cross wrote:
> In article <u58001$2f7p9$1@dont-email.me>, BGB <cr88192@gmail.com> wrote:
>> On 5/31/2023 7:04 AM, Dan Cross wrote:
>>> We were in alt.os.development. The entire thing evolved out of
>>> a discussion about x86S. Indeed, in hist first post on the
>>> matter, BGB suggested his BJX2 as a replacement for x86:
>>> https://groups.google.com/g/alt.os.development/c/doFB22kNPJE/m/gIeuGffeCAAJ
>>>
>>> In which he says,
>>>
>>> |Ironically, if one goes over to software managed TLB, then the whole
>>> |"nested page table" thing can disappear into the noise (as it is all
>>> |software).
>>>
>>> Which was the genesis of this entire thread of discussion: We
>>> were explicitly talking about server-class CPUs. If he wants to
>>> backtrack now and talk about embedded processors, whatever, but
>>> that's certainly not how the discussion started.
>>>
>>
>> I missed that point, it seems...
>> And/or forgot, I am not sure which.
>
> The subject of the thread was "x86-S".
>

Where did either the linked article or thread prior to this point say it
was an exclusively server feature?...

It was talking about simplifying x86 to be x86-64 only, but nothing
really about servers or data-centers...

As I saw it, more like, x86-S kinda eliminates some of the main "selling
points" of "classic x86".

The only time I remember any of this "server stuff" came up (much later
in the thread), I said that it was outside the target domain of BJX2.

It would have been pointless to have been "covertly" talking about
servers only to be like, "yeah, no, that is not what I am doing here".

But, then again, it is not exactly like modern PCs are really all that
usable for retro-computing in the first place (with most of the PC
retro-computing community mostly trading in 20+ year old parts).

At this point, there isn't really much reason to keep using x86 apart
from inertia. You could have pretty much everything jump over to ARM or
similar and emulation, and if it were pulled off well, hardly anyone
would notice...

It has been a sinking ship for a while, like the need to resort to
emulators to run DOS or Win16 software on modern Windows (because MS
didn't add emulation for these as a built-in feature in the move to
64-bits).

Nevermind if the retro-computing guys mostly dislike emulation, and
instead want everything running on "original hardware" (well, except
if/when modern PCs become retro). (Say, "Start hoarding now, this stuff
will be gold in 25 or 30 years...", particularly the random/obscure "junk").

OTOH, just saw a video recently where someone was talking about their
difficulty getting ahold of an obscure variant of Game Boy knock-off
that was sold mostly in Brazil (AKA: "Cougar Boy"). (Kind of a flop when
it was new, rare and expensive now).

>> But, yeah, I guess maybe one can argue it doesn't make sense for server
>> class CPUs, but there are uses for emulation/virtualization in embedded
>> contexts as well (I had more thought of virtualization more like
>> "emulation, but with hardware accelerated memory access").
>
> Emulation != Virtualization in this context
> https://en.wikipedia.org/wiki/Popek_and_Goldberg_virtualization_requirements
>

Possibly, but this is not the only way I have seen the term used...

I was using it in a more narrow sense of "does not need to emulate
memory access and address translation entirely in software".

But, not necessarily in the sense of "does not require a JIT cache or
translation stages" (nor in the sense that the hardware interfaces
provided in the VM match those of the native machine).

Well, at least short of having some way to have a fully programmable
(software-defined) instruction decoder.

....


devel / comp.arch / Misc: Design tradeoffs in virtual memory systems...

Pages:12345678
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor