Fairshare-Scheduling

Es wird fairshare scheduling eingesetzt. Ob ein Job A vor einem Job B gestartet wird, hängt im Wesentlichen von zwei Faktoren ab:
  • wann der Job abgeschickt wurde
  • wie viele Shares der Nutzer zur Verfügung hat

In der Regel wird ein Job, der vor einem anderen an das Batch-System abgeschickt wurde, schneller gestartet werden als der andere. Allerdings verbraucht ein Nutzer ensprechend der in Anspruch genommen CPU-Zeit sogenannte Shares, wenn ein Job von ihm läuft. Je mehr Shares ein Nutzer noch zur Verfügung hat, desto stärker werden seine Jobs bevorzugt. Mit der Zeit werden einem neue Shares gut geschrieben. Damit soll der Zugang zu den Rechenressourcen gerecht gestaltet werden.

Dieser Mechanismus spielt nur dann eine Rolle, wenn Jobs um die gleichen Ressourcen konkurrieren. Sind genügend Ressourcen frei, kann man auch dann neue Jobs starten, wenn einem keine Shares mehr zur Verfügung stehen.