APLE: Addressing lock holder preemption problem with high efficiency

Jianchen Shan, Xiaoning Ding, Narain Gehani

Research output: Chapter in Book/Report/Conference proceedingConference contribution

1 Scopus citations

Abstract

On virtualized platforms, Lock Holder Preemption (LHP) is known as a serious problem, which makes virtual CPUs (VCPUs) spin excessively while waiting for locks and seriously degrades performance. To address this problem, hardware facilities, such as Intel PLE and AMD PF, are provided on processors to preempt spinning VCPUs. Though these facilities have been predominantly used on mainstreamvirtualization systems, using them in a manner that achieves the highest performance is still a challenging issue. The core issue in dealing with the LHP problem is to determine the best time to preempt spinning VCPUs (i.e., spinning thresholds). Due to the semantic gap between different software layers, the virtual machine monitor (VMM) does not have the information about whether a VCPU is spinning normally (i.e., waiting for a lock to be released quickly) or is spinning excessively (i.e., waiting for a lock which is currently held by a preempted VCPU and cannot be released quickly). Thus, it cannot determine adequate thresholds for preempting spinning VCPUs to achieve high performance. Preempting spinning VCPUs late wastes system resources. Preempting them prematurely incurs costly context switches between VCPUs and delays lock acquisition. The paper addresses the issue of preempting spinning VCPUs with an end-to-end approach named Adaptive PLE (APLE). APLE monitors the execution efficiency of each VM by collecting the overhead incurred by wasteful spinning and wasteful VCPU switches. Then, it periodically adjusts the spinning threshold to reduce the overhead and increase the execution efficiency of the VM. The implementation of APLE incurs only minimal changes to existing systems (about 80 lines of code in KVM). The experiments with multicore workloads show that APLE can improve throughput by up to 68%.

Original languageEnglish (US)
Title of host publicationProceedings - IEEE 7th International Conference on Cloud Computing Technology and Science, CloudCom 2015
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages242-249
Number of pages8
ISBN (Electronic)9781467395601
DOIs
StatePublished - Feb 1 2016
Event7th IEEE International Conference on Cloud Computing Technology and Science, CloudCom 2015 - Vancouver, Canada
Duration: Nov 30 2015Dec 3 2015

Publication series

NameProceedings - IEEE 7th International Conference on Cloud Computing Technology and Science, CloudCom 2015

Other

Other7th IEEE International Conference on Cloud Computing Technology and Science, CloudCom 2015
CountryCanada
CityVancouver
Period11/30/1512/3/15

All Science Journal Classification (ASJC) codes

  • Computer Networks and Communications
  • Computational Theory and Mathematics

Keywords

  • Lock-holder preemption
  • Pause-loop exiting
  • Virtual CPU scheduling
  • Virtualization

Fingerprint Dive into the research topics of 'APLE: Addressing lock holder preemption problem with high efficiency'. Together they form a unique fingerprint.

Cite this