josef@ugun21.UUCP (11/11/88)
Forgive me for my impertinence, the following question might sound like blasphemy to some of You, but I have had a discussion with my boss, and he posed this question: What distinguishes a Transputer from any other processor, especially if I take a, let's say 68030 or 32532, add 4 communication channels and write software to do processor-processor communication? What makes a Transputer so interesting? Josef Moellers paper mail: e-mail: c/o Nixdorf Computer AG USA: uunet!linus!nixbur!nixpbe!mollers.pad Abt. EG-3 !USA: mcvax!unido!nixpbe!mollers.pad Unterer Frankfurter Weg D-4790 Paderborn tel.: (+49) 5251 104691 Standard disclaimer: Blablabla opinion blablabla employer blablabla!
cme@cloud9.UUCP (Carl Ellison) (11/13/88)
In article <20000001@ugun21>, josef@ugun21.UUCP writes: > > What distinguishes a Transputer from any other processor, especially if > I take a, let's say 68030 or 32532, add 4 communication channels > and write software to do processor-processor communication? > What makes a Transputer so interesting? Aside from the MUCH lower chip count (& don't forget memory interface chips), the transputer has a very fast process switch and nearly free inter-process communications. Meanwhile, occam is designed for people who dream distributed systems as opposed to others who dream von Neumann and then have to coerce their one thread onto multiple processors. In fact, that's the key transputer characteristic as well. It's designed for the way I think. That's enough for me. ...for you? --Carl Ellison ...!harvard!anvil!es!cme (normal mail address) ...!ulowell!cloud9!cme (usenet news reading) (standard disclaimer)
grabas@m.cs.uiuc.edu (11/13/88)
What make the Transputer interesting is: -- its integration (communication, multitasking, Floating-point on the same chip) ==> speed -- its RISC-like architecture (few simple short and fast instructions) -- its built-in memory controller: The Transputer can drive DRAM with no additionnal circuitry. -- The speed and simplicity of its multitasking and communication due to the fact that they are integrated at the processor-instruction level. To sum-up, the Transputer is great because it is ONE Transputer instead of being MANY circuits + software. One of the main things I reproach to the Transputer is that it does not support virtual memory (vital to build any reasonnable stand-alone machine). If anybody from INMOS reads this note, please, could he tell me when it will be done (or why it shouldn't be done...)? Dominique Grabas, University of Illinois at Urbana-Champaign
jxdl@lanl.gov (Jerry DeLapp) (11/16/88)
In article <20000001@ugun21>, josef@ugun21.UUCP writes: [stuff deleted...] > I have had a discussion with my boss, and he posed this question: > > What distinguishes a Transputer from any other processor, especially > if I take a, let's say 68030 or 32532, add 4 communication channels > and write software to do processor-processor communication? > What makes a Transputer so interesting? > > Josef Moellers Well, you might say that the most interesting thing is that the transputer does everything that his gob of 68xxx and communications hardware and software does in one chip! Just the software effort involved in the "roll your own" version would be an ugly cost. Plus: The transputer is fast (about the equivalent of a vax or sun 3 now, and getting faster). The communications are very fast, have very low startup overheads, and operate without any need of the CPU after setup. This is not easy to accomplish in discrete silicon with software. In addition, the technology used for the communications allows for long (about 30-40 feet) cable runs. Memory management of the channels vs processor requirements are done on chip. The (T800) transputer has on-chip floating-point support. The context-switch time on a transputer makes the 68xxx look like a pig. The transputer is RISC technology. The small instruction set means that it's fairly easy to port compilers to it (although INMOS seems to be real stodgy about realizing that the real world wants C and FORTRAN). INMOS has good plans for the future growth and enhancement of the chip series. (Now if they'd just do the same with the software). OPINION: The transputer will probably define the future of parallel computing for the next 5 years or so IF IF IF INMOS will wake up and realize that the OCCAM language is a significant hindrance to acceptance of their product in the US market. OCCAM is a language best suited to CS weenies (BTW IR1, so I can say that :-). P.S. I am not an INMOS employee. I have had significant experience with the transputer in a large scale parallel machine. The transputer hardware works well, the software sucks rocks. OCCAM is the single biggest roadblock to general acceptance of transputer based systems. Most people that I introduced to the OCCAM language system said "Come back when you have 'real' languages". I am certain that we will not solve the problems of broad acceptance and understanding of parallel processing's capabilities as long as OCCAM is the context. -- _ /| The opinions here are my own, and even I don't agree with me :-) \'o.O' I am not an employee of LANL, I just use their computers. =(___)= I stole the .sig file, but I did not shoot no deputeeee. U Bill sez: AAAAK! PHHHT! jxdl@lanl.gov
ellard@bbn.com (Dan Ellard) (11/16/88)
I'd like to get more information about transputers, available systems based on transputers, and what software has been written for these systems. I'm especially interested in documentation for the transputer assembly language, an OCCAM programming manual, and some description of whatever operating systems or executives which have been ported to/written for transputer-based systems. -Dan
rcoda@koel.rmit.oz (David Abramson) (11/16/88)
From article <37700002@m.cs.uiuc.edu>, by grabas@m.cs.uiuc.edu: > One of the main things I reproach to the Transputer is that it does not > support virtual memory (vital to build any reasonnable stand-alone machine). > If anybody from INMOS reads this note, please, could he tell me when it > will be done (or why it shouldn't be done...)? > > Dominique Grabas, University of Illinois at Urbana-Champaign Also the on-board memory should be organised as a cache. This makes programming much easier. PS. I agree about the +ve points. Dr David Abramson ACSnet: rcoda@koel.co UUCP: ...!uunet!munnari!koel.co.rmit.oz!rcoda CSNET: rcoda@koel.co.rmit.oz ARPA: rcoda%koel.co.rmit.oz@uunet.uu.net BITNET: rcoda%koel.co.rmit.oz@CSNET-RELAY PHONE: + 61 3 660 2095 Commonwealth Scientific and Research Organisation, Division of Information Technology, c/o Department of Communication & Electronic Engineering, Royal Melbourne Institute of Technology, P.O. Box 2476V, Latrobe St, Melbourne, 3000, Australia
rtm1@thumper.bellcore.com (Ravi Masand) (11/17/88)
In article <> josef@ugun21.UUCP writes: > >What distinguishes a Transputer from any other processor, especially if >I take a, let's say 68030 or 32532, add 4 communication channels >and write software to do processor-processor communication? >What makes a Transputer so interesting? > > Josef Moellers > 'Interesting' is a subjective characteristic. I personally feel that the transputer is interesting because, atleast from a hardware developer's viewpoint it offers a lot of bang for the design effort. Lets start with your 68030 alongwith its four communication channels - to match the transputer these links need to operate at 10 Mbps and contending with these communication devices is no cakewalk - both in terms of H/W and S/W The transputer provides a multitasking kernel built right in the microcode. The multitasking processes use channels for interprocess communication - and these channels can be implemented either with memory exchanges or over the serial links. This can be made transparent to the application programmer. What this does is that it allows initial development and use over a lesser number of transputer and at a later time, if so desired, performance can be enhanced and almost linear speedup achieved, by increasing the number of transputers in the system and redistributing processes. As far as the multitasking is concerned, all instructions use a register stack (on chip) which is valid only for the duration of the instruction. This makes context switching extremely fast. This philosophy of integrating the links right into the kernel pays divedends in another manner. The transputer is capable of booting itself right from the links. This implies that in a multiple processor system only one transputer is required to have a ROM. The others will be perfectly content with a simple RAM subsystem. Another hardware facility provided is that of a DRAM controller built right into the chip. This simplifies DRAM system design considerably. Also provided in hardware is a floating point unit. As to how it compares with the 80387 and Motorola's FPU I don't know. Reasonably well I'd suspect. Another hardware goody provided is on-chip memory. This is either 2k or 4k depending on the CPU (T414 or T800 resp). While not much in itself it can be used for code optimization as instructions running out of this on chip RAM run a lot faster than from external RAM. And the final hardware goody provided is an on chip frequency multiplier. This means that the different speed versions all take in 5 MHz clocks and multiply it appropriately to generate 20/25/30 Mhz. Thus these high frequencies are restricted to within the chip. These are all the hardware pluses I can think of. There probably are some more. Far as the software is concerned - Inmos claims that a high percentage (~70?) of the instructions can be coded in one byte. I have looked at the instruction encoding philosophy and found it to be impressive. If you are at all interested in CPU architectures you really should look at it. It is, to say the very least, 'Interesting'. I haven't really had any experience with the software but soon will have some. But probably not with Occam. Please keep in mind that I am no transpu-phile and Inmos has no say in my material well being. I have simply worked with the CPU for a little while and was favorably impressed. Furthermore I don't think that the transputer is 'better' than the 68030 or vice versa. For a given application one or the other may be more appropriate and for still other applications a Z-80/8085 would be clearly more desirable :-). Questions: Has anyone out there worked with the transputer in a language other than Occam ? How has it worked out ? Is Occam really mandatory to use the CPU to its fullest ? And anyone know of a good book/reference to pick up Occam in a hurry ?? Thats it. Cheers. Ravi Masand Bellcore (201)-829-4593.
daveh@cbmvax.UUCP (Dave Haynie) (11/17/88)
in article <6048@lanl.gov>, jxdl@lanl.gov (Jerry DeLapp) says: > Summary: Cheap, fast, powerful, cheap, cheap, (I like cheap) > The transputer is fast (about the equivalent of a vax or sun 3 now, > and getting faster). The comparison was with a 68030 or 80386, not a vanilla 68000. For integer processing speed, a 68000 isn't quite a VAX 750. The only T800's I've seen benchmarked IN A SYSTEM process integers in the VAX 780-785 range, like a medium performance 68020 system (which is just what a smaller Sun 3 is). 68030 systems outperform 8xxx VAXen in most integer benchmarks. > The communications are very fast, have very low startup overheads, > and operate without any need of the CPU after setup. Any DMA driven communications channel will operate without CPU intervention after setup. > The (T800) transputer has on-chip floating-point support. That's probably it's nicest feature. The on-chip floating point i pretty fast, though it's a small set of operations. You'd have to go to a Weitek chipset for that kind of performance on a 68xxx or 80xxx. Motorola's 88100 has an even better on-chip floating point scheme, using separate execution units for addition and multiplication. > The context-switch time on a transputer makes the 68xxx look like > a pig. ONLY IF you can use the hardware defined task model. In that case, it's pretty nice, since it'll actually wait for a minimum of task state before swapping. If you wanted to run a standard operating system on the thing, you'd be in trouble. And the 68030's interface to memory makes the T800's "look like a pig", to coin a phrase. > The transputer is RISC technology. The small instruction set means > that it's fairly easy to port compilers to it (although INMOS seems > to be real stodgy about realizing that the real world wants C and > FORTRAN). The Transputer isn't RISC at all. About the only thing it has in common with true RISC-methods CPUs is that it's rather small. There aren't any registers; RISC chips typically have a minimum of 32, some close to 200. A good portion of Transputer instructions are slow, microcoded instructions; RISC chips use hardwired instructions that execute in or near single cycles. Transputers don't have cache memory; all RISC chip COUNT on caches. Transputers don't have memory management, which is crucial to running protected operating systems. I think if they get low cost enough, Transputers will make excellent satillite controller in a 68xxx or similar system, what with the on-chip RAM and math and all. They're also well suited to certain kinds of parallel problems that lend themselves well to loose coupling. Tim King's company Perihelion does offer a C compiler for the things that's not supposed to be all that bad; certainly more palatable to most software people than Occam. So I think Transputers have their place, but that place isn't the place currently occupied by most CISC and RISC CPUs, that of main processor. > _ /| The opinions here are my own, and even I don't agree with me :-) > \'o.O' I am not an employee of LANL, I just use their computers. > =(___)= I stole the .sig file, but I did not shoot no deputeeee. > U Bill sez: AAAAK! PHHHT! jxdl@lanl.gov -- Dave Haynie "The 32 Bit Guy" Commodore-Amiga "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: D-DAVE H BIX: hazy Amiga -- It's not just a job, it's an obsession
w-colinp@microsoft.UUCP (Colin Plumb) (11/17/88)
First of all, I agree that it's the level of integration that makes a transputer interesting. They can do useful work with no external components - just feed it power, ground, clock, reset line, and hook up a link or two. You can boot it, download programs, and run them. In article <1389@thumper.bellcore.com> rtm1@thumper.UUCP (Ravi Masand) writes: >Also provided in hardware is a floating point unit. As to how it compares with >the 80387 and Motorola's FPU I don't know. Reasonably well I'd suspect. It blows them away. Against good FP ALUs (MIPS, Am29027, BIT's stuff) it's not great, but it's at least in Weitek's league. We've timed 2 MFLOPS doing dot products in on-chip RAM. >Far as the software is concerned - Inmos claims that a high percentage (~70?) >of the instructions can be coded in one byte. I have looked at the instruction >encoding philosophy and found it to be impressive. If you are at all interested >in CPU architectures you really should look at it. It is, to say the very >least, 'Interesting'. Well, they have got a patent on it. I think it's closer to 50%, but still the code is highly compact. (There are a few rearrangements I'd like to make, but that's another story.) Having programmed it in assembler a fair bit, I'll avoid "impressive" and stick to "interesting". There are things they could have done better. (Have cj pop the 0? Unsigned gt?) >Questions: Has anyone out there worked with the transputer in a language other >than Occam ? How has it worked out ? Is Occam really mandatory to use the >CPU to its fullest ? And anyone know of a good book/reference to pick up >Occam in a hurry ?? Well, several C compilers are available. I reccomennd Logical Systems' C compiler, $6xx.xx with full source last time I looked. Kirk, are you still out there to correct me? They're based in Corvallis, Oregon. We had a couple of problems writing our OS in it, but it can handle serious work. I haven't done any work in Occam, but C works fine. No, Occam isn't mandatory, although it makes communications-rich code a bit more legible. Kirk's compiler has #pragma asm and #pragma endasm so you can escape to assembler and get at anything the machine provides. It's fun to play around with. I enjoy watching Mandelbrot sets running on 28 processors. -- -Colin (microsof!w-colinp@sun.com)
jxdl@lanl.gov (Jerry DeLapp) (11/22/88)
In article <5255@cbmvax.UUCP>, daveh@cbmvax.UUCP (Dave Haynie) writes: > in article <6048@lanl.gov>, jxdl@lanl.gov (Jerry DeLapp) says: > > The transputer is fast (about the equivalent of a vax or sun 3 now, > > and getting faster). > > The comparison was with a 68030 or 80386, not a vanilla 68000. For > integer processing speed, a 68000 isn't quite a VAX 750. The only > T800's I've seen benchmarked IN A SYSTEM process integers in the > VAX 780-785 range, like a medium performance 68020 system (which is > just what a smaller Sun 3 is). 68030 systems outperform 8xxx VAXen > in most integer benchmarks. No, the question was what made it interesting, not whether it was faster than the 68030. The 68030 was just used as an example. The transputer's speed (I agree, about equal to a 780 on integer ops, but much dependent on memory technology used with the transputer) is plenty fast enough to be "interesting" (at least to me :-). Besides, try to plug a 68030 into the hole for a 68000. You'll get smoke. Most transputer systems can be upgraded by just plugging in newer, faster chips. > > The communications are very fast, have very low startup overheads, > > and operate without any need of the CPU after setup. > > Any DMA driven communications channel will operate without CPU > intervention after setup. I agree, but I haven't seen one discrete implementation that can comes close to the transputer in terms of low setup time. Also, why implement the sucker yourself if you don't have to, and can't beat the setup times to boot. [stuff about FP unit and context switching deleted]. > > The transputer is RISC technology. The small instruction set means > > that it's fairly easy to port compilers to it (although INMOS seems > > to be real stodgy about realizing that the real world wants C and > > FORTRAN). > > The Transputer isn't RISC at all. About the only thing it has in common > with true RISC-methods CPUs is that it's rather small. There aren't > any registers; RISC chips typically have a minimum of 32, some close to > 200. A good portion of Transputer instructions are slow, microcoded > instructions; RISC chips use hardwired instructions that execute in or > near single cycles. Transputers don't have cache memory; all RISC > chip COUNT on caches. Transputers don't have memory management, which > is crucial to running protected operating systems. Excuse me, but I think you're confusing implementation with theory. RISC means: Reduced Instruction Set Computer. In that context, the transputer certainly qualifies as RISC. Register counts, caches and memory management have nothing to do with whether a chip is "true RISC." They are just implementation details that might make one chip more attractive than another. I agree that the absence (sp? :-) of virtual memory management support makes the transputer less attractive for implementing large multi-user systems, but it certainly doesn't eliminate it completely. (BTW: No flames please. I know the RISC/noRISC debate belongs in comp.arch :-) [remaining inane comment about transputers only being good as sattelites to 68xxx systems or as loosely coupled systems deleted] Actually, my experience has been that the transputer works best in tightly coupled systems, not loosely coupled. Still, it's brought loosely coupled systems into the realm of affordable reality. Hence, most of the discussion in this newsgroup centers on how to make loosely coupled systems work well. Remember when drawing comparisons between the transputer and the 68xxx 803xx and others, that you're discussing differences between chip series that have been around for many years vs. something "new and different". In terms of progress and improvements, I think that INMOS is much faster than either Motorola or INTEL in addressing problems with and making improvements in their product. (It took INTEL 8 years to finally build a CPU worthy of respect. I've always respected the 68000 series). -- _ /| The opinions here are my own, and even I don't agree with me :-) \'o.O' I am not an employee of LANL, I just use their computers. =(___)= I stole the .sig file, but I did not shoot no deputeeee. U Bill sez: AAAAK! PHHHT! jxdl@lanl.gov
daveh@cbmvax.UUCP (Dave Haynie) (12/01/88)
in article <6426@lanl.gov>, jxdl@lanl.gov (Jerry DeLapp) says: > Summary: I disagree! > Actually, my experience has been that the transputer works best in > tightly coupled systems, not loosely coupled. Huh? You only get loosely coupled systems using Transputers. At least, as long as you're using the built-in links, you're only going to be able to implement loosely compled systems. From what I've head from folks who've been working with them, the external bus interface of the Transputer makes it complicated to use in a tightly coupled manner. The 680x0 family isn't really rough to use in a tightly compled manner, but you certainly need some external buffering. Newer RISC chip like the 88k make tightly coupled systems a slam-dunk, and the rumor mill says that the 68040 will work in a similar fashion. To exist in a tightly coupled system efficiently, though, you absolutely need caches and hardware cache consistency, which you don't get in the internal 68020/68030 caches. > (It took INTEL 8 years to finally build a CPU worthy of respect. I've > always respected the 68000 series). I think we're in complete agreement on at least this last point. -- Dave Haynie "The 32 Bit Guy" Commodore-Amiga "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: D-DAVE H BIX: hazy Amiga -- It's not just a job, it's an obsession