Parallel Environment on Eddie
Parallel Environment (PE) is a Sun GridEngine (SGE) software package that enables parallel computing through SGE. By selecting a Parallel Environment, users can make use of various Message Passing Interface (MPI) libraries installed on the cluster. All these MPI libraries have already been tightly integrated with SGE to provide a hassle free initialisation, with reliable slave process control and correct accounting info.
Which Parallel Environments are available
You can view the available parallel environment (PE) on Eddie by the following command:
$ qconf -spl
The following valid PEs exist on Eddie currenly:
lam - LAM/MPI - 7.1.4
lam-smp - LAM/MPI - 7.1.4
mpich - MPICH - 1.2.7p1
mpich-smp - MPICH - 1.2.7p1
mpich2 - MPICH2 - 1.0.5
mpich2-smp - MPICH2 - 1.0.5
openmpi - OpenMPI - 1.2.4
openmpi-smp - OpenMPI - 1.2.4
mvapich2 - mvapich2 - 1.0
mvapich2-smp - mvapich2 - 1.0
The PEs with -smp appendix can guarantee that every 4 slots will be dispatched onto a same node to provide a "SMP Cluster" environment. Thees PE only accept request of 4x slots. The side effect is that your job will probably need to wait longer in the queue until there are sufficient empty nodes available.
In addition to the aforementioned PEs, there are another two useful PEs on Eddie
OpenMP
memory
OpenMP enables a Shared Memory programmer to run OpenMP codes on a single worker node of Eddie, memory allocates extra slots for serial jobs which request large memory (>1.9 GB)
How to select Parallel Environment
The Parallel Environment is selected when submitting a job to Grid Engine. Only one PE could be selected at a time. You specify the name of the Parallel Environment and the number of slots to request using the -pe flag for the qsub command:
qsub -pe <pe_name> <slots> <job_script>
for example
qsub -pe openmpi 8 hello.sh
See tutorial and the SGE manual for more detail.