Design and Implementation of a Locking-Aware Scheduler for Multiprocessor Environments
Virtualization technology has known to be an efficient solution to reduce space and costs by using server consolidation and to provide flexible management of system resources. The widely used virtual machine monitor (VMM) such as Xen is not perfectly optimized for running over multi-processor systems. In order to run VMMs over multi-processor systems without performance degradation, the scheduling algorithms running in the VMM should be modified. This paper proposes a Locking-aware Scheduler (LAS) algorithm that has eliminated the lock-holder preemption (LHP) problem, which causes the inefficient use of CPU resources in multi-processor environments. By using LAS algorithm, Xen allows guest kernel to acquire spin-lock and prevents the preemption of related processors during operation. The performance results show that our proposed algorithm solves the LHP problem and reduces the total execution time.
Keywordsvirtual machine monitor (VMM) scheduler multi-processor Locking-aware Scheduler
Unable to display preview. Download preview PDF.
- 1.Rosenblum, M., Garfinkel, T.: Virtual machine monitors: current technology and future trends, vol. 38(5), pp. 39–47. IEEE Computer Society, Los Alamitos (2005)Google Scholar
- 2.Uhlig, V., LeVasseur, J., Skoglund, E., Dannowski, U.: Towards Scalable Multiprocessor Virtual Machines. In: Proceedings of the 3rd Conference on Virtual Machine Research and Technology Symposium, vol. 3, pp. 4–4 (2004)Google Scholar
- 3.Barham, P., Dragovic, B., Fraser, K., Hand, S., Harris, T., Ho, A., Neugebauer, R., Pratt, I., Warfield, A.: Xen and the Art of Virtualization. In: SOSP 2003 (2003)Google Scholar
- 4.Govindan, S., Nath, A.R., Das, A., Urgaonkar, B., Sivasubramaniam, A.: Xen and Co.: Communication-aware CPU Scheduling for Consolidated Xen-based Hosting Platforms, Xen and Co. In: Proceedings of the 3rd International Conference on Virtual Execution Environments, VEE 2007, pp. 126–136. ACM Press, New York (2007)Google Scholar
- 5.KernBench project, http://freshmeat.net/projects/kernbench
- 6.Sysbench, http://sysbench.sourceforge.net
- 7.Ousterhout, J.K.: Scheduling Techniques for Concurrent Systems. In: Proceedings of Third International Conference on Distributed Computing Systems, pp. 22–30 (1982)Google Scholar
- 8.Friebel, T., Biemueller, S.: How to Deal with Lock Holder Preemption. Presentation at Xen Summit North America (2008)Google Scholar