Priority

PSMN use the “priority/multifactor” algorithm for pending jobs, which is:

  • Precision (more precises submissions gain more priority [cpu, mem, time])

  • Weigth (larger jobs gain more priority)

  • Fair Share (resources [1] usage is equally distributed among users: the more you have already running, the less priority you get for your pending jobs)

  • Aging, QoS (these two influence priority calculation)

  • Best Effort (if there is room for small and short jobs, they may go through, respecting Fair Share priority)

The Fair Share algorithm use a 3 weeks sliding window.

It is an automated process on which the PSMN Staff has no control.

Tip

As a quick rule of thumb, it’s important to keep in mind that the more resources your job requests (CPUs, memory, nodes, and time), the longer it may have to wait in queue before it could start.

In other words: accurately requesting resources to match your job’s needs will minimize your wait times.

You can display the “expected start time” [2] of your jobs:

$ squeue --me --start

$ squeue --me --states=PENDING --sort=S,Q --format="%.10i %.12P %.8j %.8u %.2t %.10M %.6D %.4C %R %Q %.19S"

You can also display the priority calculation [3] for your jobs:

$ sprio -u $USER