Personal tools

How does "concurrent jobs" work?

In this article I try to explain how to use the concurrent jobs feature of LS-OPT, and how it behaves in different setups.

How does it work?

Concurrent jobs is a per case setting situated in the Run panel. When LS-OPT schedules jobs, it creates one or more job groups. Each group consists of jobs that belong to cases that have the same setting for concurrent jobs. After this sorting has taken place, each group is scheduled independently.

This means that if all cases have a concurrent jobs setting of 1, only one job will be scheduled to run at any given time. If all cases instead have a setting of 2, a maximum of two jobs will be run at any given time.

However, if one case has concurrent jobs set to 1, and another case has the setting 2, two groups are created that are scheduled independently. In this case, a maximum of two concurrent jobs will run at any given time.

No limit on concurrent jobs

If concurrent jobs is set to 0, there is no limit on the number of jobs that can be run in parallel and all the jobs are submitted to the system. This is used mostly for queuing systems, where the scheduling of jobs is left to the queuing system to manage. Beware that using this setting without  a queuing system may well bog down your system as it is flooded with jobs.

Working the GUI

As said above, the concurrent jobs setting is done in the Run

panel. Here's how to use it:

  1. Select the case for which you want to change the setting
  2. Pick a queuing system for the case
  3. Set concurrent jobs for the case
  4. Repeat until set for all cases

I would recommend going through this procedure before starting your optimization, to make sure that no strange values are set.