Dynamic resource distribution and utilization for consolidated virtual machines with manycores, DRAM, and NVRAMs = 매니코어와 DRAM, 비휘발성 메모리를 사용하는 합동 수용된 가상 머신들을 위한 자원의 동적 배분 및 활용에 관한 연구

Cited 0 time in webofscience Cited 0 time in scopus
  • Hit : 410
  • Download : 0
DRAM, NVRAM, 그리고 매니코어와 같은 풍부한 컴퓨팅 자원을 가지고 있는 시스템의 자원 활용률을 높이기 위해서 개별 하드웨어 노드는 다수의 가상 머신들을 합동 수용하고 자원들을 공유한다. 이러한 환경에서 높은 자원 활용률을 통한 빠른 성능을 실현하기 위해서는 하이퍼바이저가 시분할 방식으로 공유 가능한 자원을 잘 분배하고, 가상 머신 안에서는 이렇게 분배받은 자원을 잘 활용해야 한다. 합동 수용된 가상 머신들간의 자원 공유에 있어서 높은 자원 활용률을 달성하기 위해서 우리는 기존에 제안된 방법들을 분석하였고 다음과 같은 세 가지의 중요한 한계점들을 발견하였다. 1) 메모리를 받아 사용하는 가상 머신에서의 밸런싱 지연에 의한 메모리 자원 가치 하락; 2) 하이퍼바이저와 게스트 OS간의 정보 교류 부재에 의한 물리 코어와 태스크간의 고정 매핑 시도의 무효화; 3) 메모리 대역폭을 고려한 태스크 스케줄링에서의 NVRAM과 하이브리드 메인 메모리의 특성 고려 부재; 4) 하이브리드 메인 메모리를 장착한 실험 환경의 부재. 본 논문에서 우리는 하이퍼바이저와 게스트 가상 머신의 운영체제가 서로 협조하여 자원 관리를 효율적으로 수행하는 방법을 제안하였다. 보다 자세하게는, 자원 활용률을 높이고 결과적으로 시스템 성능을 높이기 위해서 세 가지 방법과 그것을 가능하게 하는 한 가지 실험환경을 다음과 같이 제시하였다: [합동 수용된 가상 머신들간의 즉각적인 메모리 밸런싱] 가속화된 메모리 밸런싱 속도는 이를 수신하는 곳에서 재배치된 메모리의 가치를 향상시킨다. 본 논문에서는 HyperDealer2 (HD2)를 제안하여, 재활용 대상으로 선택할 페이지들의 결정 기준으로 변경되지 않은 클린 페이지들의 접근 패턴을 탐지하여 사용하고, 이를 하이퍼바이저 수준에서 프리 메모리로 만들고, 이것을 메모리를 필요로 하는 VM으로 재배치하는 과정을 실현하였다. 이는 메모리를 빼앗기는 가상 머신의 메모리 재배치 시도 과정으로의 개입을 없애고 재활용된 페이지의 원 데이터로의 접근 횟수를 최소화함으로써 가능해진다. 결과적으로 HD2는 메모리를 재배치하는 데 걸리는 시간을 줄임으로써 메모리를 받는 가상 머신에서의 재배치된 메모리의 가치를 높이는 역할을 한다. 실험 결과에서 HD2는 메모리를 많이 사용하는 응용프로그램들의 실행 시간을 2퍼센트 가량의 성능 부하를 감내하면서 최대 50%까지 줄이도록 하였다. [가상화 환경에서 하나 이상의 특정 CPU 코어들을 지정된 태스크들에게 매핑] 게스트 OS를 수정하지 않고도 태스크 수준의 OS 내부의 VCPU에 대한 태스크 스케줄링을 추적하여 태스크와 PCPU를 하이퍼바이저 수준에서 사용자의 의도대로 매핑할 수 있도록 하는 방법을 제안하였다. 게스트 OS 내부의 태스크-물리 코어간의 매핑 정보를 하이퍼바이저 스케줄링 정보와 결합하여 재배치함으로써 태스크는 기존 OS에서 사용되는 방식과 동일하게 태스크를 물리 코어에 매핑할 수 있도록 하였다. [하이브리드 메모리 인식 기반 태스크 스케줄링] 게스트 OS는 과도한 동시 메모리 접근에 의한 성능 저하를 줄이기 위해 다음으로 실행될 태스크를 현재 실행되고 있는 태스크가 사용하고 있는 메모리와 다른 타입의 메모리를 사용하는 것으로 선택한다. HMMSched로 명명한 태스크 스케줄링 정책에서 스케줄러는 각 태스크로부터 발생하는 하이브리드 메인 메모리의 서로 다른 접근 지연 시간을 각 태스크의 대역폭 사용량의 계산에 반영하도록 하였다. 이 정책에서는 CPU를 주로 사용하는 태스크를 먼저 수행하도록 하고 이후 서로 다른 메모리 종류를 주로 사용하면서 메모리 대역폭의 사용량이 상호 보완적인 태스크들을 함께 스케줄링하는 기본 방침을 적용하였다. 실험 결과에서 HMMSched를 적용한 스케줄링 방식이 기본 리눅스 스케줄러 대비 19%가량의 실행 시간 감소를 나타냄을 확인하였다. [하이브리드 메인 메모리 시스템을 지원하는 전체 시스템 시뮬레이터] 운영체제 및 응용프로그램이 DRAM과 NVRAM을 기반으로 하는 하이브리드 메인 메모리 및 PMU(Performance Monitoring Unit)를 갖춘 하드웨어 환경 위에서 동작하여 실험을 할 수 있도록 하였다. 본 논문을 통해서 우리는 CPU와 메모리 자원을 VM들에게 어떻게 효과적으로 분배하며 이를 각 게스트 VM 내에서 어떻게 잘 활용할 것인가에 대한 방법을 제안하는 데 초점을 맞추었다. 이를 검증하기 위해서 실제 하드웨어와 시뮬레이션 환경을 바탕으로 실험하였고, 실험을 통해 성능을 보일 수 있는 일부 제안된 방법들에 대한 실험평가를 통해서 우리는 제시된 방법들이 발견한 문제들을 해결함으로써 시스템 성능을 향상시킴을 알 수 있음을 보였다.
Advisors
Park, Kyu Horesearcher박규호researcher
Description
한국과학기술원 :전기및전자공학과,
Publisher
한국과학기술원
Issue Date
2015
Identifier
325007
Language
eng
Description

학위논문(박사) - 한국과학기술원 : 전기및전자공학과, 2015.2 ,[ix, 99 p. :]

Keywords

Virtualization; memory balancing; hybrid main memory; core association; MN-MATE; 가상화; 메모리 밸런싱; 하이브리드 메인 메모리; 코어 매핑

URI
http://hdl.handle.net/10203/206896
Link
http://library.kaist.ac.kr/search/detail/view.do?bibCtrlNo=615699&flag=dissertation
Appears in Collection
EE-Theses_Ph.D.(박사논문)
Files in This Item
There are no files associated with this item.

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0