DCSC logo
+Open all         -Close all

Current fairshare database.

Current state at 2014/12/02 09:40
(Updated every 10 minutes)

The table below represents the fairshare database on past usage on the cluster which is used as a component in calculating job-priorities for queued jobs. Read about the scheduling strategy.

The table has for each group:

  • The weighted use obtained as a weighted average of the use in the 5 fairshare windows. See details below the table.
  • The target share allocated to the group (see below for details about group other).
  • Five fairshare windows, each representing group usage in % of the total usage on the cluster in the time slice covered by the window.

The last 2 rows has the total usage in CPU-hours and utilization in % for each of the fairshare windows. Note that the utilization usually hovers around 90%, even though the queue is never empty - please read the document "Horseshoe Utilization" for an explanation.

GroupWeighted Use (%)Target Use (%)Window1 (%)Window2 (%)Window3 (%)Window4 (%)Window5 (%)
Total Usage (CPU-hours)27058.540072.939472.438321.036574.3
Utilization (%)67.3976.1875.0472.8569.53

Some more details:

A fairshare window represents statistics for the cluster in a time-slice of 8 days and 8 hours, except for window1 which can only represent stats for a maximum of 8 days and 8 hours. After this period of time window1 stats is rolled to window2, window2 stats to window3, etc. The current Window1 expires on 04/12/2014 09:00.

The maximum total use in a fairshare window can thus be 263*(8*24 + 8)hours = 52600 CPU-hours.

The weighted use for a given group is calculated by weighting the use per fairshare window with a decay-rate (in our case 0.8). It's calculated as the fraction Nu/De with:

De = sumi=1i=5 [TU(i)*0.8i], where TU(i) is total usage in window number i.

Nu = sumi=1i=5 [TU(i)*0.8i*Win(i)], where Win(i) is the given groups % usage in window number i.

Knowing the weighted use for a given group, jobs submitted by members of this this group will have job-priorities for queued jobs offset by a term DFS = FS_weight*(Target Use - Weighted Use), where FS_weight has been set to 1600.

The final piece of input to the calculation of the priority for a queued job is the time spend in queue measured in minutes (Queue_time). The priority is then:

priority = 80000 + Min(DFS,8640) + 1*Queue_time

The calculation Min(DFS,8640) is done to ensure that a job cannot gain a priority-boost of more than the equivalent of waiting 6 days in queue, due to an under-utilization of the allotted group (or user) fairshare.

Users in group other.

The users in the group other have priorities calculated in a similar manner, except that the Target Use and Weighted Use is calculated on a per user basis, not group basis. The table below show the same stats for these users, as is shown for the groups above. FS_weight has been set to 4800 for the calculation of priority offsets for these users.

UserWeighted Use (%)Target Use (%)Window1 (%)Window2 (%)Window3 (%)Window4 (%)Window5 (%)