PVR%bgerug51.earn@NSS.CS.UCL.AC.UK (Patrick Van Renterghem / Transputer Lab) (09/06/88)
Dear mailing list, Because of the numerous ignorant people requesting information about possible development systems for Sun, MicroVAX, ..., I am posting this again. Please read it this time before you start asking trivial questions ! If anything is untrue or missing let me know. If you have more information about a product, send some to my postal address (given above). ------------------------------------------------------------------------- Development Systems for Transputers: a) Hardware: At this moment there are a number of different platforms for the development of transputer software: * PC: most vendors still focus on this, so it is the best supported environment. Companies in this category are: Inmos, Parsytec, Microway, Transtech, Sension, CSA, Quintek, Gemini, ... * Sun: several companies now have a VME board, with a TDS (Transputer Development System) under Unix for a Sun work- station: Inmos, Parsytec, Protheus, Niche Technology, Tadpole, Topologix, Eastman Kodak Company, ... * Macintosh: the 68020-based Mac II is a very powerful machine on its own, but companies as Levco sell plug-in boards to boost time-consuming tasks, such as image rendering, anima- tion, ... * (u)VAX: the slower the system, the bigger the need for a high- performance add-on for real-time applications and number crunching. That's why companies such as Caplin Cybernetics, Floating Point Systems and U-Micro have built plug-in boards for Unibus and Q-bus VAXes. * Atari: Atari is developing its own transputer-based system, the ABAQ, which uses most of the old ST for I/O and storage. Some link interfaces are available, as well as some low-cost, user-unfriendly development environments. * Apollo: since some Apollo's have a PC-compatible bus, development can also happen on these workstations, but very few people do this. The French company Archipel has a development system for compiling and downloading programs under the Unix operating system on the Apollo. Bruno Boeniger of Apollo Switzerland is responsible for the Apollo development system. It is built in collaboration with Inmos, LGI Grenoble and IP Elektronik in Denmark and based on the IMS B008. * Transputer-based: Strange enough, there are very few transputer-based development systems at this moment. This will probably change with the arrival of a decent operating system for transputers (Helios, System V, Trollius, ...) ? * Did I forget someone ? b) Software: Transputer Development Systems (TDS): A TDS consists of a folding editor and a number of utilities (compilers, network loader, file utilities, ...). At this moment there are transputer development systems for PC, SUN, Macintosh, Apollo and VAX from different manufacturers. They all look alike, but they might differ on certain crucial points (e.g. server). Debugging a distributed system with a large number of transputers is a difficult problem. However, at this moment there are network analysers and symbolic debuggers available, that show faulty processors or deadlocks. Programming languages: Occam remains the most efficient language for transputers, although the compiler is not an optimizing compiler and could be improved. Optimization techniques such as dead code removal, bringing loop invariant code out of a loop, optimal use of on- chip RAM, abbreviations, ... are up to the user. C is highly used for engineering applications and there are a lot of C compilers available at the moment for the transputer. Most of them are compatible with Kernighan and Ritchie, some have the ANSI extensions and some have non-standard features for communication, multitasking, ... The following (probably incom- plete) list shows a couple of the C compilers (although they are marketed and supplied by different companies, a lot of them have the same origin). Some compilers are sold as a stand-alone toolset, others need a TDS. There are sequential (single task) C compilers and parallel C compilers. Parallelism can be accom- plished via library routines for communication and multitasking or via features that were added to the C language (par, alt, timer, ...). The solution with library calls generates a significant overhead, the solution with language extensions violates the C standard and portability. * Lattice Logic Ltd (3L) C: * contracted and marketed by Inmos * Occam harness needed to combine several processes * alien file folders to mix languages * Logical Systems Transputer Toolset: * marketed by CSA and Levco * C source included * for PC, VAX, SUN-3 and Mac * fully K&R, nearly ANSI * efficient, uses optimizer * contact Kirk Bailey (bailey@mist.cs.orst.edu) * 3L Parallel C Compiler: * marketed by Microway, Sension, ISI, CSA and Transtech * standalone toolset, no need for TDS or Occam * currently v2.0, costs 750 pound * fully K&R, almost ANSI * runs on transputer, host (PC, VAX) runs file server * run-time library support for concurrency and message passing * inline (transputer) assembler * flood-filling algoritm: distribute same program over a number of Transputers, typically a processor farm * good disassembler to see what the compiler makes of your program * Microway C compilers: * probably the same as the 3L C compilers * some information on this one would be appreciated * Parsec Parallel C Compiler Par.C: * sold by Parsec for standalone applications (without TDS) or for target transputer systems (compiler running on PC) * sold by Parsytec to run under Megatool (their TDS) * K&R, with ANSI extensions * Occam-like features: guarded alt, channel type, process, timer type, ... * channel (CHAN OF ANY) recognizes datatype and thus number of bytes to send or receive from the context * price approx. 4000 Dutch guilders * Definicon C compiler: * marketed by Inducom Systems * Occam-like constructs as in the Par.C from Parsec (same origin) * Renishaw Controls C Compiler * distributed via Microport, with a distributed Unix kernel on each transputer * Pentasoft C: (Penguin) * used at Cornell University for the Trollius operating system * some information on this one would be appreciated * Perihelion C: * the C compiler that goes along with Helios * marketed by Cambridge Risc Machines There are other programming languages available, such as Fortran and Pascal from Inmos, 3L, Parsytec, ... Recently, 3L announced their parallel Fortran compiler. Not many people are using the other languages, such as ML (Lisp dialect from Edinburgh, transputer implementation by Jon Kerridge, contact ml@lfcs.ed.ac.uk), Prolog (Microway), ... so they are probably still full of bugs. Inmos and Alsys (the company of Jean D. Ichbiah) have agreed to develop and supply an Ada compiler for the transputer family. The product should be ready in july 1989 and is targeted to aerospace and military applications. Wait and see ! * More Sophisticated Programming Environments: * Express (Parasoft Co., Mission Viejo, CA) Express from Parasoft Co. consists of a communication kernel, a set of semi-automatic tools for program decomposition, a graphics library, a truly parallel I/O library, a performance monitor and a symbolic debugger. Contact John Salmon (Johns @ tybalt.caltech.edu). * Topologix Co.: Topologix has a user-friendly interface, with a CAD program for drawing network configurations, a mouse-driven editor, a graphical performance monitor to look at link traffic and bottlenecks and its C, Fortran and Lisp are SunOS compatible. It has also implemented XWindows and BSD socket-like message passing extensions. The Topologix programming environment is frequently regarded as the best there is for the Sun work- station. As Andy Pfiffer, one of the original developers of the Trollius operating systems is now working for Topologix, it should be no surprise that they use a Trollius derivative. * Cogent Research: The American company Cogent Research has a set of extended C, C++ and Fortran compilers. They also market the Linda portable parallel programming environment and have a version of XWindows and NeWS for the transputer. * Operating Systems: * Helios: (Perihelion Software Ltd.) Helios is the first operating system specifically designed for the transputer to become widely available. It is a fully distributed, multi-tasking operating system that supports multiple processors and users. It provides an excellent programming environment, both for the development of transputer software and for the delivery of transputer applications to end users. Features include a high level of Unix compatibility, good fault tolerance, a capability based protection scheme for multiple users and graphics support under the X-Windows V11 standard. Amongst the languages supported are C, Fortran and Occam. Helios is already being used for a wide variety of transputer-based applications: for embedded systems, for PC and other plug-in boards, for workstations and for transputer-based computer systems. * Unix System V: (Renishaw Controls / Microport) Renishaw Controls and Microport seem to be developing a version of Unix for the transputer. It is Microport System V, running on a network of transputers. There is a distributed Unix kernel on each transputer and the PC is used as a disk and I/O server. * Trollius: (Cornell University, used to be called Trillium) The Trillium project at Cornell started with the intention to build an operating system for the Floating Point Systems T- Series. Recently, Trollius was ported to the Niche Technology and Topologix platforms. Cornell is licensing Trollius to industrial and academic institutions. You need a Pentasoft license to get Trollius. There is a C and Fortran compiler, an assembler, linker and librarian. You can create/kill/spawn/look at processes, pass messages from node to node, access a UNIX file system, debug software and synthesize speech. Cornell does not provide occam. * IDRIS: (Parsys) The UK-based company Parsys, that markets the Supernode, have developed a proprietary operating environment IDRIS, that should be compatible with the emerging Posix standard for Unix. It offers a familiar user environment and maximum flexibility in the use of high level languages. It is also compatible with the Inmos TDS, so it can be run under TDS. Idris enables the system to run a number of separate processes which may, with some restrictions share the resources of the system. * Hobbes: (Transoft) According to some rumours, the American company Transoft has developed another operating system for the transputer, Hobbes. Details about it are not available at the moment. ------------------------------------------------------------------------- Addresses of the companies mentioned can be requested from the author. Replies will be summarized to the net. Patrick Van Renterghem, Seminar Coordinator, State University of Ghent, Automatic Control Lab/The Transputer Lab, Grotesteenweg Noord 2, B-9710 Ghent-Zwijnaarde, Belgium Phone: +32 91 22 57 55 ext 313 Fax: +32 91 22 85 91 addressed to "Automatic Control Lab" Email: pvr@bgerug51.bitnet **************************************************************** * * * One-Day International BIRA Seminar * * * * "Transputers for Industrial Applications" * * * * 18 oct. 1988, Switel Hotel, Antwerp, Belgium * * * * The Biggest Transputer Event on the Continent ! * * * ****************************************************************