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 [#tres]_ **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" [#squeue]_ of your jobs: .. code-block:: bash $ 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 [#sprio]_ for your jobs: .. code-block:: bash $ sprio -u $USER .. [#tres] TRES, Trackable RESources: CPU, GPU, memory, time .. [#squeue] You can get the complete list of parameters by referring to the ``squeue`` manual page (``man squeue``). .. [#sprio] You can get the complete list of parameters by referring to the ``sprio`` manual page (``man sprio``).