Download Model-Independent Parameter Estimation Watermark

Transcript
Parallel PEST
10-2
using finite parameter differences, successive model runs are independent, ie. the parameters
used for one particular model run do not depend on the results of a previous model run. The
complete independence of model runs undertaken as part of the process of filling the Jacobian
matrix makes this process easily parallelised. Under these circumstances Parallel PEST
simply distributes model runs to different machines or processors as they become available,
and processes the outcomes of these runs as they are finished.
10.1.3 Parallelisation of the Marquardt Lambda Testing Process
Unlike the Jacobian calculation process, the lambda search process (see Section 2.1.7) is
difficult to parallelise. This is because, with the exception of the first two model runs
undertaken as part of the lambda search procedure during each optimisation iteration, the
Marquardt lambda used at subsequent stages of this procedure is dependent on the results of
model runs undertaken on the basis of previous lambda values. Hence it is necessary for
PEST to wait until the results of a previous model run have been evaluated before it can
undertake a further model run on the basis of a new parameter set calculated using a new
Marquardt lambda.
However while the lambda search process is not immediately amenable to parallelisation, it is
not impossible to accelerate this process somewhat through “partial parallelisation”, thanks to
the fact that lambda values used by PEST in this search are all related to each other by
multiples of LAMFAC. Thus if PEST is run as Parallel PEST, and if it has access to a
number of processors, it can undertake simultaneous model runs across these different
processors using parameters calculated on the basis of a series of lambda values related to
each other by factors of LAMFAC. To some extent, PEST must “guess” which lambdas to
use for these parallelised model runs. If it turns out that some of these lambdas are actually
not required, then nothing will have been lost because the respective processors’
contributions to the lambda search procedure would have also been zero if they were
undertaking no model runs at all.
While Parallel PEST allows such a “partial parallelisation” of the lambda search to be
undertaken, parallel lambda runs will not be undertaken:
if at least one parameter is frozen at its upper or lower bound,

if PEST is running in predictive analysis mode and a line search is undertaken as part
of the predictive analysis process,

if the model run time for the fastest processor involved in the parallelisation process is
less than 1.8 times the model run time for the second fastest processor (see below),

if only one slave is currently available for the undertaking of model runs (this may
happen if all but one slave is currently completing redundant model runs arising out of
the previous parallel Jacobian calculation process),

the user indicates to PEST that only the Jacobian matrix calculation process is to be
parallelised (see below).
The user should take particular note of the first of the above exceptions to PEST’s ability to