Running parallel jobs with PVM

The gridengine is integrated with PVM for running parallel jobs. PVM (Parallel Virtual Machine) is a (quite old) library that allows to create a virtual machine with a specified number of hosts, where multi-process jobs can be run. The library is very easy to use, see http://www.csm.ornl.gov/pvm for details.

The cluster has a tight integration of PVM, so that each parallel job can be run over multiple nodes without interfering with other jobs. In order to submit your parallel jobs to the cluster, you have to use the following command:

qsub -cwd -R y -pe pvm <number_of_nodes> ./your_parallel_job.sh

the -pe tag allows you to specify the parallel environment (pvm in this case), and to reserve a given number of nodes for your job. The script that launches your parallel job is the same as for conventional jobs, but it is necessary to export an environment variable within the script to support the tight integration of the GridEngine with PVM:

export PVM_TMP=$TMPDIR

More information on tight integration between GridEngine and PVM can be found here:

http://wikis.sun.com/display/GridEngine/Managing+Parallel+Environments

Leave a Reply