Virtual CPU State Detection and Execution Flow Analysis by Host Tracing

Cloud computing offers to the end user the ability of accessing a pool of resources with the Pay as Use (PaU) model. By leveraging this technology, users can benefit from hardware virtualization for on-demand resource acquisition and rapid elasticity. However, there is no effective tool to analyze virtual hardware performance, especially when isolation between these virtual resources is not adequate. The existing tools need to access and trace the whole activity of the VM and host. However, in most cases, tracing the virtual machine (VM) is not possible because of security issues and the added overhead. Therefore, there is a need for a tool to troubleshoot unexpected behavior of VMs without internal access for tracing or debugging. In this paper, we propose a new method to study the state of CPUs inside VMs without internal access. Our tool can detect unexpected delays and their root causes. We developed a virtual CPU (vCPU) state analyser to detect the state of vCPUs along with the reason for being in that state. This approach relies on host tracing, thus adding less overhead to VMs as compared to existing approaches. Then we propose a new approach for profiling threads inside the VMs by host tracing. We implemented different views for the TraceCompass trace viewer to let the administrator visually track different threads and their states inside the VMs. Our tool can detect different problems such as overcommitment of resources.

[1]  Willy Zwaenepoel,et al.  Performance profiling of virtual machines , 2011, VEE '11.

[2]  Michel Dagenais,et al.  Fine-grained preemption analysis for latency investigation across virtual machines , 2014, Journal of Cloud Computing.

[3]  Masao Yamamoto,et al.  Unified Performance Profiling of an Entire Virtualized Environment , 2014, 2014 Second International Symposium on Computing and Networking.

[4]  M. Desnoyers,et al.  The LTTng tracer: A low impact performance and behavior monitor for GNU/Linux , 2006 .

[5]  Xiaohui Gu,et al.  Ieee Transactions on Parallel and Distributed Systems (tpds) Perfcompass: Online Performance Anomaly Fault Localization and Inference in Infrastructure-as-a-service Clouds , 2022 .

[6]  S. K. Nandy,et al.  Resource usage monitoring for KVM based virtual machines , 2012, 2012 18th International Conference on Advanced Computing and Communications (ADCOM).

[7]  Shrisha Rao,et al.  A Combinatorial Auction mechanism for multiple resource procurement in cloud computing , 2012, 2012 12th International Conference on Intelligent Systems Design and Applications (ISDA).

[8]  Ricardo Bianchini,et al.  DeepDive: Transparently Identifying and Managing Performance Interference in Virtualized Environments , 2013, USENIX Annual Technical Conference.

[9]  A. Khandual Performance Monitoring in Linux KVM Cloud Environment , 2012, 2012 IEEE International Conference on Cloud Computing in Emerging Markets (CCEM).

[10]  Antonio Pescapè,et al.  Cloud monitoring: A survey , 2013, Comput. Networks.

[11]  Michel Dagenais,et al.  State History Tree: An Incremental Disk-Based Data Structure for Very Large Interval Data , 2013, 2013 International Conference on Social Computing.

[12]  Tao Huang,et al.  VMon: Monitoring and Quantifying Virtual Machine Interference via Hardware Performance Counter , 2015, 2015 IEEE 39th Annual Computer Software and Applications Conference.