Warning: mysqli::__construct(): (HY000/1203): User howardkn already has more than 'max_user_connections' active connections in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\includes\artfuncs.php on line 21
Failed to connect to MySQL: (1203) User howardkn already has more than 'max_user_connections' active connections
Warning: mysqli::query(): Couldn't fetch mysqli in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\index.php on line 66
Article <8c40234e61f022a506f56f7422cf27c5@www.novabbs.org>
Deutsch   English   Français   Italiano  
<8c40234e61f022a506f56f7422cf27c5@www.novabbs.org>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!weretis.net!feeder9.news.weretis.net!i2pn.org!i2pn2.org!.POSTED!not-for-mail
From: mitchalsup@aol.com (MitchAlsup1)
Newsgroups: comp.arch
Subject: Re: is Vax adressing sane today
Date: Sun, 8 Sep 2024 00:52:25 +0000
Organization: Rocksolid Light
Message-ID: <8c40234e61f022a506f56f7422cf27c5@www.novabbs.org>
References: <vbd6b9$g147$1@dont-email.me> <memo.20240905225550.19028d@jgd.cix.co.uk> <2024Sep6.080535@mips.complang.tuwien.ac.at>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Info: i2pn2.org;
	logging-data="1240770"; mail-complaints-to="usenet@i2pn2.org";
	posting-account="65wTazMNTleAJDh/pRqmKE7ADni/0wesT78+pyiDW8A";
User-Agent: Rocksolid Light
X-Rslight-Site: $2y$10$Gf1oLpkaSUZ6vYOGB0jX/eSHOru9wN7Rqs1fTQVGHQXTyHEvM8.8e
X-Rslight-Posting-User: ac58ceb75ea22753186dae54d967fed894c3dce8
X-Spam-Checker-Version: SpamAssassin 4.0.0
Bytes: 2357
Lines: 35

On Fri, 6 Sep 2024 6:05:35 +0000, Anton Ertl wrote:

> jgd@cix.co.uk (John Dallman) writes:
>>Memory-to-memory instructions, in general, are hard to get to run fast
>>with today's processors and memory, simply because memory access times
>>are long enough for many register-to-register instructions to execute.
>
> Given modern OoO technology, even VAX can fly.  It does not matter
> whether, say,
>
> *a++ = *b++ + *c++;
>
> is encoded as 1 VAX instruction, or as 4 ARM A64 instructions, or as 7
> RISC-V instructions, what goes on inside the OoO engine is pretty
> similar in all cases, and so is the performance.

When I faced a similar set of desires, I had my movememory MM
instruction do::

     for( control_register = 0,
          control_register < Rs3,
          control+register+=size )
          rd[control_register] = rs1[control_register];

where size is determined by alignment, memory type (from PTE).
Thus, when a page fault or interrupt cuts the instruction in
the middle I don't have to recover any of the registers.

This also allows the instruction to be thrown over to the
Memory Function Unit and be performed in parallel with other
calculation instructions.

Getting back to the originating:: It is faster these days to
write::
     a[i] = b[i] + c[i];i++;
than the pre/post increment/decrement style of PDP-11.