Synchronization support for parallel applications in virtualized clouds

Cloud computing platforms have become very attractive for parallel applications, thanks to the system virtualization technology that allows versatile and pliable computing environments. However, owing to the virtualization overhead, parallel applications can suffer from poor performance when executing synchronization operations. In this paper, we propose sc scheduling, which is a synchronization-conscious scheduling algorithm that can mitigate the existing virtualization overhead. For this purpose, the proposed scheduler understands the synchronization phases of each parallel application. Based on this comprehension, it then eliminates unnecessary CPU spinning of parallel threads and its incurred waste of valuable CPU time. In addition, it prevents their long blocking, which otherwise causes unfairness between concurrent virtual machines (VMs) and other VMs. We implemented these simple concepts and thoroughly evaluated them in a recent Xen hypervisor release. Our results demonstrate that our approach can significantly improve the speed of concurrent virtual machines compared to the original credit scheduler in Xen.

[1]  John L. Henning SPEC CPU2006 benchmark descriptions , 2006, CARN.

[2]  David F. Bacon,et al.  Proceedings of the 2009 ACM SIGPLAN/SIGOPS international conference on Virtual execution environments , 2009, VEE 2009.

[3]  Hyong S. Kim,et al.  Is co-scheduling too expensive for SMP VMs? , 2011, EuroSys '11.

[4]  A. Kivity,et al.  kvm : the Linux Virtual Machine Monitor , 2007 .

[5]  Cheol-Ho Hong,et al.  Synchronization-Aware Virtual Machine Scheduling for Parallel Applications in Xen , 2013, IEICE Trans. Inf. Syst..

[6]  Rajkumar Buyya,et al.  Article in Press Future Generation Computer Systems ( ) – Future Generation Computer Systems Cloud Computing and Emerging It Platforms: Vision, Hype, and Reality for Delivering Computing as the 5th Utility , 2022 .

[7]  Koushik Chakraborty,et al.  Supporting Overcommitted Virtual Machines through Hardware Spin Detection , 2012, IEEE Transactions on Parallel and Distributed Systems.

[8]  Cheol-Ho Hong,et al.  Performance Prediction and Evaluation of Parallel Applications in KVM, Xen, and VMware , 2014, Euro-Par.

[9]  Thomas Friebel,et al.  How to Deal with Lock Holder Preemption , 2008 .

[10]  Minglu Li,et al.  Dynamic adaptive scheduling for virtual machines , 2011, HPDC '11.

[11]  Cong Xu,et al.  Performance Evaluation of Parallel Programming in Virtual Machine Environment , 2009, 2009 Sixth IFIP International Conference on Network and Parallel Computing.

[12]  Hiroshi Ohta,et al.  Implementation and Evaluation of OpenMP for Hitachi SR8000 , 2000, ISHPC.

[13]  Kevin Dowd High Performance Computing , 2015, Communications in Computer and Information Science.

[14]  Alexandra Fedorova,et al.  A case for NUMA-aware contention management on multicore systems , 2010, 2010 19th International Conference on Parallel Architectures and Compilation Techniques (PACT).

[15]  Christoph M. Kirsch,et al.  Proceedings of the sixth conference on Computer systems , 2011, Eurosys 2011.

[16]  Minglu Li,et al.  The hybrid scheduling framework for virtual machine systems , 2009, VEE '09.

[17]  Toby Velte,et al.  Microsoft Virtualization with Hyper-V , 2009 .

[18]  Edward Haletky VMware ESX and ESXi in the Enterprise: Planning Deployment of Virtualization Servers , 2011 .

[19]  Vishakha Gupta,et al.  High-Performance Hypervisor Architectures: Virtualization in HPC Systems , 2007 .

[20]  David H. Bailey,et al.  The NAS parallel benchmarks summary and preliminary results , 1991, Proceedings of the 1991 ACM/IEEE Conference on Supercomputing (Supercomputing '91).

[21]  Joshua LeVasseur,et al.  Towards Scalable Multiprocessor Virtual Machines , 2004, Virtual Machine Research and Technology Symposium.

[22]  Nick Barrow-Williams,et al.  Proximity coherence for chip multiprocessors , 2010, 2010 19th International Conference on Parallel Architectures and Compilation Techniques (PACT).

[23]  Jaehyuk Huh,et al.  Dynamic Virtual Machine Scheduling in Clouds for Architectural Shared Resources , 2012, HotCloud.

[24]  Andrew Warfield,et al.  Xen and the art of virtualization , 2003, SOSP '03.