1 / 63

Energy-Efficient System Virtualization for Mobile and Embedded Systems

Energy-Efficient System Virtualization for Mobile and Embedded Systems. 2013/07/10. Outline. Project overview System design Power model Offline energy-efficient task scheduling Simulation and experimental results Online energy-efficient task scheduling Simulation results

Télécharger la présentation

Energy-Efficient System Virtualization for Mobile and Embedded Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Energy-Efficient System Virtualization for Mobile and Embedded Systems 2013/07/10

  2. Outline • Project overview • System design • Power model • Offline energy-efficient task scheduling • Simulation and experimental results • Online energy-efficient task scheduling • Simulation results • Plan for the next six months

  3. Outline • Project overview • System design • Power model • Offline energy-efficient task scheduling • Simulation and experimental results • Online energy-efficient task scheduling • Simulation results • Plan for the next six months

  4. Motivation • Mobile devices have become an important tool in our daily life. • Mobile virtualization enables a device to run multiple OS or virtual machines simultaneously. • Since the energy and resources of a mobile device is limited, how to achieve energy-efficient while keeping performance is an important issue.

  5. Goal • Energy-efficient mobile virtualization system • Based on microkernel • Energy-efficient task scheduling

  6. Energy-Efficient Task Scheduling • The scheduler of microkernel can see every tasks from different VMs. • Can make better scheduling decisions. • We have been working on how to derive an energy efficient scheduling algorithm. • Decide the task execution sequence. • Decide CPU processing rate for each task.

  7. Outline • Project overview • System design • Power model • Offline energy-efficient task scheduling • Simulation and experimental results • Online energy-efficient task scheduling • Simulation results • Plan for the next six months

  8. Outline • Project overview • System design • Power model • Offline energy-efficient task scheduling • Simulation and experimental results • Online energy-efficient task scheduling • Simulation results • Plan for the next six months

  9. Models • Taski • Tasks are composed by many instructions. • Tasks are non-preemptive. • Tasks can be rescheduled in different orders. • Processing rate pi • Core can works under different processing rates. • No rate change while processing a task.

  10. Power Model • Task’s Energy Consumptionεk=(pk)3tktk =Bk/ pk • εk : expected energy consumption(Joules) • pk: actual execution rate • tk: actual execution time • Bk: task’s number of instructions • From the above two equations: • εk=Bk(pk)2

  11. Simplification • Assume there are only two processing rates • pH and pL • pH = 2* pL • Changing processing rate will affect both execution time and energy consumption.

  12. Cost Function • Ci is the cost for executing Taski. • Tj: The execution time of Taskj • εi: The energy consumption of Taski • H :The cost ratio between time and energy. • Bi : Task’s number of instructions • “The cost of a task depends on how long it has to wait and the energy consumed by this task.”

  13. Outline • Project overview • System design • Power model • Offline energy-efficient task scheduling • Simulation and experimental results • Online energy-efficient task scheduling • Simulation results • Plan for the next six months

  14. Scenarios • According to different environment and task characteristic, we can have different scenarios. • Environment • Single core • Multi-core • Task characteristic • With deadline constraint • Without deadline

  15. Scenarios

  16. Scenario 1 • Each task has a deadline. • Single-core environment. • “Find out how to schedule a set of tasks that satisfy a given time and energy constraints.“ • NP-Complete

  17. Proof of NP-Completeness • Assume there are n+1 tasks • Using pL, • Given • Time :2.5T • Energy :6.5ε

  18. Proof of NP-C(Cont.) • The n+1th task must run with pH • 1.5T, 2.5 ε left for the other n tasks. • The rest n tasks • Half pH, half pL • This can be reduced to a partition problem. • NP-C.

  19. Solution • Dynamic Programming • Assume there are only two processing rates • E(i,t) : the energy consumption of finishing i tasks before time t. • Recursively find the minimum energy consumption.

  20. Scenarios

  21. Scenario 2 • No deadline constraint. • Single core environment. • Find an execution sequence that minimize the overall cost. • Costi= • ΣCosti

  22. Some Lemmas • Lemma 1 • Assume that the processing rate of executing each task remain unchanged, shorter task first scheduling leads to the minimum cost. • Lemma 2 • If a task is executed using a higher processing rate, the number of tasks waiting after it must be increased to compensate the extra costs.(?)

  23. Theorem • Theorem 1 • There exists an optimal solution with the minimum cost in which the tasks are in non-decreasing order of execution time.

  24. Algorithm • 1.Sort the tasks by their execution time in ascending order. • 2.From the last task to the first, do • 3. check if increasing the processing rate of executing this task benefits the overall cost. • 4. if yes, increase its processing rate • 5.loop

  25. Scenarios

  26. Scenario 3 • No deadline constraint. • Multi-core environment. • Decides which task goes to which core

  27. Example • 1. waiting time = (0+4+8+12)+(0+8) = 32 • 2. waiting time = (0+4+8)+(0+4+8) = 24 4 4 4 4 8 8 4 4 8 4 4 8

  28. Scheduling for Multi-cores • Shorted Queue First with Ascending Task Order (SQF-ATO). • Sort the tasks in non-decreasing order. • Repeat until all tasks are assigned. Assign the first task in the shorter queue. • Apply frequency tuning for single core algorithm to each queue.

  29. Scenarios

  30. Outline • Project overview • System design • Power model • Offline energy-efficient task scheduling • Simulation and experimental results • Online energy-efficient task scheduling • Simulation results • Plan for the next six months

  31. Experimental Environment • Run fiasco microkernel on x86 machine • 4 cores • 12 Processing rates • From 1.6GHz to 3.06 GHz • Benchmark: MiBench • 16 synthesis workloads, each with different execution time. • From 1 seconds to 17 minutes using 1.6GHz. • Power meter

  32. Simulation • We have done the following simulations: • Use the proposed heuristic to find a schedule plan, and estimate its cost. • Use dynamic programming to find the schedule plan with the minimum cost. • Find the schedule plan that only consider time as cost. • Find the schedule plan that only consider energy consumption as cost. • Two processing rates: 1.6 and 3.0GHz

  33. Simulation Results • The schedule plan from SQF-ATOis the same as optimal solution.

  34. Experiment I • Execute the schedule plans from simulation, and measure the actual energy consumption and waiting time. • Schedule plans: • SQF-ATO • Time-only • Energy-only

  35. Experiment Results • Comparison between simulation and experimental results

  36. Experiment Results

  37. Comparison • Detail of SQF-ATO schedule plan

  38. Summary of Experiment 1 • The experimental result is quiet similar to the simulation results. • Discrepancy within 5%. • Consider only one metric(time or energy consumption) results in lower cost, but the other metric will greatly suffers.

  39. Experiment 2 • Compare the cost between SQF-ATO and the baseline scheduling metrics of microkernel. • Baseline: FIFO without dynamic frequency scaling.

  40. Experiment Results

  41. Comparison

  42. Summary of Experiment 2 • Our heuristic improves the overall cost at about 26%. • Mostly from energy consumption(48%)

  43. Experiment 3 • Extend the frequency choices from 2 to 5. • 1.6GHz • 2.0GHz • 2.4GHz • 2.8GHz • 3.0GHz

  44. Experiment Results

  45. Comparison

  46. Summary of Experiment 3 • Using the same scheduling algorithm(SQF-ATO), the cost of five frequency choices is lower the cost of two frequency choices • In this experiment, the largest frequency used is 2.4GHz instead of 3.0GHz.

  47. Comparison

  48. Outline • Project overview • System design • Power model • Offline energy-efficient task scheduling • Simulation and experimental results • Online energy-efficient task scheduling • Simulation results • Plan for the next six months

  49. Scenarios • Task sets are dynamic. • Different types of tasks. • Interactive task • Computation task • Background task • Schedule tasks and adjust core frequency every fixed time interval. • U: interval length.

More Related