Share via


Scheduler Prioritizing

Scheduler is a backend component in DTM, and is invoked every 10 seconds, attempting to allocate computers for runs that need to be executed.

Scheduler will find the runs that need to be scheduled based on the schedule start time and try to schedule them in the machine pool in which they need to be run. The machine pool in which the jobs need to be run may have individual computers (called free pool computers) and child pools attached to it. Scheduler would considers the following when scheduling a run:

  • Does the user have Execute permissions on the computers or machine pools to be used?
  • Are the computers within a machine pool marked as Reserve machines in this pool as one atomic unit?

Consider the following scenario: Machine Pool MP1 contains computers M1, M2, M3 and sub pool MP2. MP2 in turn contains computers M4, M5, M6, M7 and sub pool MP3. MP3 contains computers M8, M9, M10, M11, M12 and MP3 is marked to reserve only as one atomic unit. This can be seen in the following diagram:

Bb932075.sched_machinepools(en-us,MSDN.10).gif

Scheduler will give highest priority to free pool computers within the machine pools. Computers in a machine pool that are reserved as one atomic unit are given the lowest priority.

In this scenario, Scheduler would attempt to schedule the run in the following order:

  1. In the computers of MP1 and MP2 (M1, M2, M3, M4, M5, M6, M7).
  2. In the computers of MP3 (M8, M9, M10, M11, M12).

Scheduler will schedule a run across machine pools/child pools if the machine pool does not have the Reserve machine in this pool as one atomic unit flag set. If this flag is set, then the computers in that machine pool will be reserved exclusively for the run. In this case, Scheduler will either schedule a run among computers M1, M2, M3, M4, M5, M6, M7, or computers M8, M9, M10, M11, M12, but not across both sets.

Additional scheduler considerations

  • Scheduler will schedule runs only on computers that have public key.
  • Scheduler will schedule runs only on computers that have a heartbeat registered in the last 30 minutes.
  • Scheduler will schedule runs only on computers that are in a Ready state and not executing any other run.
  • Scheduler will schedule runs on computers having Is Explicit dimensions only if that dimension is asked for by the run.

See Also

Scheduling DTM Jobs

Send feedback on this topic
Built on December 10, 2009