Danzek::SGE::Fairshare
1. | 
Implementing Fairshare | 
- User Sets
 - Projects
 
SGE Config FairShare :
---------------------
Scheduler Policies for Job Prioritization in the Sun N1 Grid Engine 6 System
Charu Chaubal
Use Case 1
Set these through "qconf -msconf":
  weight_urgency     0.1       Set ten times higher than weight_ticket to
                               ensure greater precedence
  weight_ticket      0.01      Set ten times lower than weight_urgency to
                               ensure lesser precedence
  weight_posix       0         POSIX priority unused
      ## now called weight_priority
  weight_deadline    0         Deadline policy unused
  weight_waiting     0         Wait time policy unused
Use qmon policy config:
  share_tickets   1,000,000    Arbitrarily large number to enable sharing
  functional_tickets 0         Functional policy unused
Create projects:
  -- use qmon
Create tree:
  -- use qmon
qconf:
[-astnode node_shares_list] add sharetree node(s) [-astree] create/modify the sharetree [-Astree fname] create/modify the sharetree from file [-clearusage] clear all user/project sharetree usage [-dstnode node_list] delete sharetree node(s) [-dstree] delete the sharetree [-mstnode node_shares_list] modify sharetree node(s) [-Mstree fname] modify/create the sharetree from file [-mstree] modify/create the sharetree [-shgrp_tree group] show host group and used hostgroups as tree [-sstnode node_list] show sharetree node(s) [-rsstnode node_list] show sharetree node(s) and its children [-sst] show a formated sharetree [-sstree] show the sharetree
2. | 
Adding Urgency to Fairshare | 
3. | 
Scheduling to Fill Nodes (Rather than Spread Load) | 
- Given that we have nodes dynamically allocated to different queues, e.g., serial and multi-host MPI, we want, for example, a node allocated to the serial queue to be filled before the scheduler allocates another node to the serial queue — else we will have many nodes with one serial job and no where to run our big MPI jobs!
 
- Default scheduling behaviour is to spread load evenly:
 - The default behavior of SGE is to distribute jobs evenly across all nodes based on load — this is the opposite of what we want.
 - Links:
 - 
-- http://blogs.sun.com/sgrell/entry/grid_engine_scheduler_hacks_least -- http://idolinux.blogspot.com/2008/10/grid-engine-queuing-to-fill-nodes.html - To view the current node scheduling algorithm:
 - 
qconf -ssconf | grep load_formula - To make the change to node-filling:
 - Change from
load_formula np_load_avgtoload_formula slots - To do the opposite:
 - 
load_formula -slots