검색 상세

코어별 동적 가중치 할당을 통한 다중 코어 환경에서의 Xen ACPI 전련 관리자 개선

Improvement of Xen ACPI Governor in Multi-core Environment by Dynamic Threshold Mapping to each core

초록/요약

In current computing industry, Green Computing which considers amount of power consumption is one of the most important trend.[1] And, move to Cloud and Virtualization platform from current none Cloud platform also very important trend in industry. By these two trends naturally leads another trend that efficiency of the server’s power consumption which is the base of Cloud and Virtualization platform. DPM(Dynamic Power Management), DVFS(Dynamic Voltage and Frequency Scaling) are the power control module by hardware support. With enabled hardware support, efficiency control mechanism for these modules are demanded. Current OS basically include this technique, but they don’t care about virtualization environment. Because of this, wrong power control situation can be occurred and this wrong control will make performance degradation and waste of power. For solving these problem, we should analyze the pattern of power consumption in virtualization environment and design appropriate power control mechanism. In current research about this issue, almost all of researches try to approach by VCPU scheduler level in hypervisor. These approaches need prerequisite about getting each VCPU’s power requirement exactly or progress experiment based on approximate value. These factors downgrade research’s reliability. Also, our research recommend lower level than scheduling approaches, so it can’t be compared directly. In this paper, we analysis Xen hypervisor’s power control mechanism and try to adjust this module for improving power control ability. By Applying power state change technique based on load information in PCPU, we want to prevent power state change which is bigger than needed, and also prevent CPU resource’s wasting. And we judge that one static threshold in whole PCPU and whole VCPU can occur inefficient situation, map dynamic-local threshold to each CPU group for calculating and finding more appropriate power state.

more

초록/요약

현대 컴퓨터 산업에 있어서 전력 소비량을 고려한 그린 컴퓨팅(Green Computing)은 매우 중요한 흐름 중 하나다. 이 흐름과 더불어 기존 시스템에서 클라우드 및 가상화 플랫폼으로의 전환 역시 주요 경향으로 자리잡고 있다.[1] 두 흐름은 자연스럽게 클라우드 및 가상화 플랫폼의 기반이 되는 서버에서의 전력 효율성을 추구하도록 만들었고, DPM(Dynamic Power Management), DVFS(Dynamic Voltage and Frequency Scaling) 등의 하드웨어 지원을 통한 전력 관리가 가능해짐에 따라 이 모듈들을 효과적으로 제어하기 위한 기법에 대한 요구가 증가되고 있다. 최근의 OS들은 모두 이런 기법을 기본적으로 포함하고 있다. 그러나 이런 기존 OS들의 전력 관리 방식은 가상화 환경을 고려하지 않은 방식이고 그로 인해 가상화 환경에서의 잘못된 전력 관리와 이로 인한 성능 저하 및 전력 낭비가 발생할 수 있다. 이런 문제점을 해결하기 위해서는 가상머신 환경의 전력 소모 패턴을 분석하여 이에 적합한 전력 관리 방식을 고안해낼 필요가 있다. 가상화 환경에서의 전력 효율성 측면에서 접근하는 기존의 방식은 하이퍼바이져 단계에서의 스케줄러를 수정하는 방법이 주를 이루고 있다. 이 방식들은 각 가상 프로세서가 요구하는 전력량을 정확히 파악한다는 전제 하에, 혹은 전력량 측정을 근사치로 계산하는 방식으로 실험을 진행하고 있기에 신뢰성이 떨어진다. 또한, 본 논문에서 제안하는 방식은 이런 스케줄링 방식의 접근법보다 낮은 단계의, 실제 전력 관리 모듈을 수정하는 방식을 채용하였기에 기존 연구와 직접적인 비교 대상이 아니다. 본 논문에서는 기존에 Linux ACPI(Advanced Configuration and Power Interface) 기법과 동일한 전력 관리 방식을 취하고 있는 Xen 하이퍼바이져를 분석 및 수정하여 가상화 환경에서의 전력 관리 능력을 향상시키고자 했다. 각 PCPU에 축적된 부하 정보를 기반으로 하여 전력 상태 변경을 결정하는 기법을 도입, 필요 이상의 전력 상태 변경을 막고 이로 인해 생기는 성능의 낭비를 막고자 했다. 또한, 단일 가중치를 기준으로 전력 상태를 결정하는 기존 방식이 다중 CPU 및 다중 VCPU 환경에 적합지 않다고 판단, 각 물리 CPU 그룹마다 개별적인 가중치를 계산, 이용하는 방식을 추가하여 보다 적합한 전력 상태를 찾고자 하였다.

more