Deutsch   English   Français   Italiano  
<cfa0a9c4bda9421fee8ce512bdcd58bf@www.novabbs.org>

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

Path: ...!news.misty.com!weretis.net!feeder9.news.weretis.net!i2pn.org!i2pn2.org!.POSTED!not-for-mail
From: mitchalsup@aol.com (MitchAlsup1)
Newsgroups: comp.arch
Subject: Re: My 66000 and High word facility
Date: Sat, 17 Aug 2024 20:08:55 +0000
Organization: Rocksolid Light
Message-ID: <cfa0a9c4bda9421fee8ce512bdcd58bf@www.novabbs.org>
References: <v98asi$rulo$1@dont-email.me> <38055f09c5d32ab77b9e3f1c7b979fb4@www.novabbs.org> <v991kh$vu8g$1@dont-email.me> <2024Aug11.163333@mips.complang.tuwien.ac.at> <v9b57p$2rkrq$1@dont-email.me> <v9brm4$33kmd$1@dont-email.me> <e369e386b23628e5388e95b5a92af62d@www.novabbs.org> <v9jij9$lk6a$1@dont-email.me> <v9jjjn$lofu$1@dont-email.me> <v9k38n$rg2a$1@dont-email.me> <v9mklt$1air0$1@dont-email.me> <1bf2c13fc41cf8aeca4a746052c03ce3@www.novabbs.org> <v9oqjo$1k775$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Info: i2pn2.org;
	logging-data="2929737"; mail-complaints-to="usenet@i2pn2.org";
	posting-account="65wTazMNTleAJDh/pRqmKE7ADni/0wesT78+pyiDW8A";
User-Agent: Rocksolid Light
X-Rslight-Site: $2y$10$1rIdWOb7akzIz.CMGAqDwelj36EOj9YTLPWjFyv1TR3w2494tEnB6
X-Spam-Checker-Version: SpamAssassin 4.0.0
X-Rslight-Posting-User: ac58ceb75ea22753186dae54d967fed894c3dce8
Bytes: 3246
Lines: 50

On Sat, 17 Aug 2024 0:24:24 +0000, Brett wrote:

> MitchAlsup1 <mitchalsup@aol.com> wrote:
>>
>> When HW is doing the saves, it does them in a known order and
>> can mark the registers "in use" or "busy" instantaneously and
>> clear that status as data arrives. When SW is doing the same,
>> SW ahs to wait for the instruction to arrive and then do them
>> one-to-small numbers at a time. HW is not so constrained.
>
> Ok, so the hardware is smart enough.

The Instructions and the compiler's use of them were co-developed.

> But has anyone told the software guys?

Use HLLs and you don't have to.

> Of course convincing programmers to RTFM is futile. ;(

Done with Instructions in HW one has to convince exactly two
people; GCC code generator and LLVM code generator.
>
> If so this is the first I have heard that more registers is not bad for
> interrupt response time.

They are also bad for pipeline stage times.

> So we are back to finding any downsides for 64 registers in My 66000.

Encoding
pipeline staging
context switch times

For example, My 66000 current encoding has room for 8 instructions
in the FMAC category (4 in use) with 6-bit register specifiers
I would need 4 major OpCodes instead of 1.

For your 98%-ile source code, 32-registers is plenty.

> Lack of actual significant benefits is irrelevant, as all the programers
> are 100% convinced that it will help some of their code. ;)
>
>> For example a 1-wide machine with a 4-ported register file,
>> generally operated as 3R1W can be switched to 4R or 4W for
>> epilogue or prologue uses respectively. Simulation indicates
>> this gets rid of 47% of the cycles spent in prologue and
>> epilogue (combined compared to a sequence of stores and loads)
>> Simulation also indicates that 42% of the power is saved--
>> mainly from Tag and TLB non-access cycles.
>>