[GRASS-user] Parallel processes

Glynn Clements glynn at gclements.plus.com
Mon Oct 19 12:05:16 PDT 2015


Dylan Beaudette wrote:

> Are there any reasons to prefer sequential operations (that do not
> alter the region) vs. parallel operations?

Running additional jobs in parallel is only worthwhile if the
resources which they would use (CPU, memory, I/O bandwidth) would
otherwise be idle.

Once you get to the point that a resource is saturated and jobs are
contending for it, parallel execution will be less efficient than
serial execution.

Maybe the "parallel" command takes these factors into account
sufficiently. If it only considers CPU cores (i.e. one job per core),
you'd need to confirm that you aren't saturating I/O bandwidth or
thrashing memory or CPU caches. Try running the same sequence of tasks
with varying numbers of parallel jobs to determine the optimal value. 
Needless to say, this will vary according to the nature of the task
(e.g. I/O-bound versus CPU-bound).

-- 
Glynn Clements <glynn at gclements.plus.com>


More information about the grass-user mailing list