[comp.sys.transputer] Hardware and Software Development Systems

PVR%bgerug51.earn@NSS.CS.UCL.AC.UK (Patrick Van Renterghem / Transputer Lab) (08/26/88)

Dear mailing list,
 
I am writing a paper for the "largest transputer event on the continent".
There is a small section on development systems and I don't want it to
contain wrong information. So, I have posted it to the net and am awaiting
replies from you. If anything is untrue or missing let me know.
 
-------------------------------------------------------------------------
 
  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,
           ...
 
         * 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.
 
         * 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
 
         * 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
 
         * 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 !
 
       * 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.
 
         * 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.
 
-------------------------------------------------------------------------
 
Patrick Van Renterghem, Seminar Coordinator "Transputers for Ind. Appl."