Top Banner
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa technology from seed 20/10/14 1 Performance-aware task management and frequency scaling in embedded systems Leonel Sousa Francisco Gaspar Aleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing Systems INESC-ID / IST Portugal {las,fgaspar,ilic,pfzt}@sips.inesc-id.pt
34

Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Oct 23, 2019

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

20/10/14 1

Performance-aware task management and frequency scaling

in embedded systems

Leonel Sousa Francisco Gaspar Aleksandar Ilic Pedro Tomás

Performance-aware task management and frequency scaling in embedded systems

Signal Processing Systems INESC-ID / IST Portugal

{las,fgaspar,ilic,pfzt}@sips.inesc-id.pt

Page 2: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seedMotivation

•  Demand for high performance in mobile embedded devices is increasing

–  High frequency multi-core architectures –  Solution to high power consumption è Single-ISA Heterogeneity (big.LITTLE)

•  Default OS scheduling does not consider performance targets: –  Resources may be over-allocated –  No performance fairness among tasks

•  Tasks on mobile embedded systems do not require high performance goals that typical schedulers aim to achieve

20/10/14 Performance-aware task management and frequency scaling in embedded systems 2

Nor

mal

ised

task

perfo

rman

ce 1

0A B

1

0A B

1

0A B

Default Shares Frequency

Page 3: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seedMotivation

•  Demand for high performance in mobile embedded devices is increasing

–  High frequency multi-core architectures –  Solution to high power consumption è Single-ISA Heterogeneity (big.LITTLE)

•  Default OS scheduling does not consider performance targets: –  Resources may be over-allocated –  No performance fairness among tasks

•  Tasks on mobile embedded systems do not require high performance goals that typical schedulers aim to achieve

20/10/14 Performance-aware task management and frequency scaling in embedded systems 3

Nor

mal

ised

task

perfo

rman

ce 1

0A B

1

0A B

1

0A B

Default Shares Frequency

Equalize performance

Reduce error to target

Page 4: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seedObjectives

•  Adaptive and lightweight task management

•  Provide performance fairness among the running tasks

•  Attain control over the allocation of shared computational resources

•  Automatically scale frequency according to the dynamic characterization of the execution of the parallel tasks

•  Achieve energy-efficient execution

20/10/14 Performance-aware task management and frequency scaling in embedded systems 4

Page 5: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Background –  Scheduler –  DVFS and Cluster migration

•  Performance-aware task management and frequency scaling in embedded systems

–  Concept –  Share calculation and conversion –  Frequency Scaling –  System and applications

•  Experimental Evaluation –  Platform –  Results

•  Conclusions and Future Work

Outline

20/10/14 Performance-aware task management and frequency scaling in embedded systems 5

Page 6: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Background –  Scheduler –  DVFS and Cluster migration

•  Performance-aware task management and frequency scaling in embedded systems

–  Concept –  Share calculation and conversion –  Frequency Scaling –  System and applications

•  Experimental Evaluation –  Platform –  Results

•  Conclusions and Future Work

Outline

20/10/14 Performance-aware task management and frequency scaling in embedded systems 6

Page 7: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seedScheduler

•  Scheduler (CFS) attributes shares –  For a compute bound task, shares mainly depend on Nice level

•  By default tasks have the same Nice level (i.e., same processor share) –  Epoch i

•  Task with lower Nice levels will increase their CPU share –  Epoch i+1

20/10/14 Performance-aware task management and frequency scaling in embedded systems 7

}}Epoch i

A B C A B CTime

Epoch i+1

Page 8: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seedDVFS and Cluster migration

•  Dynamic Voltage and Frequency Scaling (DVFS) –  Different governors result in different behaviors, voltage is set according to frequency –  In heterogeneous system with cluster migration DVFS controls migration

•  System sees range of virtual frequency 250 MHz – 1.6 GHz

–  250 MHz – 600 MHz map to A7 at twice the frequency

–  800 MHz – 1.6 GHz map to A15 directly

20/10/14 Performance-aware task management and frequency scaling in embedded systems 8

Virtual Frequency Range250 MHz 600 MHz 800 MHz 1.6 GHz

800 MHz 1.6 GHz500 MHz 1.2 GHzCortex-A7 Real Frequency Range Cortex-A15 Real Frequency Range

