Abstract
Fairness and efficiency are two important metrics for users in modern data center computing system. Due to the heterogeneous resource demands of CPU, memory, and network I/O for users’ tasks, it cannot achieve the strict 100 percent fairness and the maximum efficiency at the same time. Existing fairness-efficiency schedulers (e.g., Tetris) can balance such a tradeoff elastically by relaxing fairness constraint for improved efficiency using the knob. However, their approaches are <i>unaware</i> of fairness degradation under different knob configurations, which makes several drawbacks. First, it cannot tell how much <i>relaxed</i> fairness can be guaranteed given a knob value. Second, it fails to meet several essential properties such as sharing incentive. To address these issues, we propose a new fairness-efficiency scheduler, <i>QKnober</i> , to balance the fairness and efficiency elastically and flexibly using a tunable fairness knob. QKnober is a <i>fairness-sensitive</i> scheduler that can maximize the system efficiency while guaranteeing the <inline-formula><tex-math notation="LaTeX">$\theta$</tex-math></inline-formula> -soft fairness by modeling the whole allocation as a combination of <i>fairness-oriented</i> allocation and <i>efficiency-oriented</i> allocation. Moreover, QKnober satisfies fairness properties of sharing incentive, envy-freeness and pareto efficiency given a proper knob value. We have implemented QKnober in YARN and evaluated it using both testbed and simulated experiments. The results show that QKnober outperforms its alternatives DRF and Tetris by 31.2 and 4.5 percent, respectively.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have