research on asymmetric-aware hypervisor scheduler project overview 6/4

Post on 18-Jan-2016

217 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Research on Asymmetric-aware Hypervisor SchedulerProject overview

6/4

OutlineIntroductionCurrent StatusWorking Plans

OutlineIntroductionCurrent StatusWorking Plans

GoalGenerate scheduling plans that

minimize the power consumption while satisfying the requirement of virtual cores on asymmetric multi-core platform.

4

OutlineIntroductionCurrent StatusWorking Plans

Current StatusDesign and implement the three-

phase scheduler based on Xen scheduling framework.

Solve some problems in proto-type◦Remove the overhead caused by

“false-busy”, i.e. assign vCPU that is not runnable to cores.

Conduct experiments with different settings.

Paper submission: SOCA’15.

Experimental Settingsworkload: Coremark

◦Light, medium, heavyDifferent scenarios

◦2 dual-core guest virtual machines.◦2 quad-core guest virtual machines.◦4 dual-core guest virtual machines.

Compare with credit-based scheduler and AASH.

Results

OutlineIntroductionCurrent StatusWorking Plans

Short-term PlanImprove the stability and reduce

the overhead of the scheduler.

Improve the implementation of the three-phase scheduling algorithm.

Add cpufreq to Dom0 and control the frequency of physical cores. (Issac)

10

Mid-term PlanSupport more extensive and

complicated workloads.Enhance Xen to support runtime

DVFS.Leverage on DVFS of the physical

cores.◦The scheduler can guide/affect the

DVFS mechanism by generating core frequency in the scheduling plan.

11

Power Consumption of Different Frequencies

Frequency(MHz)Power

consumption of the cluster(W)

Average power consumption of a

core(W)

A57 core cluster

450 0.13 0.03

800 0.37 0.15

1100 0.79 0.36

A53core cluster

450 0.09 0.01625

700 0.19 0.04125

850 0.32 0.07375

Idle power consumption:[A57] 0.07 W; [A53] 0.025W

Long-term PlanLeverage on task information

from guest virtual machines.◦Retrieve the information by hyper-

calls.◦Change the cpumask of task in order

to create big and little virtual cores.

Information RetrievedInstall a kernel module that

record the information from top.◦Filter out system/background

processes by PID and/or process name.

◦Focus on processes with high priority/low nice value.

◦Multi-thread process.

Implementation IssueTwo different methods:

◦The kernel module collects the information and decide the cpumask for tasks. The hyper-call only passes the resource

requirement/big-little virtual core setting to hypervisor.

◦The kernel module collects the information, then pass the filtered info to hypervisor. Need a component in hypervisor to

analyze and make decisions.

Discussion

top related