From: esa@acpub.duke.edu (EMILY ANGERER)
Subject: Re: PVM vs. Express
Organization: Duke University; Durham, N.C.
Date: 14 Nov 92 03:31:16 GMT


In article <1992Nov13.125101.20219@hubcap.clemson.edu> roy@willow.ccsf writes:
>In article 1744@hubcap.clemson.edu, ccechk@nuscc.nus.sg (Heng Kek) writes:
>>
>>I have a need to evaluate 2 parallelizing softwares: PVM and
>>EXPRESS.  I'm aware that EXPRESS is commercial.
>>
>>Can anyone give a critique on the relative merits of the 2 packages?

I haven't used EXPRESS before, but I wanted to correct some of the
statements about PVM that were made.
>
>Portability: PVM seems to be just workstation networks, Express is also 
>Intel, Ncube Cray, SGI, in fact all the MIMD machines I can think of.
Actually, PVM 2.3 comes set up for a number of machines, namely
DECstations, SUN workstations, RS6000's, Sequent Symmetry, Cray, Intel
iPSC/860 and /2, CM2, Alliant FX/8, and the Stardent Titan.  It also
provides a generic makefile that can be used for other UNIX based
machines if you care to take the time to make any minor adjustments
necessary.

>
>Debuggers: Express has ndb, PVM has the usual unix debuggers. You have to 
>learn ndb, but its built as a parallel debugger (Firing up 64 dbx's could 
>be a bit of a strain on any machine I would think)
PVM has a monitoring tool called Xab which can be used on any Xwindows
display.  I have not used it to any extent great enough to evaluate its
worth.  PVM also has a graphical interface called HeNCE, but that is not
so much a debugger as just a tool _intended_ to make the implementation
of PVM easier.  I was honestly not impressed with HeNCE.

>
>Express has a reasonable I/O model: the processors contribute to the file 
>in order, or all the processors speak with one voice, or they all write 
>asynchronously, and similarly for reading. I've found it really awkward 
>trying to write an intelligible file when anyone can write whenever they want.
>
>Express has parallel graphics portable to X, postscript, raster files, hippi
>framebuffer etc etc.
>
>PVM seems to be just send and receive and not much else. You can't send a 
>"mixed-bag" message with different types - you have to send the floats, 
>ints, chars etc in different messages. Also there seems to be a kind of 
>hub-and-spoke system where all messages get routed through the hub 
>(is this true?).
Actually, no.  You _can_ mix different data types within a single
message, as I have done this fairly successfully a number of times.  Any
process can pass a message to any other process, whether it be master,
slave, slave of a slave, or what have you, provided the process is still
in existence.  Messages are passed through a send and receive technique,
but it is also possible to use barriers, probe for receipt of messages,
send ready signals, and perform waits.

Admittedly, PVM has its limitations, but I suspect you were looking at
an older edition of PVM.  It is fairly flexible in terms of machines,
but you cannot dynamically choose machines that are lightly loaded to
run processes.  It is also not in a particularly polished package, but
as you said,
>
>But of course PVM is FREE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

And that must count for something.

Emily S. Angerer
Undergraduate, Duke University
Department of Electrical Engineering
esa@acpub.duke.edu

Newsgroups: comp.parallel