home .. forth .. nosc mail list archive ..

[NOSC] Steamer16 Q&A

On Tue, 24 Apr 2001 21:17:11 -0400 (EDT), Rick Hohensee wrote:


First, a gentle reminder: please try to keep the size of postings to a
minimum. My first reply on this thread was deleted by the server filter,
and Martin was good enough to intervene (thanks Martin), but that was
pushing my luck. In particular, I think that cutting out all but the
relevant portions of the message being replied to will go a long way to
conserving the server's resources.

> I'd heard a prominent Forther was thinking of doing a one-stack Forth, and
> I thought he was BSing me, but if the one stack was the parameter stack
> that would explain it. Your instruction counts for call/return are about
> proportional to how long one near call instruction actually takes on a 386
> anyway, since it's at some level doing the same things.

I once read somewhere that RISC design philosophy was to expose an
orthogonal microcode-like instuction set to compiler optimization, and
the MISC/NOSC machines we have seen so far do so as well, but in the
Forth tradition of small well-factored subroutines, or in the case of
Steamer, as comparitively memory-hungry assembler macros and
coarser-grained subroutine threading. In any event, synthesis of a
variety of addressing modes requires multiple instructions and clock
cycles. It's interesting how the comparisons pan out with respect to
CISCs like the x86. It costs you at one level or the other it seems.

> Linux has 60% more calls than returns. That's probably a LOT of functions
> that are in fact inline code that's being called. The subroutine threaded
> H3sm has 3 times the calls as returns though, since all thread words are
> mostly calls. If I did hardware I'd be looking into what I was talking to
> Jan Coombs about almost always doing a call on each instruction
> fetch. Then you can maybe get the return stack activity in parallel.

I haven't subscribed to comp.lang.forth, so I'm in the dark about H3sm.
Do you have a zipped archive you could send directly to me?

BTW, if there are any C compiler design gurus on the list, I am very
interested in an appraisal of Steamer16 as a target for a tiny,
integer-only flavor. I started on a Forth compiler, but code bloat and 
low performance set in very quickly and it turns out to be a poor 
marriage :(

Myron Plichota

To Unsubscribe from this list, send mail to Mdaemon@xxxxxxxxxxxxxxxxxx with:
unsubscribe NOSC
as the first and only line within the message body
Problems   -   List-Admin@xxxxxxxxxxxxxxxxxx
Main 4th site   -   http://www.