26.6 Remote model execution with PEcAn
The workhorse of remote model execution is the PEcAn.workflow::start_model_runs
function, which distributes execution of each run in a list of runs (e.g. multiple runs in an ensemble) to the local machine or a remote based on the configuration in the PEcAn settings.
Broadly, there are three major types of model execution:
- Serialized (
PEcAn.remote::start_serial
) – This runs models one at a time, directly on the local machine or remote (i.e. same as calling the executables one at a time for each run). - Via a queue system, (
PEcAn.remote::start_qsub
) – This uses a queue management system, such as SGE (e.g.qsub
,qstat
) found on the BU SCC machines, to submit jobs. For computationally intensive tasks, this is the recommended way to go. - Via a model launcher script (
PEcAn.remote::setup_modellauncher
) – This is a highly customizable approach where task submission is controlled by a user-provided script (launcher.sh
).