Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
1 
ARM 
Intelligent Power Allocation
Agenda 
 Background and Motivation 
 What is ARM Intelligent Power Allocation? 
 Results 
 Status and Conclusions 
2
Power Consumption Scenarios 
1. Short term responsiveness 
3 
 Power consumption allowed to significantly 
exceed sustain...
Power Consumption Scenarios 
1. Short term responsiveness 
4 
 Power consumption allowed to significantly 
exceed sustain...
Power Consumption Scenarios 
1. Short term responsiveness 
5 
 Power consumption allowed to significantly 
exceed sustain...
Power Consumption Scenarios 
1. Short term responsiveness 
6 
 Power consumption allowed to significantly 
exceed sustain...
Power Consumption Scenarios 
1. Short term responsiveness 
7 
 Power consumption allowed to significantly 
exceed sustain...
Current Linux Thermal Framework 
 Thermal ‘trip’ mechanism 
 Designed to turn on fans, and/or reduce operating 
frequenc...
IPA Thermal Management technology 
 Proactive vs. Reactive Thermal Management 
9 
 Fixed response to temperature crossin...
Agenda 
 Background and Motivation 
 What is ARM Intelligent Power Allocation? 
 Results 
 Status and Conclusions 
10
ARM Intelligent Power Allocation 
11 
SoC 
SoC 
big LITTLE GPU 
IPA 
Tdie 
Tskin 
Performance Requests 
big LITTLE GPU 
Al...
Thermal Management Approach 
12 
Actors 
Power 
Arbiter 
Perf 
metrics 
CPU 
Power model 
Power 
Estimate 
Perf 
request 
...
PID Controller and Power Allocation 
13 
control_temp 
∂e 
∂t x 
K_po/pu 
S 
tdp 
-Temp 
Performance Requests 
Power 
Allo...
PID Controller and Power Allocation 
14 
control_temp 
∂e 
∂t x 
K_po/pu 
S 
tdp 
-Temp 
Performance Requests 
Power 
Allo...
Agenda 
 Background and Motivation 
 What is ARM Intelligent Power Allocation? 
 Results 
 Status and Conclusions 
17
Configuration 
 Platform: Odroid XU3: 4xA15, 4xA7 ARM Mali-T628 
 Aims: 
18 
 Target control temperature 65oC 
 Critic...
Intelligent Power Allocation on Games 
19 
31% higher FPS 
with IPA 
Unity the Chase: 
Enlighten Transporter: 
8% higher F...
Intelligent Power Allocation SOLID Temperature Control 
Unity the Chase: 
T/˚C 
Enlighten Transporter: 
T/˚C 
20
% Improvement on Consecutive Benchmark Runs IPA vs. Static 
21
Intelligent Power Allocation in Action 
 IPA dynamically allocates power to CPU clusters or GPU, based on load 
 Tempera...
Intelligent Power Allocation in Action 
 IPA dynamically allocates power to CPU clusters or GPU, based on load 
 Tempera...
Intelligent Power Allocation in Action 
 IPA dynamically allocates power to CPU clusters or GPU, based on load 
 Tempera...
Intelligent Power Allocation in Action 
 IPA dynamically allocates power to CPU clusters or GPU, based on load 
 Tempera...
Intelligent Power Allocation in Action 
 IPA dynamically allocates power to CPU clusters or GPU, based on load 
 Tempera...
Agenda 
 Background and Motivation 
 What is ARM Intelligent Power Allocation? 
 Results 
 Status and Conclusions 
27
IPA upstreaming – Status 
 ARM has produced a Linux OS implementation of IPA 
28 
 Demonstrates key concepts and shows b...
Conclusions 
 ARM Intelligent Power Allocation is designed to maximise performance in the 
thermal envelope: 
29 
 Proac...
