Diagnosing virtualization overhead for multi-threaded computation on multicore platforms
Document Type
Conference Proceeding
Publication Date
2-1-2016
Abstract
Hardware-assisted virtualization, as an effective approach to low virtualization overhead, has been dominantly used. However, existing hardware assistance mainly focuses on single-thread performance. Much less attention has been paid to facilitate the efficient interaction between threads, which is critical to the execution of multi-threaded computation on virtualized multicore platforms. This paper aims to answer two questions: 1) what is the performance impact of virtualization on multi-threaded computation, and 2) what are the factors impeding multi-threaded computation from gaining full speed on virtualized platforms. Targeting the first question, the paper measures the virtualization overhead for computation-intensive applications that are designed for multicore processors. We show that some multicore applications still suffer significant performance losses in virtual machines. Even with hardware assistance for reducing virtualization overhead fully enabled, the execution time may be increased by more than 150% when the system is not over-committed, and the system throughput can be reduced by 6x when the system is over-committed. To answer the second question, with experiments, the paper diagnoses the main causes for the performance losses. Focusing the interaction between threads and between VCPUs, the paper identifies and examines a few performance factors, including the intervention of the virtual machine monitor (VMM) to schedule/switch virtual CPUs (VCPUs) and to handle interrupts required by inter-core communication, excessive spinning in user space, and cache-unaware data sharing.
Identifier
84964328507 (Scopus)
ISBN
[9781467395601]
Publication Title
Proceedings IEEE 7th International Conference on Cloud Computing Technology and Science Cloudcom 2015
External Full Text Location
https://doi.org/10.1109/CloudCom.2015.102
First Page
226
Last Page
233
Recommended Citation
Ding, Xiaoning and Shan, Jianchen, "Diagnosing virtualization overhead for multi-threaded computation on multicore platforms" (2016). Faculty Publications. 10682.
https://digitalcommons.njit.edu/fac_pubs/10682
