Integrating external queuing systems

ParaStation MPI can be easily integrated with batch queuing and scheduling systems. In this case, the queuing system will decide, where (and when) to run a parallel task. ParaStation MPI will then start, monitor and terminate the task. In case of higher prioritized jobs, the batch system may also suspend a task using the ParaStation MPI signal forwarding.

Integration is done by setting up ParaStation MPI environment variables, like PSI_HOSTFILE. ParaStation MPI itself need not be modified in any way. It is not necessary to use a remote shell (rsh) to start mpirun on the first node of the selected partition. The batch system should only run the command on the same node where the batch system is running, ParaStation MPI will start all necessary processes on the remote nodes. For details about spawning processes refer to ParaStation MPI User's Guide.

Note

If an external queuing system is used, the environment variable PSI_NODES_SORT should be set to "none", thus no sorting of any predefined node list will be done by ParaStation MPI.

ParaStation MPI includes its own queuing facility. For more details, refer to the section called “Using the ParaStation MPI queuing facility” and ParaStation MPI User's Guide.

Integration with PBS PRO

Parallel jobs started by PBS PRO using the ParaStation MPI mpirun command will be automatically recognized. Due to the environment variable PBS_NODEFILE, defined by PBS PRO, ParaStation MPI will automatically setup the PSI_HOSTFILE to PBS_NODEFILE. The environment variable PSI_NODES_SORT is set to "none", thus no sorting of the predefined node list will occur. The tasks will be spawned in the given order on the predefined list of nodes.

Therefore, ParaStation MPI will use the (unsorted) hostfile supplied by PBS PRO to startup the parallel task.

Integration with OpenPBS

Refer to previous the section called “Integration with PBS PRO”.

Integration with Torque

Refer to previous the section called “Integration with PBS PRO”.

Integration with LSF

Similar to the section called “Integration with PBS PRO”, ParaStation MPI will also recognize the variable LSB_HOSTS, provided by LSF. This variable holds a list of nodes for the parallel task. It is copied to the ParaStation MPI variable PSI_HOSTS, consequently it will be used for starting up the task. The environment variable PSI_NODES_SORT is set to "none", thus no sorting of the predefined node list will occur. The tasks will be spawned in the given order on the predefined list of nodes.

Integration with LoadLeveler

ParaStation MPI recognizes the variable LOADL_PROCESSOR_LIST, provided by IBM LoadLeveler. This variable holds a list of nodes for the parallel task. It is copied to the ParaStation MPI variable PSI_HOSTS, consequently it will be used for starting up the task. The environment variable PSI_NODES_SORT is set to "none", thus no sorting of the predefined node list will occur. The tasks will be spawned in the given order on the predefined list of nodes.