摘要
随着多核硬件技术的迅速发展和应用对计算能力需求的不断增强,多核虚拟机应用也越来越广泛。但多核虚拟机会引发锁占用的可扩展性问题,锁占用严重影响系统的整体性能。本文基于Linux的完全公平调度器(CFS)设计并实现了一个高效的瞬态协同调度算法,能够高效地解决锁占用问题并获得更好的系统性能。实验结果表明,相比Linux 2.6.38内核,该算法可以显著地提高系统性能,在SysBench.OLTP的测试用例中系统整体性能最多提高到3.41倍,并且对调度公平性几乎没有影响。
Multiprocessor (MP) virtual machines (VMs) are widely used in cloud environments with the development of MP hardware and the demands for greater computing power. However, MP VMs suffer from the lock holder preemption (LHP) issue, which causes significant system performance degradation. This paper describes an efficient transitory co-scheduling algorithm based on the Linux CFS scheduler that effectively bypasses the guest spin lock loop to achieve better system performance. Tests show that this method significantly improves system performance (up to 3.41 fold performance advantage over the original Linux kernel 2.6.38 with SysBench. OLTP 4-VM case), while at the same time improving system latency with little to no effect on scheduling fairness.
出处
《清华大学学报(自然科学版)》
EI
CAS
CSCD
北大核心
2014年第4期495-501,共7页
Journal of Tsinghua University(Science and Technology)
基金
国家自然科学基金面上项目(61170050)
核高基重大专项基金(2012ZX01039004)
关键词
虚拟机
调度
多核
锁占用
virtual machine
scheduling
multicore
lock holder preemption