What does it mean to be fair when scheduling tasks across a Grid?
Depending on the perspective of the affected entity, fairness could mean different things. For a heavy user of the system, “fair” could mean:
“I need (should read “neeeed”) more, so it is fair for me to get more”
From a casual user’s perspective:
“As long as I get to do my work, it is fair”
From a light-user:
“I don’t use the system that often, so when I do, I should have higher priority”
There can be cases made for each of these scenarios. The first scenario, the heavy user, is the one which more schedulers tend to please. It is an implied favouritism in that in order to drain the pending queues the fastest, the scheduler schedules more tasks from the heavy user as it had a higher percentage of pending tasks.
What is fairshare? how can schedulers pony up resources in a shared manner?