Skip to Main Content
Fair-share scheduling attempts to grant access to a resource based on the amount of Â¿shareÂ¿ that a task possesses. It is widely used in places such as Internet routing, and recently, in the Linux kernel. Software performance engineering is concerned with creating responsive applications and often uses modeling to predict the behaviour of a system before the system is built. This work extends the Layered Queueing Network (LQN) performance model used to model distributed software systems by including hierarchical fair-share scheduling with both guarantees and caps. To exercise the model, the Completely Fair Scheduler, found in recent Linux kernels, is incorporated into PARASOL, the underlying simulation engine of the LQN simulator, lqsim. This simulator is then used to study the effects of fair-share scheduling on a multi-tier implementation of a building security system. The results here show that fair-share scheduling with guarantees is not sufficient when an application is layered into multiple tiers because of contention at lower layers in the system. Fair-share scheduling with caps must be used instead.