next up previous print clean
Next: Running Up: Parallel job Previous: Inheritance

Initialization

There are two required parameters and several optional parameters to initialize a parallel job. The first required parameter is (sect_pars) a Python dictionary that links the jobidmentioned before, with a parameter object SEP.par.sep_pars. This class knows how to read, write, add, and return a list of parameters. An example of where a job might need different parameters is if you are creating an output cube that scans over a parameter space. The second required parameter is a dictionary of parallel files that are needed for the job. A dictionary rather than a list is used to enable a parallel job to be used in inversion. When inverting the model and data vectors will change depending on the inversion process. key in the dictionary enables an easy way to locate (and possibly change Clapp (2004b)) the parallel file. The value in the dictionary is a parallel file object discussed below.

Below is a list of some of the useful optional parameters:

program
The serial code that you want to run on each node. This is an optional, rather than required parameter, because it is possible, and in some cases useful, to extend the SEP.parjob.parjob class's job creation mechanism.
restart
Whether or not we are restarting a job. When restarting the status file will be read instead of created.
global_pars
A list of of parameters to run with every job, again a SEP.par.sep_par object.
attempts
The number of attempts (defaulted to 2) to attempt to start a job (on different nodes) before failing.
restart_com
A parameter that needs to be added to the calling sequence when restarting a job.
mfile
The machine file to read the available nodes from (in the same status convention as an MPI machine file. Defaults to a file name mfile.
njobs
The maximum number of jobs to run simultaneously. Defaults to the number of processors described in mfile.
verb
The level of verbosity.
The initialization creates a machine class object (also inherited from the status class). This object keeps track of the available machines. An obvious extension of this class is discussed in the future work section.


next up previous print clean
Next: Running Up: Parallel job Previous: Inheritance
Stanford Exploration Project
10/23/2004