Parallel Processing

Revision as of 23:00, 19 September 2006 by JohnIrwin (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Parallel Processing is fully integrated into the DOCK calculation. It is set up to have a single Master node, while the remaining nodes act as slaves. The Master node performs file processing and input/output, whereas the slaves perform the actual calculations. If np = 1, the code defaults to non-MPI behavior. As a result, there will be minimal difference in performance between 1 and 2 processors. Improved performance will only become evident with more than 2 nodes. It should be emphasized that the primary benefit in using DOCK6 in parallel mode is to reduce bookkeeping tasks associated with manually splitting up a database into multiple chunks which then must be submitted to different processors individually. DOCK6 automatically partitions out subsets of a database to various nodes, collates and ranks the final results, and takes care of all intermediate bookkeeping. Parallel jobs simple require that the user specify the location of the MPI program used to compile DOCK5, a machine file listing the names of the nodes, and the total number of processors to be used. For parallel docking three additional parameters must be specified: (1) the path of the MPICH installation (i.e /usr/local/mpich-1.2.7/bin/mpirun), (2) a machine file containing the names of the computers (nodes) to be used, and (3) the number of processors which typically is the same as the number of lines in the machine file. See Commandline Arguments for usage information on how to run DOCK with parallel processing functionality.