An Energy-efficient Scheduling Policy for Hypervisors on
Asymmetric Multi-core
Ching-Chi Lin, Yi-Chung Chen
Institute of Information Science, Academia Sinica
Department of Computer Science and Information Engineering, National Taiwan University
You-Cheng Syu, Pangfeng Liu
Department of Computer Science and Information Engineering, National Taiwan University Graduate Institute of Networking and Multimedia, Nation Taiwan University
Outline
Introduction
◦ Background
◦ Motivation
Virtual Core Scheduling Problem
◦ Model
◦ Solution
Evaluation
Conclusion
Background
Asymmetric multi-core architecture.
◦ Consists of cores with the same ISA but different computing capabilities and power characteristics..
ARM (big.LITTLE), Qualcomm (aSMP), Nvidia (vSMP), Samsung, MediaTek…etc.
◦ Aim to achieve both performance and energy- efficient.
Motivation
Design new scheduling algorithm for asymmetric multi-core platforms.
◦ Exert the advantage of different types of cores.
◦ Maximize power efficiency with modest performance sacrifices.
4
Hypervisor Scheduler
Assigns the virtual cores to physical cores for execution.
◦ Determines the execution order and amount of time assigned to each virtual core
according to a scheduling policy.
◦ Current solutions
Xen - credit-based scheduler
KVM - completely fair scheduler
Current Load-balancing Design
6
VM2 VM1
vCore2
Load-balanced
Hypervisor Scheduler
Power- efficient
Core
vCore3
Power- efficient
Core
Performance Core
Performance Core
vCore0 vCore1
Proposed Design
VM2 VM1
vCore2
Asymmetry-aware Hypervisor Scheduler
Power- efficient
Core
vCore3
Power- efficient
Core
Performance Core
Performance Core
vCore0 vCore1
Goal
Design and implement a new hypervisor scheduler for asymmetric multi-core
platform.
◦ Achieve energy-saving while satisfying the resource requirement of each virtual core.
8
Assumptions
The scheduling policy in the guest OS is already asymmetry-aware.
The hypervisor is aware of the frequency
of each virtual core.
Outline
Introduction
◦ Background
◦ Motivation
Virtual Core Scheduling Problem
◦ Model
◦ Solution
Evaluation
Conclusion
Virtual Core Scheduling Problem
For every time period, given the operating frequency of each virtual core, the
scheduler has to generate a scheduling plan such that
◦ The power consumption is minimized.
◦ Satisfy the resource requirements of virtual cores.
Scheduling plan
The amount of time each virtual core should run on each physical core.
The execution order of virtual cores on each physical core.
12
Power Model
Relation between power consumption, core frequency, and load.
◦ bzip2
Computing Resource
Number of CPU cycles.
◦ Multiplying the frequency by time.
Our scheduling plan must satisfies the
resource requirement of each virtual core.
◦ Unless “fully utilized”.
Resource required from vCPUs > resources provided by pCPUs.
15
Optimization Problem
Objective function:
n: number of physical core
Generate a set of a
i,j.
◦ ai,j:the amount of time executing virtual core j on physical core i in a time interval.
◦ Some constraints.
) min(
1
∑
= ni
Poweri
Solution
Three phase scheduling
◦ Phase 1:generate the amount of time each virtual core should run on physical cores.
◦ Phase 2 & 3: determine the execution order of virtual cores on a physical core.
19
Phase 1
Generate the amount of “time slice” each virtual core should run on physical cores.
Linear programming Greedy heuristic
◦ Assign workloads to the most energy-efficient physical core with available resources.
pCPU 1 pCPU 2 pCPU3 …
vCPU 0 60 0 0 …
Phase 2
Determine the execution order of virtual cores on a physical core according to the result of phase 1.
“Open Shop Scheduling Problem”
◦ Can be solved in polynomial time if jobs can preempt each other.
21
Phase 3
Reorder the Execution Slices to reduce
migration overhead.
Outline
Introduction
◦ Background
◦ Motivation
Virtual Core Scheduling Problem
◦ Model
◦ Solution
Evaluation
Conclusion
Experimental Environment
ARM Juno board
◦ 2 performance core A57
◦ 4 power-efficient core A53
Xen 4.5.0-rc
◦ Dom0: dual-core VM
◦ Dedicate 2 power-efficient to Dom0 VM.
Workload: Coremark
◦ Light, medium, heavy
Workload Setting
Two DomU: dual-core VMs.
Two sets of input:
◦ Case 1: Both VMs with light workloads.
◦ Case 2: One VM with medium workloads, the other with heavy workloads.
25
Results
Results(Cont.)
◦ Case 1: asymmetry-aware method is about 50.4% of that of credit-based method.
◦ Case 2:asymmetry-aware method uses 70.8%
of energy used by the credit-base method.
27
Energy(J) Time(Sec.)
Case 1 Asymmetry-aware 4.948 27
Credit-based 9.817 25.2
Case 2 Asymmetry-aware 24.775 71
Credit-based 34.890 63
Outline
Introduction
◦ Background
◦ Motivation
Virtual Core Scheduling Problem
◦ Model
◦ Solution
Evaluation
Conclusion
We develop an energy-efficient scheduler for asymmetric multi-core platforms.
◦ Generates energy-efficient scheduling plans that satisfy virtual core resource
requirements.
Will keep improving the scheduler and the related issues.
29