Page 9: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Background –  Scheduler –  DVFS and Cluster migration

•  Performance-aware task management and frequency scaling in embedded systems

–  Concept –  Share calculation and conversion –  Frequency Scaling –  System and applications

•  Experimental Evaluation –  Platform –  Results

•  Conclusions and Future Work

Outline

20/10/14 Performance-aware task management and frequency scaling in embedded systems 9

Page 10: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Application-system interaction model –  Performance assumed proportional to share and frequency: P∝s ; P∝f –  Applications report their performance –  Application-specific parameter: P∝c –  P=c x s x f

Performance-aware task management and frequency scaling in embedded systems – Concept

20/10/14 Performance-aware task management and frequency scaling in embedded systems 10

Page 11: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Application-system interaction model –  Performance assumed proportional to share and frequency: P∝s ; P∝f –  Applications report their performance –  Application-specific parameter: P∝c –  P=c x s x f

Performance-aware task management and frequency scaling in embedded systems – Concept

20/10/14 Performance-aware task management and frequency scaling in embedded systems 11

Page 12: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Application-system interaction model –  Performance assumed proportional to share and frequency: P∝s ; P∝f –  Applications report their performance –  Application-specific parameter: P∝c –  P=c x s x f

Performance-aware task management and frequency scaling in embedded systems – Concept

20/10/14 Performance-aware task management and frequency scaling in embedded systems 12

Page 13: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Application-system interaction model –  Performance assumed proportional to share and frequency: P∝s ; P∝f –  Applications report their performance –  Application-specific parameter: P∝c –  P=c x s x f

Performance-aware task management and frequency scaling in embedded systems – Concept

20/10/14 Performance-aware task management and frequency scaling in embedded systems 13

Page 14: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Share calculation and conversion

•  Attribute shares to minimize global error –  Equalize application error

20/10/14 Performance-aware task management and frequency scaling in embedded systems 14

**

0

* PreviousTargetAfter

*Performance

Mathematical formulation

Page 15: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Share calculation and conversion

•  Attribute shares to minimize global error –  Equalize application error

•  Shares applied through Nice levels

–  Conversion only handles intervals –  Additional restriction introduced: Highest priority task as

close as possible to nice level 0

20/10/14 Performance-aware task management and frequency scaling in embedded systems 15

**

0

* PreviousTargetAfter

*Performance

Mathematical formulation

Page 16: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Frequency scaling

•  Scale frequency –  Bring applications to target –  Achieve energy savings

20/10/14 Performance-aware task management and frequency scaling in embedded systems 16

Performance Mathematical formulation

0

Previous

AfterTarget

(Predicted performance)

(Target performance)

Page 17: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

System and applications

•  Shares applied to system by changing the tasks Nice levels

•  Frequency applied by interacting with DVFS and setting system frequency

–  Both affect application performance

•  Modified applications report their performance through Heartbeats*

20/10/14 Performance-aware task management and frequency scaling in embedded systems 17

* H. Hoffmann, J. Eastep, M. D. Santambrogio, J. E. Miller, and A. Agarwal, “Application Heartbeats: A Generic Interface for Specifying Program Performance and Goals in Autonomous Computing Environments”

Page 18: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Background –  Scheduler –  DVFS and Cluster migration

•  Performance-aware task management and frequency scaling in embedded systems

–  Concept –  Share calculation and conversion –  Frequency Scaling –  System and applications

•  Experimental Evaluation –  Platform –  Results

•  Conclusions and Future Work

Outline

20/10/14 Performance-aware task management and frequency scaling in embedded systems 18

Page 19: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Platform

20/10/14 Performance-aware task management and frequency scaling in embedded systems 19

•  Odroid-XU+E –  big.LITTLE – 4x Cortex-A7; 4x Cortex-A15 – Cluster migration –  2GB of RAM –  OS: Linux – Ubuntu custom 3.4 kernel (by Hardkernel)

Virtual Frequency Range250 MHz 600 MHz 800 MHz 1.6 GHz

800 MHz 1.6 GHz500 MHz 1.2 GHzCortex-A7 Real Frequency Range Cortex-A15 Real Frequency Range

Page 20: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Platform

20/10/14 Performance-aware task management and frequency scaling in embedded systems 20

