Parallel job support
Keywords: manual

Next: job() create Up: MODELLER command reference Previous: complete_pdb() read Contents Index

#
Parallel job support

The `parallel` module provides methods to parallelize MODELLER calculations over multiple processors. This may be employed to make use of more than one CPU on a multi-processor machine, or of several nodes in a cluster. Each remote process is termed a `slave', while the process which starts and controls the parallel job is termed the `master'.

Two methods for accessing the slaves from the master are provided; the first is a task-based interface (job.queue_task() and job.run_all_tasks()) which is largely transparent in use and fault-tolerant, while the second is a lower-level slave-master message-passing interface (job.start(), communicator.send_data(), communicator.get_data() and slave.run_cmd()), which is similar to MPI (although coarse-grained) and requires you to handle errors yourself. It is recommended that you use the task interface unless you require a large amount of message passing.

This module relies on several modules in the Python standard library. These modules are not provided with MODELLER, so you must additionally install Python 2.3 if it is not already present on your system. It is also experimental, and is not yet supported fully on Windows systems.

Subsections

- job() -- create a new parallel job
- sge_pe_job() -- create a job using all Sun GridEngine (SGE) slave processes
- sge_qsub_job() -- create a job which can be expanded with Sun GridEngine 'qsub'
- job.queue_task() -- submit a task to run within the job
- job.run_all_tasks() -- run all queued tasks, and return results
- job.start() -- start all slaves for message-passing
- communicator.send_data() -- send data
- communicator.get_data() -- get data
- slave.run_cmd() -- run a command on the slave
- local_slave() -- create a slave running on the local machine
- sge_pe_slave() -- create a slave running on a Sun GridEngine parallel environment slave node
- sge_qsub_slave() -- create a 'qsub' slave running on a Sun GridEngine node
- ssh_slave() -- create a slave on a remote host accessed via ssh

Next: job() create Up: MODELLER command reference Previous: complete_pdb() read Contents Index