1 / 40

Energy-Efficient System Virtualization for Mobile and Embedded Systems

Energy-Efficient System Virtualization for Mobile and Embedded Systems. Final Review 2014/01/21. Outline. Project overview big-LITTLE core architecture Models Resource-Guided scheduling Experimental results Conclusion. Outline. Project overview big-LITTLE core architecture Models

vida
Download Presentation

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 Final Review 2014/01/21

  2. Outline • Project overview • big-LITTLE core architecture • Models • Resource-Guided scheduling • Experimental results • Conclusion

  3. Outline • Project overview • big-LITTLE core architecture • Models • Resource-Guided scheduling • Experimental results • Conclusion

  4. What Have Been Done • The first-half year • Energy-efficient task scheduling for per-core DVFS architecture • Offline energy-efficient task scheduling • Online energy-efficient task scheduling • The last-half year • Energy-efficient task scheduling for big-LITTLE core architecture

  5. Goal of Our big-LITTLE Aware Scheduling • Derive an energy-efficient scheduler for big-LITTLE core architecture • Satisfies the resource requirement of each task. • Minimizes the average power consumption.

  6. Outline • Project overview • big-LITTLE core architecture • Models • Resource-Guided scheduling • Experimental results • Conclusion

  7. Big-LITTLE Core Architecture • Developed by ARM in 2011. • Combines two kinds of architecturally compatible processors with different power and performance characteristics. • Three different types • 1st Cluster migration • 2nd CPU migration/In-Kernel Switcher • 3rd Heterogeneous Multi-Processing(HMP)

  8. Type 1: Cluster Migration • Either big or LITTLE cores are used simultaneously.

  9. Type 2: CPU Migration • Logical CPU: a pair of big and LITTLE core. • Only one of the two cores in a pair is powered up and processing tasks at a time.

  10. Type 3: HMP • All the big and LITTLE cores can be used at the same time.

  11. Outline • Project overview • big-LITTLE core architecture • Models • Resource-Guided scheduling • Experimental results • Conclusion

  12. Building the Power Model • Measure the average power consumption of big and LITTLE core using different core frequency under different CPU load. • Platform: ODROID-XU • 1st type, Cluster migration. • Cortex™-A15 and Cortex™-A7. • Per-cluster DVFS.

  13. Average Power Consumption

  14. Power Model • The power consumption Pt of an interval t is: • nband nL: the number of big and little cores • Pbi,tand PLj,t : the power consumption of big core iand little core j during time t. • Ebf and ELf: the power consumption of big and little core with frequency f under load 100%. • loadingn,t : the load of the n-th core in interval t.

  15. Task Model • For every Taskiin a scheduling interval, we define: • loadingi:the percentage of time that task Ti is running on a core in a period of time. • CoreFreqi:the current frequency of the core cluster this task is running on.

  16. Task Model(Cont.) • We also define the minimum resource required for Taskias: • QoSFreqi :the minimum core frequency that can satisfies the QoS requirement of Taski. • QoSLoadingi :the CPU load of Taski while the core frequency is QoSFreqi.

  17. Objective • Find a scheduling plan for an interval t according to task loadings, such that Pt is minimum while satisfying task resource requirements. • Recall that

  18. Outline • Project overview • big-LITTLE core architecture • Models • Resource-Guided scheduling • Experimental results • Conclusion

  19. Resource-Guided scheduling • Consist of three phases: • TaskInfophase • LittleCorephase • bigCorephase • Activates every scheduling interval, and makes decisions for the next interval.

  20. TaskInfo Phase • Gathers the loading information of each task. • Collects the load and current frequency of each core.

  21. LittleCore Phase • If LITTLE core cluster is powered-off, skip this phase. • Compares resourcei of each Taski in little core cluster with their res_reqi. • If any task gets less resources than its minimum requirement, adjusts core settings.

  22. Core Adjustment • First, try to provide more resources to tasks by increasing LITTLE core frequency. • If increasing frequency cannot provide enough resources, add one LITTLE core. • Still, if add core cannot provide enough resources, migrate the task to big core cluster.

  23. bigCore Phase • If big core cluster is powered-off, skip this phase. • Compares resourcei of each Taski in big core cluster with their res_reqi. • Similar to LittleCore phase, without “migrate to bigger/powerful cores”. • If every task requirements are satisfied, try to migrate task back to LITTLE. • By estimating if task requirements can be satisfied in LITTLE cores.

  24. Flowchart

  25. Outline • Project overview • big-LITTLE core architecture • Models • Resource-Guided scheduling • Experimental results • Conclusion

  26. Platform • Platform: ODROID-XU • 1st type, Cluster migration • Cortex™-A15 and Cortex™-A7 • Per-cluster DVFS

  27. Benchmark • Three applications • TTpod: MP3 palyer • Candy Crush: Game • Chrome: Web browser

  28. Simulation • Simulate the execution of the three applications separately, and measure their average power consumption on the three types of big-LITTLE corearchitectures. • Compare the average power consumption with Linaro’s strategies.

  29. Simulation Results • Linaro’s strategies increase core frequency while encountering high CPU load, and eventually uses the highest frequency of big core to run Candy Crush and Chrome. • Our method use LITTLE core for Candy Crush, and big core with lower frequency for Chrome, thus reduce power consumption while keeping the QoS.

  30. Experiment • Execute the three applications together, and measure the average power consumption during execution. • Scenario • A user first starts TTpod to play some music. A minute later, this user starts to play the game, Candy Crush, while keeping the music playing. After playing the game for three minutes, this user finishes the game and opens Chrome to search for a solution on how to conquer a certain stage of Candy Crush.

  31. Results – Linaro’s Strategy

  32. Results – Resource-Guided

  33. Experimental Summary • Average power consumptions • Linaro’s strategy: 0.843 Watt • Resource-guided: 0.089 Watt • The main reason is that some applications over-use resources. • For example: Candy Crush • Linaro’s strategy is unaware of such condition, thus keep increasing the core frequency.

  34. Outline • Project overview • big-LITTLE core architecture • Models • Resource-Guided scheduling • Experimental results • Conclusion

  35. Conclusion • Build an energy-efficient scheduler for big-LITTLE core architecture that satisfies the resource requirement of each task and minimizes the energy consumption. • Propose a scheduling policy which decides the resource use for the tasks in a dynamic fashion. • The experimental results demonstrate that compared to Linaro’s scheduling strategies, our resource-guided scheduling method is more power-efficient.

  36. Realizing Power-aware big-LITTLE scheduler on ICL Hypervisor 2014/01/21

  37. Project Goal • Enabling power-aware big-LITTLE scheduler design on ICL Hypervisor • Target hardware platform • ODROID-XU+"E" with power meter

  38. Further Details • Schedule vCPU between host CPU. • Hypervisor scheduler may not interfere Guest OS process scheduler. • Two conditions: • Guest OS has big-LITTLE-aware scheduler • Hypervisor assign host CPU to guest according to Guest OS requirements. • Guest OS does not have big-LITTLE-aware scheduler • Hypervisor scheduler assign vCPU according to guest condition.

  39. Preliminary Thought • Schedules vCPU to host CPU. • Guest OS should provide information to hypervisor • Information such as “x big and y little” or “vCore 2 require at least z processing speed”. • What information can ICL hypervisor get from guest OS?

  40. VM Introspection • Since our scheduler needs QoS information from tasks, we need to know what applications a Guest OS is running. • To maintain QoS and save energy. • Thus we need hypervisor to support VM introspection.

More Related