23.0 Preemption > Preemption tasks > Using QoS preemption

Conventions

23.1.6 Using QoS preemption

To configure moab.cfg for QoS preemption

  1. Set GUARANTEEDPREEMPTION to TRUE. (This causes Moab to lock PREEMPTOR jobs until JOBRETRYTIME expires.)
  2. Make sure that JOBNODEMATCHPOLICY is not set to EXACTNODE, which is not currently supported for preemption (for more information, see Testing and troubleshooting preemption).
  3. If it is not already, set NODEACCESSPOLICY to SHARED.
  4. Set the PREEMPTPOLICY policy type (for more information, see PREEMPTPOLICY types).
  5. Set up QFLAGS to mark jobs as PREEMPTEE (a lower-priority job that can be preempted by a higher-priority job), or as PREEMPTOR (a higher-priority job that can preempt a lower-priority job). As in the example:
  6. QOSCFG[test1] QFLAGS=PREEMPTEE MEMBERULIST=<user> PRIORITY=100
    QOSCFG[test2] QFLAGS=PREEMPTOR MEMBERULIST=<user> PRIORITY=10000

    For more information, see Preemption flags.

  7. Make sure that the PREEMPTEE job has a lower priority than the PREEMPTOR job. As in the example:
  8. QOSCFG[test1] QFLAGS=PREEMPTEE MEMBERULIST=<user> PRIORITY=100
    QOSCFG[test2] QFLAGS=PREEMPTOR MEMBERULIST=<user> PRIORITY=10000

For example:

GUARANTEEDPREEMPTION TRUE
PREEMPTPOLICY <policy>
 
QOSCFG[test1] QFLAGS=PREEMPTEE MEMBERULIST=<user> PRIORITY=100
QOSCFG[test2] QFLAGS=PREEMPTOR MEMBERULIST=<user> PRIORITY=10000

Related topics