sjl@myrias.com (Stuart Lomas) (07/11/90)
In article <9521@hubcap.clemson.edu> argosy!ian@decwrl.dec.com (Ian L. Kaplan) writes: > Perhaps the difference in the execution efficiency between the Intel >cube (an MIMD machine) and the CM-2 (a SIMD machine) is due to the >fact (not doubt hotly contested) that SIMD systems are easier to >program. ... > > ... SIMD systems can be programmed in >_standard_ Fortran 90. MIMD systems can only be programmed in a >language that contains extensions for synchronization. The SIMD >programmer need only consider machine architecture when it comes to >making their program run more efficiently. The MIMD programmer must >consider the machine architecture or the program will not run >deterministicly. Full symbolic debugging can also be supported on a >SIMD machine. Has anyone done a symbolic debugger for a large scale >MIMD system? > > Of course I am biased. > > Ian Kaplan > MasPar Computer Corp. > ian@maspar.com Most MIMD machines are indeed dificult to program. However, if the net will forgive me an arguably commercial posting, I would like to present a counter example. The machine in question is the SPS series from Myrias Research Corporation, a large scale MIMD machine. Please be warned that I work for Myrias Research. Myrias machines are programmed in standard Fortran 77. To make a program run in parallel, it is necessary to label the loops that can be executed in parallel, by putting 'PAR' in front of the 'DO'. If you don't do this, your program runs serially, but it still runs. Programs on a Myrias machine run deterministicly, and the machine architecture can be ignored except for efficiency considerations. (It is possible to generate a race condition if you go through the I/O system, but that is really stretching a point). If a program runs correctly on N processors, it will run correctly on any other number of processors provided there is enough memory. All Myrias machines support full source-level symbolic debugging as a standard feature. Stuart Lomas sjl@myrias.com or uunet!myrias!sjl Myrias Research Corporation phone: +1 403 428 1616 #900 10611 98 Ave, Edmonton, Alberta, Canada, T5K 2P7
dfk@grad13.cs.duke.edu (David F. Kotz) (07/13/90)
In article <9633@hubcap.clemson.edu>, sjl@myrias.com (Stuart Lomas) writes: > Most MIMD machines are indeed dificult to program. ... > Myrias machines are programmed in standard Fortran 77. And hence it is also difficult to program ;-) ... > Programs on a Myrias machine run deterministicly, and the machine > architecture can be ignored except for efficiency considerations. What is difficult about programming many MIMD (or SIMD) systems is to make an *efficient* program (the original point of this thread of discussion). Just getting your program to run is not always that hard, although of course some systems/languages are easier than others in this respect. To make an efficient program, unfortunately, one must usually pay attention to architectural details. [This is not to slight SPS, since it is possible your system provides a very convenient interface for using simple parallelism, which may be enough for many users/applications. This in itself is an important feature. ] > Stuart Lomas sjl@myrias.com or uunet!myrias!sjl > Myrias Research Corporation phone: +1 403 428 1616 > #900 10611 98 Ave, Edmonton, Alberta, Canada, T5K 2P7 David Kotz Department of Computer Science, Duke University, Durham, NC 27706 USA ARPA: dfk@cs.duke.edu CSNET: dfk@duke UUCP: decvax!duke!dfk