[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article

A lock-aware virtual machine scheduling scheme for synchronization performance

Published: 01 January 2019 Publication History

Abstract

In virtualized environments, multiprocessor virtual machines encounter synchronization problems such as lock holder preemption (LHP) and lock waiter preemption (LWP). When the issue happens, a virtual CPU (VCPU) waiting for such locks spins for an extraordinarily long time and wastes CPU cycles seriously, resulting in a significant degradation of system performance. Recent research that addresses this issue has some shortcomings. To address these problems, this paper proposes an efficient lock-aware virtual machine scheduling scheme to avoid LHP and LWP. Our approach detects lock holders and waiters from the virtual machine monitor side, and gives preempted lock holders and waiters multiple, continuous, extra scheduling chances to release locks, assuring that the de-scheduled VCPUs are not lock holders or waiters with high probability. We implement a Xen-based prototype and evaluate the performance of lock-intensive workloads. The experimental results demonstrate that our scheduling scheme fundamentally eliminates lock holder preemptions and lock waiter preemptions.

References

[1]
Uhlig V, LeVasseur J, Skoglund E, Dannowski U (2004) Towards scalable multiprocessor virtual machines. In: Proceedings of the 3rd conference on virtual machine research and technology symposium (VM). IEEE, pp 43---56
[2]
Ouyang J, Lange JR (2013) Preemptable ticket spinlocks: improving consolidated performance in the cloud. In: Proceedings of the 9th international conference on virtual execution environments (VEE). ACM, pp 191---200
[3]
Lee W, Frank M, Lee V, Mackenzie K, Rudolph L (1997) Implications of I/O for gang scheduled workloads. In: Job scheduling strategies for parallel processing. Springer, New York, pp 215---237
[4]
Ousterhout JK (1982) Scheduling techniques for concurrent systems. In: Proceedings of the 3rd international conference on distributed computing systems (ICDCS), pp 22---30
[5]
Chakraborty K, Wells PM, Sohi GS (2012) Supporting overcommitted virtual machines through hardware spin detection. IEEE Trans Parallel Distrib Syst 23(2):353---366
[6]
Wells PM, Chakraborty K, Sohi GS (2006) Hardware support for spin management in overcommitted virtual machines. In: 15th International conference on parallel architecture and compilation techniques (PACT). ACM, pp 124---133
[7]
Zhang J, Dong Y, Duan J (2012a) ANOLE: A profiling-driven adaptive lock waiter detection scheme for efficient MP-guest scheduling. In: Proceedings of the 2012 IEEE international conference on cluster computing (CLUSTER). IEEE, pp 43---56
[8]
Zhang L, Chen Y, Dong Y, Liu C (2012b) Lock-visor: an efficient transitory co-scheduling for MP guest. In: Proceedings of the 41st international conference on parallel processing (ICPP). IEEE, pp 88---97
[9]
Kim H, Kim S, Jeong J, Lee J, Maeng S (2013) Demand-based coordinated scheduling for smp vms. In: Proceedings of the 18th international conference on architectural support for programming languages and operating systems (ASPLOS). ACM, pp 191---200
[10]
Zhong A, Jin H, Wu S, Shi X, Gen W (2012) Optimizing xen hypervisor by using lock-aware scheduling. In: 2012 Second international conference on cloud and green computing (CGC). IEEE, pp 31---38
[11]
(2008) Ticket spinlocks. http://lwn.net/Articles/267968/
[12]
Weng C, Wang Z, Li M, Lu X (2009) The hybrid scheduling framework for virtual machine systems. In: Proceedings of the 5th international conference on virtual execution environments (VEE). ACM, pp 111---120
[13]
Weng C, Liu Q, Yu L, Li M (2011) Dynamic adaptive scheduling for virtual machines. In: Proceedings of the 20th ACM international symposium on high performance distributed computing (HPDC). ACM, pp 239---250
[14]
Yu Y, Wang Y, Guo H, He X (2011) Hybrid co-scheduling optimizations for concurrent applications in virtualized environments. In: Proceedings of the 6th IEEE international conference on networking, architecture and storage (NAS)
[15]
(2014) Webbench. http://home.tiscali.cz:8080/~cz210552/webbench.html
[16]
(2014) Ebizzy. http://sourceforge.net/projects/ebizzy/
[17]
(2014) Hackbench. http://people.redhat.com/mingo/cfs-scheduler/tools/hackbench.c
[18]
(2014) Kernbench. http://freecode.com/projects/kernbench

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image The Journal of Supercomputing
The Journal of Supercomputing  Volume 75, Issue 1
January 2019
487 pages

Publisher

Kluwer Academic Publishers

United States

Publication History

Published: 01 January 2019

Author Tags

  1. Lock holder preemption
  2. Lock waiter preemption
  3. Synchronization
  4. Virtual machine scheduling
  5. Virtualization

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 0
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Jan 2025

Other Metrics

Citations

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media