가상머신 스케줄러의 I/O 성능 향상을 위한 대출/상환 기법

Loan/Redemption Scheme for I/O performance improvement of Virtual Machine Scheduler

  • 김기수 (숭실대학교 컴퓨터학과) ;
  • 장준혁 (숭실대학교 융합소프트웨어플랫폼 연구소) ;
  • 홍지만 (숭실대학교 컴퓨터학과)
  • 투고 : 2016.08.16
  • 심사 : 2016.12.14
  • 발행 : 2016.12.31

초록

가상화 기술에 의해 추상화된 자원은 하드웨어적으로 효율적으로 사용 할 수 있어 관리가 용이하며, 이로 인해 클라우드 시스템과 대형 서버 클러스터 구축 등에 가상 머신 모니터가 널리 사용되고 있다. 가상화된 시스템의 성능은 가상머신 스케줄러의 영향을 크게 받는다. 하지만, 기존의 가상 머신에서 사용하는 Credit 스케줄러는 스케줄링 지연 시간이 길어질 경우, I/O 응답성이 저하되는 문제점이 있다. 본 논문에서는 가상머신의 이벤트 응답성 저하 현상을 개선하기 위해 기존 가상머신의 Credit 스케줄러에 대출/상환 기법을 도입하였다. 제안 기법은 가상 머신에 I/O 이벤트 처리를 위한 credit을 대출해주고, 대출 credit의 소비 패턴을 분석하여 각 가상머신의 태스크 특징을 분류한다. I/O 이벤트가 도착했을 때, 분석된 태스크 특징을 기반으로 일시적으로 가상 머신의 스케줄링 우선순위를 높임으로써 시스템의 I/O 성능을 향상시킨다. 제안 기법을 가상머신 모니터에 구현하였으며, 기존 가상머신의 Credit 스케줄러 대비 제안된 기법을 적용한 가상머신의 I/O 평균 응답성과 대역폭이 각 60%, 62% 향상되었다.

Virtualized hardware resources provides efficiency in use and easy of management. Based on the benefits, virtualization techniques are used to build large server clusters and cloud systems. The performance of a virtualized system is significantly affected by the virtual machine scheduler. However, the existing virtual machine scheduler have a problem in that the I/O response is reduced in accordance with the scheduling delay becomes longer. In this paper, we introduce the Loan/Redemption mechanism of a virtual machine scheduler in order to improve the responsiveness to I/O events. The proposed scheme gives additional credits for to virtual machines and classifies the task characteristics of each virtual machine by analyzing the credit consumption pattern. When an I/O event arrives, the scheduling priority of a virtual machine is temporally increased based on the analysis. The evaluation based on the implementation shows that the proposed scheme improves the I/O response 60% and bandwidth of virtual machines 62% compared to those of the existing virtual machine scheduler.

키워드

참고문헌

  1. 김병기, 고영웅, "Xen 가상화 환경에서 지연시간에 예민한 도메인을 지원하기 위한 스케줄링 기법", 한국정보기술학회논문지, 제 10권, 제11호, 2012.
  2. 박은병, 김태훈, 이상철, 문대혁, "Xen으로 배우는 가상화 기술의 이해", 한빛미디어, 2013.
  3. Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield, "Xen and the art of virtualization", ACM SIGOPS Operating Systems Review - SOSP 2013.
  4. Ludmila Cherkasova, Diwaker Gupta, Robert D. Gardner, "System and method for controlling aggregate CPU usage by virtual machines and driver domains over a plurality of scheduling intervals", US Patent, US20080028411, June 26, 2012.
  5. Huacai Chen, Hai Jin, Kan Hu, Minhao Yuan, "Adaptive Audio-aware Scheduling in Xen Virtual Environment", 2010 IEEE/ACS International Conference on Computer Systems and Applications(AICCSA), 2010.
  6. David Chisnall, "Xen 하이퍼바이저 완벽 가이드", 제이펍, 김세영, 정윤선 옮김, 2012.
  7. Abel Gordon, Nadav Amit, Nadav Har'El, Muli Ben-Yehuda, Alex Landau, Assaf Schuster, Dan Tsafrir, "ELI: Bare-Metal Performance for I/O Virtualization", The International conference on Architectural Support for Programming Languages and Operating Systems, 2012.
  8. Ryan Hnarakis, In Perfect Xen, "A Performance Study of the Emerging Xen Scheduler", Ph. D, Dissertation, the Faculty of California Polytechnic State University San Luis Obispo, 2013.
  9. Xi, Sisu, et al. "Real-time multi-core virtual machine scheduling in xen." Embedded Software (EMSOFT), 2014 International Conference on. IEEE, 2014.
  10. Li, Jian, and David SL Wei. "Accurate CPU Proportional Share and Predictable I/O Responsiveness for Virtual Machine Monitor: A Case Study in Xen." (2015).
  11. The Xen Project, http://wiki.xen.org/wiki/Credit_Scheduler.
  12. http://www.xenproject.org/developers/teams/hypervisor.html.