intelligent power allocation

28
1 ARM Intelligent Power Allocation

Upload: chiou-nan-chen

Post on 13-Jul-2015

89 views

Category:

Technology


1 download

TRANSCRIPT

1

ARM

Intelligent Power Allocation

2

Agenda

Background and Motivation

What is ARM Intelligent Power Allocation?

Results

Status and Conclusions

3

Power Consumption Scenarios

1. Short term responsiveness

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

3. Energy constrained use cases

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. P

ower

/Per

form

ance

Time

Max Sustainable Power

Burst for

responsiveness

Sustained

performance

Power Optimised

Low End

T >= Tjmax, Tskin

1 32

4

Power Consumption Scenarios

1. Short term responsiveness

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

3. Energy constrained use cases

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. P

ower

/Per

form

ance

Time

Max Sustainable Power

Burst for

responsiveness

Sustained

performance

Power Optimised

Low End

T >= Tjmax, Tskin

1 32

5

Power Consumption Scenarios

1. Short term responsiveness

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

3. Energy constrained use cases

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. P

ower

/Per

form

ance

Time

Max Sustainable Power

Burst for

responsiveness

Sustained

performance

Power Optimised

Low End

T >= Tjmax, Tskin

1 32

6

Power Consumption Scenarios

1. Short term responsiveness

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

3. Energy constrained use cases

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. P

ower

/Per

form

ance

Time

Max Sustainable Power

Burst for

responsiveness

Sustained

performance

Power Optimised

Low End

T >= Tjmax, Tskin

1 32

7

Power Consumption Scenarios

1. Short term responsiveness

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

3. Energy constrained use cases

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. P

ower

/Per

form

ance

Time

Max Sustainable Power

Burst for

responsiveness

Sustained

performance

Power Optimised

Low End

T >= Tjmax, Tskin

1 32

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

Trip2

Trip1

9

IPA Thermal Management technology

Proactive vs. Reactive Thermal Management

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

Agenda

Background and Motivation

What is ARM Intelligent Power Allocation?

Results

Status and Conclusions

11

SoC

SoC

ARM Intelligent Power Allocation

IPA

Tdie

Tskin Performance Requests

Allocated Performance

big LITTLE GPU

big LITTLE GPU

Power to Heat

Dynamic Allocation by:

•Performance required

•Thermal headroom

Real-time CPU & GPU

Performance requests

Elements:

•Temperature control

• Power estimation

• Performance allocation

12

Actors

Thermal Management Approach

Power

Arbiter

Perf

metrics

CPU

Pow

er m

odel

Power

Estimate

Perf

request

Delta

Power

Estimate

Granted Performance

Perf

metrics

GPU

Pow

er m

odel

Power

Estimate

Perf

request

Delta

Power

Estimate

Granted Performance

Perf

metrics

Pow

er m

odel

Power

Estimate

Perf

request

Delta

Power

Estimate

Granted Performance

Config

Temp.

Monitor

Policy

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

PID Controller and Power Allocation

control_temp

K_po/pu

S

tdp

-Temp

Power

Allocation

Pmax

Performance Granted

Performance Requests

e

x

x S

K_iActor 1 … Actor N

P

I

-rest_of_soc_power

∫e

∂e

∂t x

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

PID Controller and Power Allocation

control_temp

K_po/pu

S

tdp

-Temp

Power

Allocation

Pmax

Performance Granted

Performance Requests

e

x

x S

K_iActor 1 … Actor N

P

I

-rest_of_soc_power

∫e

∂e

∂t x

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

17

Agenda

Background and Motivation

What is ARM Intelligent Power Allocation?

Results

Status and Conclusions

18

Configuration

Platform: Odroid XU3: 4xA15, 4xA7 ARM Mali-T628

Aims:

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

19

Intelligent Power Allocation on Games

31% higher FPS

with IPA

Unity the Chase:

Enlighten Transporter:

8% higher FPS

with IPA

T/˚C

T/˚C

Time

Time

20

Intelligent Power Allocation SOLID Temperature Control

Unity the Chase:

Enlighten Transporter:

T/˚C

T/˚C

21

% Improvement on Consecutive Benchmark Runs IPA vs. Static

22

Intelligent Power Allocation in Action

IPA dynamically allocates power to CPU clusters or GPU, based on load

Temperature determines available power

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

Runnin

g Fre

quency

Time (s)

GLB Trex HD [3 Runs] big

LITTLE

GPU

23

Intelligent Power Allocation in Action

Median filtered chart for clarity

Device is still cool

There are no constraints on frequency

Every actor runs at max frequency

Max OPP big

Max OPP LITTLE

Max OPP GPU

Runnin

g Fre

quency

Time (s)

GLB Trex HD [3 Runs]

IPA dynamically allocates power to CPU clusters or GPU, based on load

Temperature determines available power

You set Temperature, IPA caps Frequencies

Load determines how power is divided between CPUs (big and LITTLE) and GPU

big

LITTLE

GPU

24

Intelligent Power Allocation in Action

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

Runnin

g Fre

quency

Time (s)

GLB Trex HD [3 Runs]

IPA dynamically allocates power to CPU clusters or GPU, based on load

Temperature determines available power

You set Temperature, IPA caps Frequencies

Load determines how power is divided between CPUs (big and LITTLE) and GPU

big

LITTLE

GPU

25

Intelligent Power Allocation in Action

Median filtered chart for clarity

High load on CPU

Low load on GPU

CPU gets most of the power

Max OPP big

Max OPP LITTLE

Max OPP GPU

Runnin

g Fre

quency

Time (s)

big

LITTLE

GPU

GLB Trex HD [3 Runs]

IPA dynamically allocates power to CPU clusters or GPU, based on load

Temperature determines available power

You set Temperature, IPA caps Frequencies

Load determines how power is divided between CPUs (big and LITTLE) and GPU

26

Intelligent Power Allocation in Action

Median filtered chart for clarity

As the device gets hotter

IPA reduces available power to actors

to maintain temperature control

Max OPP big

Max OPP LITTLE

Max OPP GPU

Runnin

g Fre

quency

Time (s)

GLB Trex HD [3 Runs]

IPA dynamically allocates power to CPU clusters or GPU, based on load

Temperature determines available power

You set Temperature, IPA caps Frequencies

Load determines how power is divided between CPUs (big and LITTLE) and GPU

big

LITTLE

GPU

27

Agenda

Background and Motivation

What is ARM Intelligent Power Allocation?

Results

Status and Conclusions

28

ARM has produced a Linux OS implementation of IPA 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

IPA upstreaming – Status

29

Conclusions

ARM Intelligent Power Allocation is designed to maximise performance in the

thermal envelope:

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

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