Abstract
For battery based real-time embedded systems, high performance to meet their real-time constraints and energy efficiency to extend battery life are both essential. Real-Time Dynamic Voltage Scaling (RT-DVS) has been a key technique to satisfy both requirements. In this paper, we present an efficient RT-DVS algorithm called EccEDF that is designed based on ccEDF. The proposed algorithm can precisely calculate the maximum unused utilization with consideration of the elapsed time while keeping the structural simplicity of ccEDF, which overlooked the time needed to run the task in calculating the available slack. The maximum unused utilization can be calculated by dividing remaining execution time($C_i-cc_i$) by remaining time($P_i-E_i$) on completion of the task and it is proved using Fluid scheduling model. We also show that the algorithm outperforms ccEDF in practical applications which is modelled using a PXA250 and a 0.28V-to-1.2V wide-operating-range IA-32 processor model.
배터리 기반의 실시간 내장형 시스템에서는 실시간성을 만족시키기 위한 고속의 성능뿐만 아니라 배터리의 수명을 늘리기 위한 높은 에너지 효율이 요구된다. 실시간 동적전압조정(Real-Time Dynamic Voltage Scaling : RT-DVS)은 이러한 두 가지 요구사항을 만족시키기 위한 핵심기술이다. 본 논문에서는 ccEDF에 기반한 고 효율의 동적전압조정 알고리듬인 EccEDF를 제안한다. EccEDF는 ccEDF의 최대 장점중 하나인 구조적 단순성을 유지하면서 ccEDF 알고리듬의 보수성에 의해 간과된 소요시간(elapsed time)을 고려하여 태스크의 종료시 슬랙에 의해 절감될 수 있는 최대 이용률을 정확하게 계산할 수 있는 알고리듬이다. 절감될 수 있는 최대 이용률은 조기종료 시점에서 잔여수행시간($C_i-cc_i$)을 잔여시간($P_i-E_i$)으로 나누어 계산할 수 있으며, 플루이드 스케줄링 모델을 이용하여 이를 증명한다. 또한 인텔사의 동적전압조정 프로세서 중 초기 모델인 PXA250과 0.28V에서 1.2V까지 폭넓은 동적전압조정 능력을 가진 최신 IA-32 프로세서의 모델을 사용한 시뮬레이션을 통해 실제 응용에서도 EccEDF가 ccEDF 보다 우수함을 입증한다.