[comp.sys.next] transputers

e122-cl@polonius.berkeley.edu (Timothy Kong) (12/15/88)

Simple question:  What are transputers?  

Someone mentioned them in a few articles back but never explained what exactly
they are.  I have heard talks about transputers' incredible processing power
and how adding one of them would drastically speed up your machine.  
Could somebody please elaborate.

jbn@glacier.STANFORD.EDU (John B. Nagle) (12/15/88)

In article <8304@pasteur.Berkeley.EDU> e122-cl@polonius.berkeley.edu (Timothy Kong) writes:
>Simple question:  What are transputers?  
>Someone mentioned them in a few articles back but never explained what exactly
>they are.  I have heard talks about transputers' incredible processing power
>and how adding one of them would drastically speed up your machine.  
>Could somebody please elaborate.

       The INMOS Transputer is a microprocessor from INMOS, an English
computer firm, designed especially for use as a component of parallel
computers.  One 32-bit transputer is roughly comparable to a M68020 (+- 50%).
But they are intended for use in large arrays, perhaps as many as 1024
processors.  The machines have special hardware to support inter-CPU
communication in such arrays.  Adding one of them is not particularly
useful, but adding many of them makes a supercomputer of sorts.  

       Add-on transputer boards (typically with 4 transputers to a board)
are available for the PC/AT and Mac II.  Larger arrays are available for
workstation-class machines.  INMOS offers an interesting language called
OCCAM for programming transputer arrays, but a modified C seems to be
replacing OCCAM.  In either case, one must deal with concurrency explictly.
The model is a non-shared memory MIMD machine, with relatively large
memory, typically 64KB to 1MB, per processor.  

       The transputer has been out for a few years now, and has a reputation
of being a solution looking for a problem.  If you have a problem that
slices up well into parallel transputer-sized units, it's a very effective
way to go.  But dividing up problems for it is difficult, OCCAM notwithstanding.
So it tends to be used as a component of special-purpose 
machines, like CT scanners, signal processing systems, and the like, rather
than as a general-purpose computing element.  This is the typical curse
of moderately-parallel machines.

       See comp.sys.transputer for more info.

					John Nagle

grabas@m.cs.uiuc.edu (12/16/88)

	Talking of transputers in a few words is hard, and I have very little 
time (Finals' week...). To have more information, you could read the 
Transputer notesfile. I don't know how it si called at berkeley; here (U of I) 
this notesfile is called comp.sys.next and the transputer one is called 
comp.sys.transputer. 

	A transputer is an integrated circuit comprising: 
	-A 32-bit RISC-like CPU
	-A 64-bits FPU (IEEE standard) 
	-A certain amount of on-chip memory (4K currently) 
	-A certain number of communication links for inter-transputers 
	 communication. Each link implements two DMA channels (one read, one 
	 write) between memory and a bit-serial line. the links work at up to 
	 20Mbits/ second; there are 4 of them on the current implementation 
	 (T800) 
	-A memory controller which allows the connection of a transputer do 
	 dynamic RAM without any additionnal logic (the controller takes care 
	 of the refresh cycles, etc...) 

	To sum-up, you can built a parallel machine using transputers 
connected one to the other with their links; you do not need any memory with 
your transputers because they have on-chip memory and can be booted from a 
link instead of from ROM. Anyway, if you want to boot them from ROM, or 
increase their memory using external memory chip, you do not need any 
extra logic (well, may be an address latch, because addresses and data are 
multiplexed on certain models) to run the system. 

		This may not be 100% clear and detailed, but I do not have a 
lot of time today... 

		Dominique Grabas, University of Illinois at U-C.