30 
Thank You 
The trademarks featured in this presentation are registered and/or unregistered trademarks of ARM Limited (...
Upcoming SlideShare
Loading in …5
×

Intelligent Power Allocation

473 views

Published on

2014 ARM Forum

Published in: Technology
  • Be the first to comment

Intelligent Power Allocation

  1. 1. 1 ARM Intelligent Power Allocation
  2. 2. Agenda  Background and Motivation  What is ARM Intelligent Power Allocation?  Results  Status and Conclusions 2
  3. 3. Power Consumption Scenarios 1. Short term responsiveness 3  Power consumption allowed to significantly exceed sustainable max power of the SoC for relatively short periods  E.g. Web Browsing, UI update, HDR processing (first few shots) 2. Sustained workload  Goal is to maximise performance at, or within, the sustainable power envelope  Adapt performance allocation to major power consuming entities  E.g. Gaming, long benchmarks, video processing Power/Performance 3. Energy constrained use cases Max Sustainable Power  Operates ‘under the radar’ of intelligent power allocation  E.g. low power audio The illustration to the right depicts 3 distinct types of power consumption: A successful thermal management scheme will maximize the user experience for types1 and 2. Time Burst for responsiveness Sustained performance Power Optimised Low End T >= Tjmax, Tskin 1 2 3
  4. 4. Power Consumption Scenarios 1. Short term responsiveness 4  Power consumption allowed to significantly exceed sustainable max power of the SoC for relatively short periods  E.g. Web Browsing, UI update, HDR processing (first few shots) 2. Sustained workload  Goal is to maximise performance at, or within, the sustainable power envelope  Adapt performance allocation to major power consuming entities  E.g. Gaming, long benchmarks, video processing Power/Performance 3. Energy constrained use cases Max Sustainable Power  Operates ‘under the radar’ of intelligent power allocation  E.g. low power audio The illustration to the right depicts 3 distinct types of power consumption: A successful thermal management scheme will maximize the user experience for types1 and 2. Time Burst for responsiveness Sustained performance Power Optimised Low End T >= Tjmax, Tskin 1 2 3
  5. 5. Power Consumption Scenarios 1. Short term responsiveness 5  Power consumption allowed to significantly exceed sustainable max power of the SoC for relatively short periods  E.g. Web Browsing, UI update, HDR processing (first few shots) 2. Sustained workload  Goal is to maximise performance at, or within, the sustainable power envelope  Adapt performance allocation to major power consuming entities  E.g. Gaming, long benchmarks, video processing Power/Performance 3. Energy constrained use cases Max Sustainable Power  Operates ‘under the radar’ of intelligent power allocation  E.g. low power audio The illustration to the right depicts 3 distinct types of power consumption: A successful thermal management scheme will maximize the user experience for types1 and 2. Time Burst for responsiveness Sustained performance Power Optimised Low End T >= Tjmax, Tskin 1 2 3
  6. 6. Power Consumption Scenarios 1. Short term responsiveness 6  Power consumption allowed to significantly exceed sustainable max power of the SoC for relatively short periods  E.g. Web Browsing, UI update, HDR processing (first few shots) 2. Sustained workload  Goal is to maximise performance at, or within, the sustainable power envelope  Adapt performance allocation to major power consuming entities  E.g. Gaming, long benchmarks, video processing Power/Performance 3. Energy constrained use cases Max Sustainable Power  Operates ‘under the radar’ of intelligent power allocation  E.g. low power audio The illustration to the right depicts 3 distinct types of power consumption: A successful thermal management scheme will maximize the user experience for types1 and 2. Time Burst for responsiveness Sustained performance Power Optimised Low End T >= Tjmax, Tskin 1 2 3
  7. 7. Power Consumption Scenarios 1. Short term responsiveness 7  Power consumption allowed to significantly exceed sustainable max power of the SoC for relatively short periods  E.g. Web Browsing, UI update, HDR processing (first few shots) 2. Sustained workload  Goal is to maximise performance at, or within, the sustainable power envelope  Adapt performance allocation to major power consuming entities  E.g. Gaming, long benchmarks, video processing Power/Performance 3. Energy constrained use cases Max Sustainable Power  Operates ‘under the radar’ of intelligent power allocation  E.g. low power audio The illustration to the right depicts 3 distinct types of power consumption: A successful thermal management scheme will maximize the user experience for types1 and 2. Time Burst for responsiveness Sustained performance Power Optimised Low End T >= Tjmax, Tskin 1 2 3
  8. 8. Current Linux Thermal Framework  Thermal ‘trip’ mechanism  Designed to turn on fans, and/or reduce operating frequency  Activates on temperature overshoot  Does not accommodate power partitioning between different parts of SoC: GPU, CPU, DSP, video  Reactive and static 8 Trip2 Trip1
  9. 9. IPA Thermal Management technology  Proactive vs. Reactive Thermal Management 9  Fixed response to temperature crossing a threshold (Reactive) vs. continuously adapting response based on power consumption and thermal headroom (Proactive)  Static vs. Dynamic Partitioning  A fixed policy for each component based on prior knowledge of its power consumption vs. a dynamic policy that takes into account component behaviour over time  Maximising performance within thermal limits is critical  Closed-loop control to dynamically allocate power budget, taking into account:  Thermal headroom  Real-time performance requirements
  10. 10. Agenda  Background and Motivation  What is ARM Intelligent Power Allocation?  Results  Status and Conclusions 10
  11. 11. ARM Intelligent Power Allocation 11 SoC SoC big LITTLE GPU IPA Tdie Tskin Performance Requests big LITTLE GPU Allocated Performance Power to Heat Real-time CPU & GPU Performance requests Elements: •Temperature control • Power estimation • Performance allocation Dynamic Allocation by: •Performance required •Thermal headroom
  12. 12. Thermal Management Approach 12 Actors Power Arbiter Perf metrics CPU Power model Power Estimate Perf request Delta Power Estimate Granted Performance Perf metrics GPU Power model Power Estimate Perf request Delta Power Estimate Granted Performance Perf metrics … Power model Power Estimate Perf request Delta Power Estimate Granted Performance Policy Config Temp. Monitor Central Arbiter performs two tasks: 1.Keeps system within thermal envelope  Proactive power budget via closed loop control  Exploits thermal headroom 2.Dynamic power allocation per actor based on  Performance demand  Power models PID Power arbitration
  13. 13. PID Controller and Power Allocation 13 control_temp ∂e ∂t x K_po/pu S tdp -Temp Performance Requests Power Allocation Pmax Performance Granted e x K_i x S Actor 1 … Actor N I P -rest_of_soc_power ∫e K_d D S Actor1..N weight Actor1..N maxpower Actor 1 … Actor N PID – Controller Provides a power budget, based on current and control temp
  14. 14. PID Controller and Power Allocation 14 control_temp ∂e ∂t x K_po/pu S tdp -Temp Performance Requests Power Allocation Pmax Performance Granted e x K_i x S Actor 1 … Actor N I P -rest_of_soc_power ∫e K_d D S Actor1..N weight Actor1..N maxpower Actor 1 … Actor N Power Allocation based on:  Requested performance  Power budget  Policy Produces final output power
  15. 15. Agenda  Background and Motivation  What is ARM Intelligent Power Allocation?  Results  Status and Conclusions 17
  16. 16. Configuration  Platform: Odroid XU3: 4xA15, 4xA7 ARM Mali-T628  Aims: 18  Target control temperature 65oC  Critical temperature 69oC Static policy:  GPU:  4 Trip points, one for each frequency  At each trip point, max frequency is reduced  Trips at 56, 57, 58, 59 oC  A15/A7:  3 trip points at 60, 62, 64 oC IPA:  Control temp = 65 oC  Hotplug actioned if reached 69oC  Higher priority for A7
  17. 17. Intelligent Power Allocation on Games 19 31% higher FPS with IPA Unity the Chase: Enlighten Transporter: 8% higher FPS with IPA T/˚C T/˚C Time Time
  18. 18. Intelligent Power Allocation SOLID Temperature Control Unity the Chase: T/˚C Enlighten Transporter: T/˚C 20
  19. 19. % Improvement on Consecutive Benchmark Runs IPA vs. Static 21
  20. 20. Intelligent Power Allocation in Action  IPA dynamically allocates power to CPU clusters or GPU, based on load  Temperature determines available power 22  You set Temperature, IPA caps Frequencies  Load determines how power is divided between CPUs (big and LITTLE) and GPU Median filtered chart for clarity Max OPP big Max OPP LITTLE Max OPP GPU Running Frequency Time (s) GLB Trex HD [3 Runs]  big  LITTLE  GPU
  21. 21. Intelligent Power Allocation in Action  IPA dynamically allocates power to CPU clusters or GPU, based on load  Temperature determines available power  Load determines how power is divided between CPUs (big and LITTLE) and GPU 23  You set Temperature, IPA caps Frequencies Median filtered chart for clarity Max OPP big Max OPP LITTLE Max OPP GPU Device is still cool There are no constraints on frequency Every actor runs at max frequency Running Frequency Time (s) GLB Trex HD [3 Runs]  big  LITTLE  GPU
  22. 22. Intelligent Power Allocation in Action  IPA dynamically allocates power to CPU clusters or GPU, based on load  Temperature determines available power  Load determines how power is divided between CPUs (big and LITTLE) and GPU 24  You set Temperature, IPA caps Frequencies Median filtered chart for clarity High load on GPU Low load on CPU GPU gets most of the power Max OPP big Max OPP LITTLE Max OPP GPU Running Frequency Time (s) GLB Trex HD [3 Runs]  big  LITTLE  GPU
  23. 23. Intelligent Power Allocation in Action  IPA dynamically allocates power to CPU clusters or GPU, based on load  Temperature determines available power  Load determines how power is divided between CPUs (big and LITTLE) and GPU 25  You set Temperature, IPA caps Frequencies Median filtered chart for clarity Max OPP big Max OPP LITTLE Max OPP GPU High load on CPU Low load on GPU CPU gets most of the power Running Frequency Time (s)  big  LITTLE  GPU GLB Trex HD [3 Runs]
  24. 24. Intelligent Power Allocation in Action  IPA dynamically allocates power to CPU clusters or GPU, based on load  Temperature determines available power  Load determines how power is divided between CPUs (big and LITTLE) and GPU 26  You set Temperature, IPA caps Frequencies Median filtered chart for clarity Max OPP big Max OPP LITTLE Max OPP GPU As the device gets hotter IPA reduces available power to actors to maintain temperature control Running Frequency Time (s) GLB Trex HD [3 Runs]  big  LITTLE  GPU
  25. 25. Agenda  Background and Motivation  What is ARM Intelligent Power Allocation?  Results  Status and Conclusions 27
  26. 26. IPA upstreaming – Status  ARM has produced a Linux OS implementation of IPA 28  Demonstrates key concepts and shows benefit on real workloads  ARM contributing IPA to Linux kernel  RFCs have been sent to linux-pm  Latest: v5 RFC: https://lkml.org/lkml/2014/7/10/365  Supported by Mali DDK  Check out IPA code for ARM Juno release (includes GPU integration)  https://git.linaro.org/landing-teams/working/arm/kernel-release.git (tag ‘lsk-3.10-armlt-juno-20140924’)  http://releases.linaro.org/14.09/members/arm/android/images/armv8-android-juno-lsk  Upstream timescales are subject to variation, depending on community feedback  ARM, Linaro, ARM partners all contributing & reviewing
  27. 27. Conclusions  ARM Intelligent Power Allocation is designed to maximise performance in the thermal envelope: 29  Proactively adjusts available power budget, based on device temperature  Allocates power dynamically among actors, based on performance demand  ARM Intelligent Power Allocation shows solid thermal control and better performance than existing Linux thermal framework  We are providing Intelligent Power Allocation to the community to as baseline for best-in-class thermal management
  28. 28. 30 Thank You The trademarks featured in this presentation are registered and/or unregistered trademarks of ARM Limited (or its subsidiaries) in the EU and/or elsewhere. All rights reserved. Any other marks featured may be trademarks of their respective owners

×