[comp.sys.transputer] Using the on-chip RAM as registers

jeremy@cs.adelaide.edu.au (Jeremy Webber) (11/14/90)

Something I've found problematic with current Transputers is the idea of "fast
on-chip RAM", not the RAM itself, but making optimal use of it on a system with
maybe 2M or 4M of code and data.  Relying on the programmer to work out which
functions/data to place there is a lot of work, and never likely to be as
optimal as implementing the RAM as an on-chip cache, handled by hardware,
instead.

It struck me that one way a compiler could make better use of the on-chip RAM
would be to treat the first few words like registers, and use standard
register-allocation techniques to put expression temps and currently-accessed
variables into it.  By allocating different addresses for each process, context
switch overhead could be eliminated when using this technique.

Are there any compilers (particularly for C) which do this?  Does anyone else
have thoughts as to what to do with the RAM?

As an aside to Inmos: will the H1 have an on-chip cache rather than on-chip
RAM?  It would be a real performance win.

Cheers,
	-jeremy
--
--
Jeremy Webber			   ACSnet: jeremy@chook.ua.oz
Digital Arts Film and Television,  Internet: jeremy@chook.ua.oz.au
3 Milner St, Hindmarsh, SA 5007,   Voicenet: +61 8 346 4534
Australia			   Papernet: +61 8 346 4537 (FAX)