How to start with PVM


The contents

  1. Setting up environment for PVM
  2. Starting and stopping PVM
  3. Setting up your home directory
  4. Examples in PVM installation
  5. How to compile and run PVM applications
  6. Etiquette for users of PVM on workstations
  7. Using PVM on IBM SP2 machine
  8. How to use SP2
  9. Troubleshooting
  10. Hints on writing PVM code
  11. Online books
  12. xPVM - graphical interface to PVM

Setting up environment for PVM

If you use the csh (or tcsh) shell:

Back to the CS838-1 Home pageBack to the contents


Starting and stopping PVM


IMPORTANT: Stopping PVM

nova1$ pvm
pvm> halt
nova1$ 

See also the Etiquette page for PVM users.

Back to the CS838-1 Home pageBack to the contents


Setting up your home directory

Before you start to compile and run programs on your PVM configuration, I would recommend you to start with the following structure of your home directory, you can change it later by modifying your Makefile.
$HOME/------pvm3/------bin/-|-X86SOL2  - { exec files for Intel machines with Solaris}
        |          |        |-SUN4SOL2 - { exec files for Sparc machines with Solaris}
        |          |
        |          |--- lib/       { link to /s/pvm-3.3.11/lib/}
        |          |
        |          |--- Makefile.aimk
        |          |--- *.c

Back to the CS838-1 Home pageBack to the contents


Examples in PVM installation

Back to the CS838-1 Home pageBack to the contents


How to compile and run PVM applications

Back to the CS838-1 Home pageBack to the contents


Using PVM on IBM SP2 machine

Read the SP2 page for general information about using the SP2.

PVM works the same way on the SP2, but there's some complications that are due to our authentication setup in the department, and some limitations of kerberos 5 with multi-homed hosts.

If you don't need the communication speed of the switch, then using PVM on SP2 is simple:

If you really need the speed of the switch, you will need to: Consider changing permissions back to
 system:anyuser l
on those directories when you are not using PVM.

Back to the CS838-1 Home pageBack to the contents


Troubleshooting

Some common problems, and possible fixes:

Back to the CS838-1 Home pageBack to the contents


Hints on writing PVM code

  1. design a parallel algorithm at the level of process graph in PVM.
  2. debug, compile, and run on one machine,
  3. if everything works, spawn the tasks on several machines or on a cluster of machines
  4. measure the performance numbers and experiment with the scalability of the algorithm (running the program for various combinations of p and n)
  5. tune the performance in case of detecting hot-spots
  6. write a short report about the project with presenting the performance figures (speedups, efficiency, isoefficiency)

Back to the CS838-1 Home pageBack to the contents


Online books and helps

  1. PVM book
  2. on-line help for PVM on UNC-Charlotte
  3. MPI books

Back to the CS838-1 Home pageBack to the contents