DOI QR코드

DOI QR Code

Event Routing Scheme to Improve I/O Latency of SMP VM

SMP 가상 머신의 I/O 지연 시간 감소를 위한 이벤트 라우팅 기법

  • 신정섭 (과학기술연합대학원대학교 컴퓨터소프트웨어과) ;
  • 김학영 (한국전자통신연구원 서버플랫폼연구실)
  • Received : 2015.06.09
  • Accepted : 2015.09.02
  • Published : 2015.11.15

Abstract

According to the hypervisor scheduler, the vCPU (virtual CPU) operates under two states: the running state and the stop state. When the vCPU is in the stop state, incoming events are delayed until that vCPU's state changes to the running state. The latency in handling such events that are sent to the vCPU is regarded as the I/O latency. Since a SMP (symmetric multiprocessing) VM (virtual machine) incorporates multiple vCPUs, the event latency on a SMP VM can vary according to specific vCPU that receives the event. In this paper, we propose a new scheme named event routing that sends events according to the operation state of each vCPU to reduce the event latency on an SMP VM. We implemented the proposed event routing scheme in Xen ARM hypervisor and confirmed the reduction of I/O latency from measuring the network RTT (round trip time) and the TCP bandwidth under a variety of testing conditions. The network RTT decreases by up to 94% and the TCP bandwidth increases up to 35% when compare to native Xen ARM.

vCPU(virtual CPU)는 하이퍼바이저 스케줄러에 의해서 실행 상태와 정지 상태를 반복하는 특징을 갖는다. 정지 상태인 vCPU에게 전달된 이벤트는 vCPU가 실행 상태가 될 때까지 처리되지 못하고 지연 된다. 이러한 이벤트 지연 현상은 I/O 지연 현상으로 나타난다. SMP(symmetric multiprocessing) 가상 머신은 다수의 vCPU를 이용하기 때문에 이벤트를 어느 vCPU에게 전달하는지에 따라 SMP 가상 머신의 이벤트 지연 시간이 달라 질 수 있다. SMP 가상 머신의 이벤트 지연 시간을 줄이기 위해서 본 논문에서는 각 vCPU의 동작 상태에 따라서 이벤트를 전달하는 새로운 기법인 이벤트 라우팅 기법을 제안한다. 제안한 이벤트 라우팅 기법을 Xen ARM 하이퍼바이저에 적용하였고 다양한 실험 환경에서 네트워크 RTT(round trip time)와 TCP 대역폭 측정을 통해 I/O 지연 시간 감소를 확인하였다. 기존 Xen ARM과 비교하여 네트워크 RTT는 최대 94% 감소하였고, TCP 대역폭은 최대 35% 증가하였다.

Keywords

Acknowledgement

Grant : 고집적 저전력 프로세서 기반 30% 이상 에너지 절감 범용 운영체제 및 가상화 핵심기술 개발

Supported by : 정보통신기술진흥센터

References

  1. Xen ARM with Virtualization Extensions [Online]. Available: http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions
  2. C. Xu, S. Gamage, H. Lu, R. Kompella, D. Xu, "vTurbo: Accelerating Virtual Machine I/O Processing Using Designated Turbo-Sliced Core," Proc. of the 2013 USENIX conference on Annual Technical Conference, pp. 243-254, 2013.
  3. L. Cheng, C. Wang, "vBalance: Using Interrupt Load Balancing to Improve I/O Performance for SMP Virtual Machines," Proc. of the Third ACM Symposium on Cloud Computing, 2012.
  4. N. Horman, Irqbalance [Online]. Available: https://github.com/Irqbalance/irqbalance
  5. B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, I. Pratt, A. Warfield, P. Barham, R. Neugebauer, "Xen and the Art of Virtualization," Proc. of the ACM Symposium on Operating Systems Principles, pp. 164-177, 2003.
  6. SMP Affinity [Online]. Available: https://github.com/torvalds/linux/blob/master/Documentation/IRQ-affinity.txt (downloaded 2015, Feb. 15)
  7. G. Somani, S. Chaudhary, "Application Performance Isolation in Virtualization," Proc of the 2009 IEEE International Conference on Cloud Computing, pp. 41-48, 2009.
  8. M. Herlihy, J. Eliot B. Moss, "Transactional memory: architectural support for lock-free data structures," Proc of the 20th annual international symposium on computer architecture, pp. 289-300, 1993.
  9. V. Prashant, H. Gernot, "Hardware-supported virtualization on ARM," Proc. of the Second Asia- Pacific Workshop on Systems, 2011.
  10. PVH [Online]. Available: http://wiki.xen.org/wiki/Xen_Project_Software_Overview#PVH
  11. Iperf [Online]. Available: https://iperf.fr
  12. Dhrystone [Online]. Available: https://en.wikipedia.org/wiki/Dhrystone