•  Odroid-XU+E –  big.LITTLE – 4x Cortex-A7; 4x Cortex-A15 – Cluster migration –  2GB of RAM –  OS: Linux – Ubuntu custom 3.4 kernel (by Hardkernel)

Virtual Frequency Range250 MHz 600 MHz 800 MHz 1.6 GHz

800 MHz 1.6 GHz500 MHz 1.2 GHzCortex-A7 Real Frequency Range Cortex-A15 Real Frequency Range

Page 21: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Benchmarks and results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 21

•  Iterative QoS applications –  That interact in real-time with the user (target set by maximum perceived

performance) –  That sample data from sensors (target set by data availability) –  Fluidanimate, Swaptions, Blackscholes and x264 (from PARSEC) used for

benchmarking (4 threads each)

Page 22: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Benchmarks and results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 22

•  Iterative QoS applications –  That interact in real-time with the user (target set by maximum perceived

performance) –  That sample data from sensors (target set by data availability) –  Fluidanimate, Swaptions, Blackscholes and x264 (from PARSEC) used for

benchmarking (4 threads each) Share controller

(fairness)

Page 23: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Benchmarks and results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 23

•  Iterative QoS applications –  That interact in real-time with the user (target set by maximum perceived

performance) –  That sample data from sensors (target set by data availability) –  Fluidanimate, Swaptions, Blackscholes and x264 (from PARSEC) used for

benchmarking (4 threads each) Share controller

(fairness) Freq. controller

(energy)

Page 24: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Benchmarks and results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 24

•  Iterative QoS applications –  That interact in real-time with the user (target set by maximum perceived

performance) –  That sample data from sensors (target set by data availability) –  Fluidanimate, Swaptions, Blackscholes and x264 (from PARSEC) used for

benchmarking (4 threads each) Share controller

(fairness) Freq. controller

(energy)

Page 25: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Performance results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 25

•  Fluidanimate, Swaptions and x264 simultaneosly

+-10%target

No controller With controller

Page 26: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Performance results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 26

•  Fluidanimate, Swaptions and x264 simultaneosly

Not on target

+-10%target

No controller With controller

Page 27: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Performance results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 27

•  Fluidanimate, Swaptions and x264 simultaneosly

Not on target

+-10%target

Perf.on target

No controller With controller

Page 28: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Frequency and power results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 28

No controller

With controller

Page 29: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Frequency and power results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 29

Thermal throttlingNo controller

With controller

Page 30: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

Experimental Evaluation – Frequency and power results

20/10/14 Performance-aware task management and frequency scaling in embedded systems 30

Thermal throttling

Migration to A7

No controller

With controller

Page 31: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Background –  Scheduler –  DVFS and Cluster migration

•  Performance-aware task management and frequency scaling in embedded systems

–  Concept –  Share calculation and conversion –  Frequency Scaling –  System and applications

•  Experimental Evaluation –  Platform –  Results

•  Conclusions and Future Work

Outline

20/10/14 Performance-aware task management and frequency scaling in embedded systems 31

Page 32: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Scheduling for heterogeneous embedded systems –  Lightweight task management and frequency scaling method –  Performance-aware

•  Application-system interaction acquired –  Capture the run-time behavior of multiple parallel applications

•  Performance fairness and energy savings facilitated –  Shared system resources allocated to meet target performance –  Relies on DVFS to manage the system energy-efficiency levels

•  Experimental evaluation –  Relative performance error was reduced from 2.801 to 0.168, a 16× drop –  Achieve up to 49% reduction in the overall energy consumption

Roundup and Conclusions

20/10/14 Performance-aware task management and frequency scaling in embedded systems 32

Page 33: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

•  Improve response in case of thermal emergencies

•  Gracefully handle non-QoS tasks

•  Explore per core performance fairness (thread level)* –  Consider systems that allow different frequency levels per core

Future Work

20/10/14 Performance-aware task management and frequency scaling in embedded systems 33

* already in progress

Page 34: Performance-aware task management and frequency scaling ... fileAleksandar Ilic Pedro Tomás Performance-aware task management and frequency scaling in embedded systems Signal Processing

Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa

technology from seed

20/10/14 Performance-aware task management and frequency scaling in embedded systems 34

technology from seed

Leonel Sousa [email protected]

Thank You! Questions?